/* ==========================================================
   LOCUMNET CSS V2.0
   Part 1A — Foundation
   Apple × Notion × Linear
========================================================== */

/* =========================
   DESIGN TOKENS
========================= */

:root{

    /* Brand */

    --burgundy:#6E1838;
    --burgundy-light:#822245;
    --gold:#D6A15C;

    /* Backgrounds */

    --ivory:#FCFAF8;
    --beige:#F8F4ED;
    --white:#FFFFFF;

    /* Accent */

    --lavender:#F5F1FF;
    --sage:#EAF7F2;
    --peach:#FFF4EF;

    /* Text */

    --text:#1F1B1A;
    --text-light:#6B6563;

    /* Borders */

    --border:rgba(0,0,0,.08);

    /* Radius */

    --radius-xs:8px;
    --radius-sm:12px;
    --radius-md:18px;
    --radius-lg:26px;
    --radius-xl:34px;

    /* Shadows */

    --shadow-sm:
        0 1px 2px rgba(0,0,0,.04);

    --shadow-md:
        0 8px 24px rgba(0,0,0,.08);

    --shadow-lg:
        0 18px 48px rgba(0,0,0,.12);

    /* Animation */

    --transition:
        .28s cubic-bezier(.16,1,.3,1);

}

/* =========================
   RESET
========================= */

*,
*::before,
*::after{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:
        "Plus Jakarta Sans",
        sans-serif;

    background:var(--ivory);

    color:var(--text);

    line-height:1.6;

    overflow-x:hidden;

    -webkit-font-smoothing:antialiased;

    text-rendering:optimizeLegibility;

}

/* =========================
   TYPOGRAPHY
========================= */

h1,
h2,
h3,
h4,
h5,
h6{

    font-family:
        "Playfair Display",
        serif;

    color:var(--burgundy);

    font-weight:700;

    line-height:1.15;

}

h1{

    font-size:clamp(2.7rem,6vw,4.6rem);

}

h2{

    font-size:clamp(2rem,5vw,3.4rem);

}

h3{

    font-size:1.55rem;

}

h4{

    font-size:1.15rem;

}

p{

    color:var(--text-light);

    font-size:1rem;

}

small{

    color:var(--text-light);

}

a{

    text-decoration:none;

    color:inherit;

    transition:var(--transition);

}

img{

    display:block;

    max-width:100%;

    height:auto;

}

button{

    font:inherit;

    cursor:pointer;

}

/* =========================
   LAYOUT
========================= */

.container{

    width:min(1320px,calc(100% - 48px));

    margin-inline:auto;

}

section{

    padding:90px 0;

}

.section-title{

    text-align:center;

    margin-bottom:18px;

}

.section-subtitle{

    text-align:center;

    max-width:700px;

    margin:0 auto 64px;

}

.section-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 14px;

    margin-bottom:18px;

    border-radius:999px;

    background:var(--peach);

    color:var(--gold);

    text-transform:uppercase;

    letter-spacing:.18em;

    font-size:.74rem;

    font-weight:700;

}

/* =========================
   GRID SYSTEM
========================= */

.grid{

    display:grid;

    gap:32px;

}

.grid-2{

    grid-template-columns:
        repeat(2,1fr);

}

.grid-3{

    grid-template-columns:
        repeat(3,1fr);

}

.grid-4{

    grid-template-columns:
        repeat(4,1fr);

}

/* =========================
   UTILITIES
========================= */

.flex{

    display:flex;

}

.flex-center{

    display:flex;

    align-items:center;

    justify-content:center;

}

.flex-between{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.text-center{

    text-align:center;

}

.mt-1{margin-top:8px;}
.mt-2{margin-top:16px;}
.mt-3{margin-top:24px;}
.mt-4{margin-top:40px;}
.mt-5{margin-top:64px;}

.mb-1{margin-bottom:8px;}
.mb-2{margin-bottom:16px;}
.mb-3{margin-bottom:24px;}
.mb-4{margin-bottom:40px;}
.mb-5{margin-bottom:64px;}

.hidden{

    display:none;

}

.visible{

    display:block;

} 
/* ==========================================================
   PART 1B
   HEADER • NAVIGATION • MEGA MENU • BUTTONS
==========================================================*/

/*=========================
  HEADER
=========================*/

header{

    position:fixed;

    top:16px;

    left:24px;

    right:24px;

    z-index:1000;

    transition:all .35s ease;

}

header .container{

    background:rgba(252,250,248,.82);

    backdrop-filter:blur(22px);

    -webkit-backdrop-filter:blur(22px);

    border:1px solid rgba(0,0,0,.05);

    border-radius:22px;

    box-shadow:

        0 1px 2px rgba(0,0,0,.04),

        0 16px 40px rgba(0,0,0,.08);

}

/*=========================
  NAVIGATION
=========================*/

.nav-wrapper{

    display:grid;

    grid-template-columns:

        auto

        1fr

        auto;

    align-items:center;

    gap:40px;

    height:82px;

    padding:0 34px;

}

/*==================================================
LOGO
==================================================*/

.logo{

    display:flex;
    align-items:center;
    gap:14px;

    text-decoration:none;
    flex-shrink:0;

}

.logo-image{

    width:80px !important;
    height:80px !important;

    min-width:80px !important;
    max-width:80px !important;

    object-fit:contain;

    display:block;

    flex-shrink:0;

}

.logo-text{

    display:flex;
    flex-direction:column;
    justify-content:center;

}

.logo-main{

    font-family:"Playfair Display",serif;

    font-size:2rem;

    font-weight:700;

    color:var(--burgundy);

    line-height:1;

    letter-spacing:-0.03em;

}

.logo-sub{

    margin-top:4px;

    font-size:.62rem;

    color:var(--gold);

    letter-spacing:.20em;

    text-transform:uppercase;

}

/*=========================
  NAV LINKS
=========================*/

.nav-links{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:18px;

    flex:1;

}

.nav-item{
    position:relative;
    display:flex;
    align-items:center;
    height:70px;
}

.nav-item::after{

    content:"";

    position:absolute;

    left:0;

    right:0;

    top:100%;

    height:12px;

}

.nav-item>a{

    display:flex;

    align-items:center;

    gap:6px;

    padding:10px 14px;

    border-radius:12px;

    font-size:.94rem;

    font-weight:500;

    color:var(--text);

    transition:var(--transition);

}

.nav-item>a:hover{

    background:#F2E8DB;

    color:var(--burgundy);

}

.nav-item>a svg{

    width:16px;

    height:16px;

}

/*=========================
  RIGHT SIDE
=========================*/

.nav-right{

    display:flex;

    align-items:center;

    gap:14px;

}

.login-link{

    padding:10px 14px;

    border-radius:12px;

    font-weight:600;

    transition:var(--transition);

}

.login-link:hover{

    background:#F2E8DB;

    color:var(--burgundy);

}

/*=========================
  BUTTONS
=========================*/

.btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    transition:var(--transition);

    border:none;

    cursor:pointer;

}

.btn-primary{

    background:var(--burgundy);

    color:white;

    padding:11px 22px;

    border-radius:14px;

    font-weight:600;

}

.btn-primary:hover{

    transform:translateY(-2px);

    background:var(--burgundy-light);

    box-shadow:

        0 12px 24px rgba(110,24,56,.18);

}

.btn-secondary{

    border:1px solid rgba(0,0,0,.08);

    background:white;

    color:var(--burgundy);

}

/*=========================
  MEGA MENU
=========================*/

.mega-menu{

    position:absolute;

    top:100%;

    left:50%;

    transform:translateX(-50%) translateY(8px);

    width:470px;

    padding:24px;

    background:var(--beige);

    border-radius:22px;

    border:1px solid rgba(0,0,0,.06);

    box-shadow:
        0 20px 50px rgba(0,0,0,.10);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .18s ease,
        transform .18s ease;

    z-index:999;
}

.nav-item:hover > .mega-menu,
.mega-menu:hover{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

    transform:translateX(-50%) translateY(0);

}

/*=========================
  MEGA CONTENT
=========================*/

.mega-heading{

    font-family:

        "Plus Jakarta Sans",

        sans-serif;

    font-size:.74rem;

    letter-spacing:.18em;

    text-transform:uppercase;

    color:var(--burgundy);

    margin-bottom:10px;

    font-weight:700;

}

.mega-subtitle{

    color:var(--text-light);

    font-size:.90rem;

    margin-bottom:20px;

}

.mega-card{

    display:flex;

    align-items:flex-start;

    gap:16px;

    padding:14px;

    border-radius:14px;

    transition:var(--transition);

    margin-bottom:6px;

}

.mega-card:last-child{

    margin-bottom:0;

}

.mega-card:hover{

    background:white;

}

.mega-card svg{

    width:22px;

    height:22px;

    color:var(--burgundy);

    flex-shrink:0;

    margin-top:2px;

}

.mega-card strong{

    display:block;

    color:var(--text);

    font-size:.95rem;

    margin-bottom:3px;

}

.mega-card span{

    color:var(--text-light);

    font-size:.84rem;

    line-height:1.45;

}

/*=========================
  TRUST FOOTER
=========================*/

.mega-menu::after{

    content:"✔ Trusted by thousands of healthcare professionals";

    display:block;

    margin-top:18px;

    padding-top:18px;

    border-top:1px solid rgba(0,0,0,.06);

    color:var(--text-light);

    font-size:.82rem;

    font-weight:600;

}

/*=========================
  MOBILE NAV
=========================*/

.menu-toggle{

    display:none;

    background:none;

    border:none;

    color:var(--burgundy);

}

/*=========================
  TABLET
=========================*/

@media(max-width:992px){

    .nav-links{

        display:none;

    }

    .menu-toggle{

        display:flex;

        align-items:center;

        justify-content:center;

    }

}
/*==========================================================
PART 2A
HERO SECTION
==========================================================*/

.hero-section{

    padding-top:180px;
    padding-bottom:90px;

}

.hero-grid{

    display:grid;

    grid-template-columns:1fr 1fr;
    
    align-items:center;

    gap:60px;

    position:relative;

    min-height:720px;

}

.hero-text{

    width:100%;

    max-width:620px;

}

.hero-text h1{

    margin-bottom:28px;

    letter-spacing:-0.04em;

}

.hero-text p{

    font-size:1.1rem;

    color:var(--text-light);

    margin-bottom:42px;

    line-height:1.8;

}

.accent-gold{

    color:var(--gold);

}

.accent-italic{

    font-style:italic;

    font-weight:400;

}

/*==========================================================
HERO BUTTONS
==========================================================*/

.hero-actions{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.btn{

    height:52px;

    padding:0 28px;

    border-radius:14px;

    font-weight:600;

    transition:var(--transition);

}

.btn-primary{

    background:var(--burgundy);

    color:white;

}

.btn-primary:hover{

    transform:translateY(-3px);

    box-shadow:var(--shadow-lg);

}

.btn-secondary{

    background:white;

    border:1px solid rgba(0,0,0,.08);

}

.btn-secondary:hover{

    background:#faf7f2;

}

/*==========================================================
HERO IMAGE
==========================================================*/

.hero-image{

    display:flex;

    justify-content:flex-end;

    align-items:center;

    padding-left:30px;

}

.hero-image img{

    width:100%;

    max-width:480px;

    height:auto;

    object-fit:contain;

}

/*==========================================================
VALUE BAR
==========================================================*/

.value-bar{

    margin-top:70px;

    background:white;

    border-radius:26px;

    padding:34px;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:

        0 10px 40px rgba(0,0,0,.05);

}

.value-bar-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:26px;

}

.value-item{

    display:flex;

    align-items:center;

    gap:16px;

}

.value-icon-container{

    width:56px;

    height:56px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

}

.icon-peach{

    background:var(--peach);

    color:#c07036;

}

.icon-lavender-dark{

    background:var(--lavender);

    color:var(--burgundy);

}

.icon-sage{

    background:var(--sage);

    color:#2D6A4F;

}

.icon-lavender-light{

    background:#F1ECFF;

    color:#5A4CC5;

}

.value-item h4{

    font-size:1rem;

    margin-bottom:4px;

    color:var(--text);

}

.value-item p{

    font-size:.88rem;

    color:var(--text-light);

}

/*==========================================================
SECTION TITLES
==========================================================*/

.section-title{

    margin-bottom:18px;

}

.section-subtitle{

    font-size:1.05rem;

    color:var(--text-light);

    max-width:720px;

}

/*==========================================================
SOFT BACKGROUND BLOCK
==========================================================*/

.soft-section{

    background:#fff;

    border-radius:34px;

    padding:70px;

    border:1px solid rgba(0,0,0,.04);

}

/*==========================================================
SPACING HELPERS
==========================================================*/

.space-xl{

    margin-top:120px;

}

.space-lg{

    margin-top:80px;

}

.space-md{

    margin-top:60px;

}
/*==========================================================
PART 2B
PROCESS SECTION
==========================================================*/

.process-section{

    padding:110px 0;

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:28px;

}

.process-step{

    position:relative;

    background:#ffffff;

    border:1px solid rgba(0,0,0,.05);

    border-radius:24px;

    padding:36px 28px;

    text-align:center;

    transition:var(--transition);

}

.process-step:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-md);

}

.process-icon-box{

    width:72px;

    height:72px;

    margin:0 auto 22px;

    border-radius:22px;

    display:flex;

    justify-content:center;

    align-items:center;

}

.process-icon-box svg{

    width:34px;

    height:34px;

}

.process-badge{

    position:absolute;

    top:18px;

    right:18px;

    width:30px;

    height:30px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:var(--gold);

    color:white;

    font-weight:700;

    font-size:.85rem;

}

.process-step h3{

    margin-bottom:10px;

}

.process-step p{

    font-size:.92rem;

    line-height:1.7;

}

/*==========================================================
SOLUTIONS
==========================================================*/

.solutions-section{

    padding:110px 0;

}

.solutions-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:34px;

}

.solution-card{

    background:white;

    border-radius:26px;

    border:1px solid rgba(0,0,0,.05);

    padding:34px;

    display:flex;

    flex-direction:column;

    transition:var(--transition);

}

.solution-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}

.solution-illustration{

    height:170px;

    border-radius:22px;

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:28px;

}

.solution-illustration svg{

    width:60px;

    height:60px;

}

.bg-peach{

    background:var(--peach);

}

.bg-lavender{

    background:var(--lavender);

}

.bg-sage{

    background:var(--sage);

}

.solution-card h3{

    margin-bottom:14px;

}

.solution-card p{

    flex:1;

    margin-bottom:24px;

    line-height:1.8;

}

.solution-link{

    display:inline-flex;

    align-items:center;

    gap:10px;

    font-weight:600;

    color:var(--burgundy);

}

.solution-link:hover{

    gap:14px;

}

/*==========================================================
STATS
==========================================================*/

.stats-bar{

    margin:110px 0;

    padding:42px;

    background:white;

    border-radius:28px;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:var(--shadow-sm);

}

.stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    text-align:center;

}

.stat-box h2{

    font-size:3rem;

    color:var(--gold);

    margin-bottom:6px;

}

.stat-box p{

    font-size:.92rem;

}

/*==========================================================
WHY LOCUMNET
==========================================================*/

.why-section{

    background:var(--lavender);

    border-radius:36px;

    padding:80px 60px;

}

.why-grid{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:30px;

}

.why-item{

    text-align:center;

}

.why-item svg{

    width:42px;

    height:42px;

    margin-bottom:16px;

    color:var(--burgundy);

}

.why-item h4{

    margin-bottom:8px;

}

.why-item p{

    font-size:.88rem;

}

/*==========================================================
CTA STRIP
==========================================================*/

.assistance-strip{

    margin:120px 0;

    padding:42px 48px;

    background:linear-gradient(
        90deg,
        #FFF4EF,
        #F5F1FF
    );

    border-radius:28px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:30px;

}

.assistance-left{

    max-width:620px;

}

.assistance-title{

    font-size:2rem;

    margin-bottom:10px;

}

.assistance-subtitle{

    font-size:1rem;

}

.assistance-strip .btn{

    flex-shrink:0;

}

/*==========================================================
MICRO ANIMATIONS
==========================================================*/

.solution-card,
.process-step,
.value-bar,
.stats-bar,
.assistance-strip{

    transition:
        transform .35s ease,
        box-shadow .35s ease;

}

.value-bar:hover,
.stats-bar:hover{

    box-shadow:var(--shadow-md);

}
/*==========================================================
PART 3
CARDS
==========================================================*/

.card{

    background:#ffffff;

    border:1px solid rgba(0,0,0,.05);

    border-radius:24px;

    padding:30px;

    transition:var(--transition);

}

.card:hover{

    transform:translateY(-6px);

    box-shadow:var(--shadow-md);

}

.card-header{

    margin-bottom:20px;

}

.card-title{

    font-size:1.35rem;

    margin-bottom:6px;

}

.card-subtitle{

    color:var(--text-light);

}

/*==========================================================
FORMS
==========================================================*/

.form-group{

    margin-bottom:24px;

}

label{

    display:block;

    font-weight:600;

    margin-bottom:10px;

    color:var(--text);

}

input,
select,
textarea{

    width:100%;

    padding:14px 18px;

    border:1px solid rgba(0,0,0,.08);

    border-radius:14px;

    background:white;

    font-family:inherit;

    font-size:.95rem;

    transition:var(--transition);

}

textarea{

    resize:vertical;

    min-height:140px;

}

input:focus,
select:focus,
textarea:focus{

    outline:none;

    border-color:var(--burgundy);

    box-shadow:

        0 0 0 4px rgba(110,24,56,.08);

}

::placeholder{

    color:#9a9694;

}

/*==========================================================
SEARCH BAR
==========================================================*/

.search-bar{

    display:flex;

    align-items:center;

    gap:12px;

    background:white;

    border-radius:18px;

    padding:12px 18px;

    border:1px solid rgba(0,0,0,.06);

}

.search-bar input{

    border:none;

    box-shadow:none;

    padding:0;

    background:none;

}

.search-bar input:focus{

    box-shadow:none;

}

/*==========================================================
TABLES
==========================================================*/

.table-container{

    overflow:auto;

    border-radius:20px;

    border:1px solid rgba(0,0,0,.05);

}

table{

    width:100%;

    border-collapse:collapse;

    background:white;

}

thead{

    background:#faf7f4;

}

th{

    text-align:left;

    padding:18px;

    font-size:.86rem;

    text-transform:uppercase;

    letter-spacing:.08em;

    color:var(--text-light);

}

td{

    padding:18px;

    border-top:1px solid rgba(0,0,0,.05);

}

tbody tr{

    transition:var(--transition);

}

tbody tr:hover{

    background:#faf8f5;

}

/*==========================================================
BADGES
==========================================================*/

.badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 14px;

    border-radius:999px;

    font-size:.78rem;

    font-weight:700;

}

.badge-success{

    background:#EAF7F2;

    color:#2D6A4F;

}

.badge-warning{

    background:#FFF4EF;

    color:#B56A32;

}

.badge-info{

    background:#F5F1FF;

    color:#5C46C8;

}

/*==========================================================
ALERTS
==========================================================*/

.alert{

    padding:18px 22px;

    border-radius:18px;

    margin-bottom:20px;

}

.alert-success{

    background:#EAF7F2;

    color:#2D6A4F;

}

.alert-warning{

    background:#FFF4EF;

    color:#B56A32;

}

.alert-danger{

    background:#FFE9E9;

    color:#B23030;

}

/*==========================================================
DIVIDERS
==========================================================*/

.divider{

    width:100%;

    height:1px;

    background:rgba(0,0,0,.08);

    margin:32px 0;

}

/*==========================================================
LISTS
==========================================================*/

.list{

    list-style:none;

}

.list li{

    padding:12px 0;

    border-bottom:1px solid rgba(0,0,0,.05);

}

.list li:last-child{

    border-bottom:none;

}

/*==========================================================
FOOTER
==========================================================*/

footer{

    margin-top:120px;

    padding:80px 0 40px;

    background:white;

    border-top:1px solid rgba(0,0,0,.05);

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr repeat(4,1fr);

    gap:60px;

}

.footer-brand p{

    margin:20px 0;

    max-width:320px;

}

.footer-links-col h4{

    margin-bottom:18px;

    font-size:.9rem;

    text-transform:uppercase;

    letter-spacing:.12em;

    color:var(--burgundy);

}

.footer-links-col ul{

    list-style:none;

}

.footer-links-col li{

    margin-bottom:12px;

}

.footer-links-col a{

    color:var(--text-light);

    transition:var(--transition);

}

.footer-links-col a:hover{

    color:var(--burgundy);

}

.social-icons{

    display:flex;

    gap:16px;

}

.social-icons a{

    width:42px;

    height:42px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#faf7f4;

}

.social-icons a:hover{

    background:var(--burgundy);

    color:white;

}

.footer-copyright{

    margin-top:60px;

    padding-top:30px;

    border-top:1px solid rgba(0,0,0,.06);

    text-align:center;

    color:var(--text-light);

    font-size:.85rem;

}

/*==========================================================
UTILITY CLASSES
==========================================================*/

.shadow-sm{

    box-shadow:var(--shadow-sm);

}

.shadow-md{

    box-shadow:var(--shadow-md);

}

.shadow-lg{

    box-shadow:var(--shadow-lg);

}

.rounded-sm{

    border-radius:12px;

}

.rounded-md{

    border-radius:20px;

}

.rounded-lg{

    border-radius:30px;

}

.text-burgundy{

    color:var(--burgundy);

}

.text-gold{

    color:var(--gold);

}

.bg-white{

    background:white;

}

.bg-ivory{

    background:var(--ivory);

}

.w-100{

    width:100%;

}

.h-100{

    height:100%;

}

.d-flex{

    display:flex;

}

.align-center{

    align-items:center;

}

.justify-between{

    justify-content:space-between;

}

.justify-center{

    justify-content:center;

}

.flex-column{

    flex-direction:column;

}

.gap-sm{

    gap:12px;

}

.gap-md{

    gap:24px;

}

.gap-lg{

    gap:40px;

}
/*==========================================================
PART 4
RESPONSIVE • MOBILE • ANIMATIONS • POLISH
==========================================================*/

/*=========================
GLOBAL TRANSITIONS
=========================*/

a,
button,
.btn,
.card,
.solution-card,
.process-step,
.nav-item>a,
.mega-card,
input,
textarea,
select{

    transition:all .28s cubic-bezier(.16,1,.3,1);

}

/*=========================
SCROLLBAR
=========================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#F6F3EF;

}

::-webkit-scrollbar-thumb{

    background:#C8B8A7;

    border-radius:100px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--burgundy);

}

/*=========================
SELECTION
=========================*/

::selection{

    background:var(--burgundy);

    color:white;

}

/*=========================
FOCUS STATES
=========================*/

button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{

    outline:none;

    box-shadow:
        0 0 0 4px rgba(110,24,56,.15);

}

/*=========================
SMOOTH IMAGE EFFECTS
=========================*/

img{

    transition:transform .5s ease;

}

.hero-artwork img{

    width:100%;

    display:block;

}

.solution-card:hover .solution-illustration svg{

    transform:scale(1.12);

}

.process-step:hover .process-icon-box{

    transform:rotate(-4deg);

}

/*=========================
BUTTON INTERACTIONS
=========================*/

.btn:active{

    transform:scale(.97);

}

.btn-primary:active{

    transform:translateY(1px);

}

/*=========================
MEGA MENU ANIMATION
=========================*/

.mega-menu{

    transform:
        translateX(-50%)
        translateY(12px)
        scale(.98);

    opacity:0;

}

.nav-item:hover>.mega-menu{

    transform:
        translateX(-50%)
        translateY(0)
        scale(1);

    opacity:1;

}

/*=========================
CARD HOVER
=========================*/

.card:hover,
.solution-card:hover,
.process-step:hover{

    border-color:rgba(110,24,56,.08);

}

/*=========================
HERO PARAGRAPH
=========================*/

.hero-text p{

    max-width:600px;

}

/*=========================
SECTION SPACING
=========================*/

section{

    scroll-margin-top:120px;

}

/*=========================
LARGE DESKTOP
=========================*/

@media (min-width:1600px){

.container{

    max-width:1460px;

}

.hero-artwork{

    position:absolute;

    right:-30px;

    bottom:0;

    width:58%;

    max-width:760px;

    z-index:1;

}

.hero-artwork img{

    width:100%;

    height:auto;

    display:block;

    object-fit:contain;

}

.hero-grid{

    position:relative;

    min-height:700px;

    display:flex;

    align-items:center;

}

.hero-text h1{

    font-size:5rem;

}

}

/*=========================
LAPTOP
=========================*/

@media (max-width:1200px){

.hero-grid{

    gap:60px;

}

.hero-artwork{

    width:60%;

    right:-80px;

}

.value-bar-grid{

    grid-template-columns:repeat(2,1fr);

}

.process-grid{

    grid-template-columns:repeat(2,1fr);

}

.solutions-grid{

    grid-template-columns:repeat(2,1fr);

}

.stats-grid{

    grid-template-columns:repeat(2,1fr);

}

.why-grid{

    grid-template-columns:repeat(3,1fr);

}

.footer-grid{

    grid-template-columns:repeat(3,1fr);

}

}

/*=========================
TABLET
=========================*/

@media (max-width:992px){

header{

    left:14px;

    right:14px;

    top:12px;

}

.nav-wrapper{

    height:66px;

}

.nav-links{

    display:none;

}

.menu-toggle{

    display:flex;

    align-items:center;

    justify-content:center;

    width:46px;

    height:46px;

    border-radius:12px;

}

.hero-grid{

    position:relative;

    min-height:720px;

    display:flex;

    align-items:center;

}

.hero-actions{

    justify-content:center;

}

.hero-artwork{

    width:80%;

    right:-120px;

}

.assistance-strip{

    flex-direction:column;

    text-align:center;

}

.footer-grid{

    grid-template-columns:1fr 1fr;

}

}

/*=========================
MOBILE
=========================*/

@media (max-width:768px){

.container{

    width:calc(100% - 32px);

}

.hero-artwork{

    width:95%;

    right:-180px;

    opacity:.25;

}

.hero-section{

    padding-top:130px;

}

.hero-text h1{

    font-size:2.6rem;

}

.hero-text p{

    font-size:1rem;

}

.section-title{

    font-size:2rem;

}

.value-bar-grid{

    grid-template-columns:1fr;

}

.process-grid{

    grid-template-columns:1fr;

}

.solutions-grid{

    grid-template-columns:1fr;

}

.stats-grid{

    grid-template-columns:1fr;

}

.why-grid{

    grid-template-columns:1fr;

}

.footer-grid{

    grid-template-columns:1fr;

}

.hero-actions{

    flex-direction:column;

}

.hero-actions .btn{

    width:100%;

}

.assistance-strip{

    padding:36px 24px;

}

}

/*=========================
SMALL PHONES
=========================*/

@media (max-width:480px){

.logo-main{

    font-size:1.35rem;

}

.logo-sub{

    display:none;

}

header{

    border-radius:18px;

}

.hero-text h1{

    font-size:2.2rem;

}

.btn{

    height:48px;

    font-size:.92rem;

}

}

/*=========================
FADE-IN CLASSES
=========================*/

.fade-up{

    opacity:0;

    transform:translateY(24px);

    transition:.7s ease;

}

.fade-up.show{

    opacity:1;

    transform:translateY(0);

}

/*=========================
APPLE GLASS EFFECT
=========================*/

.glass{

    background:rgba(255,255,255,.72);

    backdrop-filter:blur(24px);

    -webkit-backdrop-filter:blur(24px);

    border:1px solid rgba(255,255,255,.3);

}

/*=========================
END OF LOCUMNET CSS V2
==========================================================*/

/*==================================================
LOGO
==================================================*/

.logo{

    display:flex;

    align-items:center;

    gap:16px;

    text-decoration:none;

    flex-shrink:0;

}

.logo-image{

    width:58px;

    height:58px;

    object-fit:contain;

    border-radius:14px;

    display:block;

}

.logo-text{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.logo-main{

    font-family:"Playfair Display",serif;

    font-size:2rem;

    font-weight:700;

    color:var(--burgundy);

    line-height:1;

    letter-spacing:-0.04em;

}

.logo-sub{

    margin-top:6px;

    font-size:.62rem;

    letter-spacing:.24em;

    text-transform:uppercase;

    color:var(--gold);

}
/*==================================================
FINAL PATCH — NAV + HERO STABILITY
Add this at the END of style.css
==================================================*/

/* ---------- Mega menu hover stability ---------- */

.nav-item::after{
    content:"";
    position:absolute;
    left:-12px;
    right:-12px;
    top:100%;
    height:22px;
}

.nav-item:hover > .mega-menu,
.nav-item:focus-within > .mega-menu,
.mega-menu:hover{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0) scale(1);
}

/* ---------- Hero layout stability ---------- */

.hero-grid{
    display:grid;
    grid-template-columns:minmax(0, 0.95fr) minmax(420px, 1.05fr);
    align-items:center;
    gap:60px;
    position:relative;
    min-height:720px;
}

.hero-text{
    position:relative;
    z-index:3;
    width:100%;
    max-width:620px;
}

.hero-artwork{
    position:relative;
    z-index:1;
    width:100%;
    display:flex;
    justify-content:flex-end;
    align-items:flex-end;
}

.hero-artwork img{
    width:min(100%, 720px);
    height:auto;
    object-fit:contain;
    display:block;
}

/* ---------- Laptop ---------- */

@media(max-width:1200px){

    .hero-grid{
        grid-template-columns:1fr 1fr;
        gap:40px;
    }

    .hero-artwork img{
        width:min(100%, 620px);
    }

}

/* ---------- Tablet ---------- */

@media(max-width:992px){

    .hero-grid{
        display:grid;
        grid-template-columns:1fr;
        min-height:auto;
        text-align:center;
    }

    .hero-text{
        margin-inline:auto;
    }

    .hero-actions{
        justify-content:center;
    }

    .hero-artwork{
        position:absolute;
        right:-120px;
        bottom:0;
        width:72%;
        opacity:.35;
        pointer-events:none;
    }

}

/* ---------- Mobile ---------- */

@media(max-width:768px){

    .hero-section{
        padding-top:130px;
        padding-bottom:60px;
    }

    .hero-grid{
        min-height:560px;
    }

    .hero-artwork{
        width:95%;
        right:-170px;
        bottom:20px;
        opacity:.22;
    }

}

/* ---------- Small phones ---------- */

@media(max-width:480px){

    .hero-grid{
        min-height:520px;
    }

    .hero-artwork{
        width:110%;
        right:-210px;
        opacity:.18;
    }

}

/* =========================
   URGENT DUTIES + COMPACT HOSPITAL DASHBOARD
========================= */

.hospital-workspace-dashboard>section{
    padding-top:0;
    padding-bottom:0;
}

.hospital-workspace-dashboard>.hospital-workspace-cover{
    padding:0;
}

.hospital-workspace-dashboard .hospital-dashboard-identity{
    margin-bottom:0;
}

.hospital-workspace-dashboard .hospital-dashboard-summary{
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-top:16px;
    margin-bottom:0;
}

.hospital-workspace-dashboard .hospital-dashboard-intro{
    margin-top:22px;
    margin-bottom:12px;
}

.hospital-workspace-dashboard .hospital-activity-grid{
    margin-top:0!important;
    padding-top:0!important;
    padding-bottom:52px!important;
}

.hospital-profile-shortcut{
    justify-content:center;
    min-height:48px;
    padding:11px 17px;
    border:1px solid #eadfdb;
    border-radius:12px;
    background:#fff;
    font-size:.76rem;
    box-shadow:0 8px 20px rgba(72,39,51,.04);
}

.hospital-profile-shortcut:hover{
    border-color:#cdaeb9;
    background:#fff8fa;
}

.hospital-profile-shortcut svg{
    width:17px;
    height:17px;
}

.hospital-summary-card.summary-interest>span{
    background:#f3e7ec;
    color:#7a1f42;
}

.hospital-post-menu{
    position:relative;
}

.hospital-post-chevron{
    width:14px!important;
    transition:transform .2s ease;
}

#hospitalPostRequirementToggle[aria-expanded="true"] .hospital-post-chevron{
    transform:rotate(180deg);
}

.hospital-post-popover{
    position:absolute;
    z-index:30;
    top:calc(100% + 10px);
    right:0;
    width:310px;
    padding:8px;
    border:1px solid #eadfdb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 22px 55px rgba(54,27,38,.18);
}

.hospital-post-popover a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px;
    border-radius:13px;
    color:#4a3940;
    text-decoration:none;
}

.hospital-post-popover a:hover,
.hospital-post-popover a:focus{
    outline:none;
    background:#f9f4f2;
}

.hospital-post-popover a.urgent-option{
    background:#6e1838;
    color:#fff;
}

.hospital-post-popover a.urgent-option:hover,
.hospital-post-popover a.urgent-option:focus{
    background:#561129;
}

.hospital-post-popover a>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:38px;
    height:38px;
    border-radius:11px;
    background:#f2e7eb;
    color:#6e1838;
}

.hospital-post-popover .urgent-option>span{
    background:rgba(255,255,255,.13);
    color:#fff;
}

.hospital-post-popover svg{
    width:18px;
    height:18px;
}

.hospital-post-popover strong,
.hospital-post-popover small{
    display:block;
}

.hospital-post-popover strong{font-size:.76rem;}
.hospital-post-popover small{margin-top:3px;color:#95868b;font-size:.61rem;}
.hospital-post-popover .urgent-option small{color:rgba(255,255,255,.72);}

.hospital-urgent-interest-panel{
    margin-top:18px;
    padding:22px!important;
    border:1px solid #eadfdb;
    border-radius:24px;
    background:#fff;
    box-shadow:0 14px 34px rgba(64,39,47,.06);
}

.hospital-urgent-interest-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:14px;
}

.hospital-urgent-interest-heading h2{
    margin:5px 0 3px;
    color:#6e1838;
    font-family:"Playfair Display",serif;
    font-size:1.65rem;
}

.hospital-urgent-interest-heading p{
    margin:0;
    color:#85777c;
    font-size:.72rem;
}

.hospital-urgent-interest-heading .btn,
.hospital-urgent-interest-card .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
}

.hospital-urgent-interest-heading svg,
.hospital-urgent-interest-card .btn svg{width:16px;height:16px;}

.hospital-urgent-interest-list{
    display:grid;
    gap:10px;
}

.hospital-urgent-interest-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    padding:15px;
    border:1px solid #e9e0dd;
    border-radius:17px;
    background:#fcfaf9;
    transition:background .2s ease,color .2s ease;
}

.hospital-urgent-interest-card.unread{
    border-color:#6e1838;
    background:linear-gradient(135deg,#771f40,#571129);
    color:#fff;
}

.hospital-interest-avatar{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:13px;
    background:#f1e4e9;
    color:#6e1838;
}

.unread .hospital-interest-avatar{background:rgba(255,255,255,.14);color:#fff;}
.hospital-interest-avatar svg{width:21px;height:21px;}
.hospital-interest-copy>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.hospital-interest-copy>div:first-child span{text-transform:uppercase;font-size:.58rem;font-weight:850;letter-spacing:.09em;}
.hospital-interest-copy>div:first-child small{color:#a29498;font-size:.59rem;}
.unread .hospital-interest-copy>div:first-child small{color:rgba(255,255,255,.65);}
.hospital-interest-copy h3{margin:4px 0 2px;font-size:.84rem;}
.hospital-interest-copy h3 small{margin-left:5px;color:#8c7e83;font-weight:600;}
.unread .hospital-interest-copy h3 small{color:rgba(255,255,255,.7);}
.hospital-interest-copy p{margin:0;color:#75686d;font-size:.67rem;}
.unread .hospital-interest-copy p{color:rgba(255,255,255,.82);}
.hospital-interest-copy blockquote{margin:9px 0 0;padding:8px 10px;border-left:2px solid #c89c5a;border-radius:0 8px 8px 0;background:rgba(110,24,56,.04);font-size:.68rem;}
.unread .hospital-interest-copy blockquote{background:rgba(255,255,255,.1);}
.hospital-interest-contact{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.hospital-interest-contact a{display:inline-flex;align-items:center;gap:4px;color:#6e1838;font-size:.62rem;text-decoration:none;}
.unread .hospital-interest-contact a{color:#fff;}
.hospital-interest-contact svg{width:13px;height:13px;}
.btn-light{border:1px solid rgba(255,255,255,.42);background:#fff;color:#6e1838;}

.urgent-workspace-body{
    background:#f7f5f2;
}

.urgent-form-page>section,
.urgent-board-page>section{
    padding:0;
}

.urgent-form-hero,
.urgent-board-hero{
    color:#fff;
    background:
        radial-gradient(circle at 84% 20%,rgba(216,159,84,.3),transparent 27%),
        linear-gradient(116deg,#781f40,#4f1029 63%,#2d0b1b);
}

.urgent-form-hero-inner,
.urgent-board-hero-inner{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    min-height:285px;
    padding-top:72px;
    padding-bottom:58px;
}

.urgent-form-hero h1,
.urgent-board-hero h1{
    max-width:760px;
    margin:13px 0 10px;
    font-family:"Playfair Display",serif;
    font-size:clamp(2.4rem,5vw,4.7rem);
    line-height:1.02;
    letter-spacing:-.045em;
}

.urgent-form-hero p,
.urgent-board-hero p{
    max-width:680px;
    margin:0;
    color:rgba(255,255,255,.75);
    font-size:.9rem;
    line-height:1.7;
}

.urgent-eyebrow,
.urgent-live-pill,
.urgent-fixed-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    border-radius:999px;
    font-size:.66rem;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.urgent-eyebrow{padding:8px 11px;background:rgba(255,255,255,.13);}
.urgent-eyebrow svg,.urgent-fixed-pill svg,.urgent-live-pill svg{width:15px;height:15px;}
.urgent-form-hero .btn,.urgent-board-hero .btn{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;}
.urgent-form-hero .btn svg,.urgent-board-hero .btn svg{width:17px;height:17px;}

.urgent-form-shell,
.urgent-board-shell{
    padding-top:34px!important;
    padding-bottom:72px!important;
}

.urgent-requirement-form{
    max-width:1040px;
    margin:0 auto;
    padding:30px;
    border:1px solid #e9e0dd;
    border-radius:26px;
    background:#fff;
    box-shadow:0 24px 70px rgba(56,34,41,.08);
}

.urgent-form-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:20px;
}

.urgent-form-heading h2,.urgent-board-toolbar h2{
    margin:5px 0 0;
    color:#6e1838;
    font-family:"Playfair Display",serif;
    font-size:clamp(1.9rem,3vw,2.7rem);
}

.urgent-fixed-pill{padding:9px 13px;background:#f7e8ed;color:#8a1e45;}

.urgent-profile-summary{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    margin-bottom:24px;
    padding:14px;
    border-radius:16px;
    background:#faf7f5;
}

.urgent-summary-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#efe2e7;color:#6e1838;}
.urgent-summary-icon svg{width:20px;height:20px;}
.urgent-profile-summary small,.urgent-profile-summary strong,.urgent-profile-summary span{display:block;}
.urgent-profile-summary small{color:#9b8d91;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;}
.urgent-profile-summary strong{margin:2px 0;font-size:.8rem;}
.urgent-profile-summary div>span{color:#817479;font-size:.66rem;}
.urgent-profile-summary>a{color:#6e1838;font-size:.66rem;font-weight:800;text-decoration:none;}

.urgent-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.urgent-form-grid .full-width{grid-column:1/-1;}
.urgent-rate-input{display:flex;align-items:center;border:1px solid #dcd1cd;border-radius:10px;overflow:hidden;background:#fff;}
.urgent-rate-input>span{padding:0 13px;color:#6e1838;font-weight:800;}
.urgent-rate-input input{border:0!important;border-left:1px solid #e4dad6!important;border-radius:0!important;}

.urgent-price-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px;
    margin-top:24px;
    overflow:hidden;
    border:1px solid #e6dad6;
    border-radius:18px;
    background:#e6dad6;
}

.urgent-price-summary>div{padding:17px;background:#fbf9f8;}
.urgent-price-summary span,.urgent-price-summary strong,.urgent-price-summary small{display:block;}
.urgent-price-summary span{color:#8d7e83;font-size:.61rem;font-weight:700;}
.urgent-price-summary strong{margin-top:6px;color:#4d3940;font-family:"Playfair Display",serif;font-size:1.4rem;}
.urgent-price-total{background:#f7edf0!important;}
.urgent-estimate{background:#6e1838!important;}
.urgent-estimate span,.urgent-estimate strong,.urgent-estimate small{color:#fff;}
.urgent-estimate small{margin-top:3px;opacity:.7;font-size:.56rem;}

.urgent-terms-check{display:flex;align-items:flex-start;gap:10px;margin:20px 0;padding:15px;border:1px solid #ead9be;border-radius:15px;background:#fcf7ed;color:#6d5b48;font-size:.68rem;line-height:1.55;}
.urgent-terms-check input{margin-top:3px;accent-color:#6e1838;}
.urgent-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;}
.urgent-form-actions .btn{display:inline-flex;align-items:center;gap:7px;}
.urgent-form-actions svg{width:16px;height:16px;}

.urgent-success-panel{max-width:700px;margin:40px auto;padding:42px;text-align:center;border-radius:26px;background:#fff;box-shadow:0 24px 70px rgba(56,34,41,.1);}
.urgent-success-panel>span{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 15px;border-radius:50%;background:#e8f3eb;color:#397153;}
.urgent-success-panel>span svg{width:30px;height:30px;}
.urgent-success-panel h2{margin:0;color:#6e1838;font-family:"Playfair Display",serif;font-size:2.2rem;}
.urgent-success-panel p{color:#7f7276;}
.urgent-success-panel>div{display:flex;justify-content:center;gap:10px;margin-top:20px;}

.urgent-board-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px;}
.urgent-board-toolbar p{margin:5px 0 0;color:#86787d;font-size:.73rem;}
.urgent-board-filters{display:flex;gap:10px;}
.urgent-board-filters input{min-width:220px;padding:12px 14px;border:1px solid #ded3cf;border-radius:12px;background:#fff;}
.urgent-requirement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}

.urgent-listing-card{padding:22px;border:1px solid #e8dedb;border-radius:22px;background:#fff;box-shadow:0 13px 34px rgba(53,34,41,.055);}
.urgent-listing-top{display:flex;align-items:center;justify-content:space-between;gap:14px;}
.urgent-live-pill{padding:7px 10px;background:#f7e8ed;color:#8a1e45;}
.urgent-listing-top>small{color:#9c8e92;font-size:.59rem;}
.urgent-listing-card h3{margin:14px 0 6px;color:#6e1838;font-family:"Playfair Display",serif;font-size:1.35rem;}
.urgent-listing-location{display:flex;align-items:center;gap:5px;margin:0;color:#786b70;font-size:.68rem;}
.urgent-listing-location svg{width:14px;height:14px;color:#ad7740;}
.urgent-listing-details{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:9px;margin:16px 0;}
.urgent-listing-details>div{padding:10px;border-radius:11px;background:#faf7f5;}
.urgent-listing-details span,.urgent-listing-details strong{display:block;}
.urgent-listing-details span{display:flex;align-items:center;gap:4px;color:#9a8b90;font-size:.54rem;}
.urgent-listing-details span svg{width:12px;height:12px;}
.urgent-listing-details strong{margin-top:4px;color:#4c3a40;font-size:.65rem;line-height:1.4;}
.urgent-listing-notes{margin:0 0 15px;padding:10px 12px;border-left:2px solid #c89752;background:#fcf9f3;color:#74656a;font-size:.65rem;line-height:1.55;}
.urgent-listing-rate{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:15px;border-top:1px solid #eee6e3;}
.urgent-listing-rate.doctor-rate-only{grid-template-columns:1fr;}
.urgent-listing-rate>div{padding:11px;border-radius:12px;background:#f8f5f3;}
.urgent-listing-rate span,.urgent-listing-rate strong,.urgent-listing-rate em{display:block;}
.urgent-listing-rate span{color:#918388;font-size:.55rem;text-transform:uppercase;letter-spacing:.06em;}
.urgent-listing-rate strong{margin-top:4px;color:#6e1838;font-size:1rem;}
.urgent-listing-rate strong small{font-size:.55rem;font-weight:600;}
.urgent-listing-rate em{margin-top:3px;color:#9a793f;font-size:.52rem;font-style:normal;}
.urgent-listing-action{display:flex;align-items:center;justify-content:flex-end;margin-top:14px;}
.urgent-listing-action .btn{display:inline-flex;align-items:center;gap:6px;}
.urgent-listing-action svg{width:15px;height:15px;}
.urgent-owner-pill,.urgent-view-only{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border-radius:999px;background:#edf4ef;color:#397153;font-size:.6rem;font-weight:800;}
.urgent-view-only{background:#f3edee;color:#806d74;}
.urgent-owner-pill svg,.urgent-view-only svg{width:13px;height:13px;}
.urgent-listing-skeleton{min-height:390px;background:linear-gradient(90deg,#f7f3f1 25%,#fff 50%,#f7f3f1 75%);background-size:200% 100%;animation:urgentShimmer 1.4s infinite;}
@keyframes urgentShimmer{to{background-position:-200% 0;}}
.urgent-board-empty{padding:60px 20px;text-align:center;border:1px dashed #d9ceca;border-radius:22px;background:#fff;}
.urgent-board-empty>span{display:grid;place-items:center;width:52px;height:52px;margin:0 auto;border-radius:50%;background:#f2e7eb;color:#6e1838;}
.urgent-board-empty h3{margin:13px 0 4px;color:#6e1838;font-family:"Playfair Display",serif;font-size:1.5rem;}
.urgent-board-empty p{margin:0;color:#8a7c81;font-size:.72rem;}

.urgent-apply-dialog{width:min(560px,calc(100% - 30px));padding:0;border:0;border-radius:24px;background:transparent;}
.urgent-apply-dialog::backdrop{background:rgba(37,15,24,.62);backdrop-filter:blur(4px);}
.urgent-apply-form{position:relative;padding:30px;border-radius:24px;background:#fff;}
.urgent-dialog-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:12px;border-radius:14px;background:#f1e3e8;color:#6e1838;}
.urgent-dialog-icon svg{width:23px;height:23px;}
.urgent-apply-form>small{color:#b0783c;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em;}
.urgent-apply-form h2{margin:5px 0;color:#6e1838;font-family:"Playfair Display",serif;font-size:2rem;}
.urgent-apply-form>p{margin:0 0 18px;color:#817479;font-size:.72rem;line-height:1.55;}

/* Urgent-duty doctor selection, OTP hand-off and capped attendance */
.hospital-interest-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;}
.hospital-interest-actions .btn{white-space:nowrap;}
.hospital-interest-private{display:flex!important;align-items:center;gap:6px;margin-top:9px;padding:8px 10px;border-radius:9px;background:#f4f0f1;color:#786a6f!important;font-size:.59rem!important;line-height:1.45;}
.hospital-interest-private svg{flex:0 0 auto;width:14px;height:14px;color:#6e1838;}
.urgent-doctor-selected{display:inline-flex;align-items:center;gap:5px;padding:9px 11px;border-radius:999px;background:#e9f3ec;color:#397153;font-size:.62rem;font-weight:850;}
.urgent-doctor-selected.unavailable{background:#f1edee;color:#83757a;}
.urgent-doctor-selected svg{width:15px;height:15px;}

.urgent-shift-panel{margin-top:18px!important;padding:24px!important;border:1px solid #eadfdb;border-radius:24px;background:#fff;box-shadow:0 18px 46px rgba(59,36,44,.07);}
.doctor-shift-panel{margin-top:-32px!important;position:relative;z-index:3;}
.urgent-shift-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px;}
.urgent-shift-heading h2{margin:6px 0 3px;color:#6e1838;font-family:"Playfair Display",serif;font-size:1.8rem;}
.urgent-shift-heading p{max-width:730px;margin:0;color:#83757a;font-size:.72rem;line-height:1.55;}
.urgent-shift-security{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border-radius:999px;background:#f4e9ed;color:#6e1838;font-size:.62rem;font-weight:850;white-space:nowrap;}
.urgent-shift-security svg{width:15px;height:15px;}
.urgent-shift-control-list,.doctor-shift-list{display:grid;gap:14px;}
.urgent-shift-control-card,.doctor-shift-card{padding:19px;border:1px solid #e8dedb;border-radius:18px;background:#fdfcfc;}
.urgent-shift-control-card[data-shift-status="in_progress"],.doctor-shift-card[data-shift-status="in_progress"]{border-color:#7f2446;box-shadow:inset 4px 0 #7f2446;}
.urgent-shift-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;}
.urgent-shift-card-head small{color:#b0783c;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;}
.urgent-shift-card-head h3{margin:4px 0 3px;color:#5d1832;font-family:"Playfair Display",serif;font-size:1.22rem;}
.urgent-shift-card-head p{margin:0;color:#84767b;font-size:.66rem;}
.urgent-shift-status{padding:7px 10px;border-radius:999px;background:#f2e7eb;color:#771f41;font-size:.58rem;font-weight:850;white-space:nowrap;}
.urgent-shift-facts,.doctor-shift-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0;}
.urgent-shift-facts>div,.doctor-shift-summary>div{padding:11px;border-radius:11px;background:#f8f5f3;}
.urgent-shift-facts span,.urgent-shift-facts strong,.doctor-shift-summary span,.doctor-shift-summary strong{display:block;}
.urgent-shift-facts span,.doctor-shift-summary span{color:#96888d;font-size:.54rem;text-transform:uppercase;letter-spacing:.05em;}
.urgent-shift-facts strong,.doctor-shift-summary strong{margin-top:5px;color:#4e3b42;font-size:.67rem;line-height:1.35;}
.urgent-otp-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;}
.urgent-otp-box{padding:16px;border-radius:15px;border:1px solid #e4d8d5;background:#fff;}
.urgent-otp-box.end-code{border-color:#e1c895;background:#fffaf0;}
.urgent-otp-box span,.urgent-otp-box strong{display:block;}
.urgent-otp-box span{color:#887a7f;font-size:.58rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em;}
.urgent-otp-box strong{margin:7px 0;color:#6e1838;font-family:"Plus Jakarta Sans",sans-serif;font-size:1.55rem;letter-spacing:.17em;}
.urgent-otp-box button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:#6e1838;font:inherit;font-size:.62rem;font-weight:850;cursor:pointer;}
.urgent-otp-box button svg{width:14px;height:14px;}
.urgent-shift-cap,.doctor-shift-live{display:flex;align-items:center;gap:10px;padding:12px;border-radius:13px;background:#f2e7eb;color:#6e1838;}
.urgent-shift-cap>svg,.doctor-shift-live>svg{flex:0 0 auto;width:20px;height:20px;}
.urgent-shift-cap strong,.urgent-shift-cap span,.doctor-shift-live span,.doctor-shift-live strong{display:block;}
.urgent-shift-cap strong,.doctor-shift-live strong{font-size:.69rem;}
.urgent-shift-cap span,.doctor-shift-live span{margin-top:2px;color:#806f75;font-size:.58rem;line-height:1.45;}
.doctor-shift-live{margin:13px 0;background:#6e1838;color:#fff;}
.doctor-shift-live span{margin:0 0 3px;color:rgba(255,255,255,.72);}
.doctor-shift-live strong{color:#fff;font-size:1rem;}
.doctor-shift-otp-form{display:flex;align-items:flex-end;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #eee5e2;}
.doctor-shift-otp-form label{flex:1;}
.doctor-shift-otp-form label span{display:block;margin-bottom:6px;color:#68585e;font-size:.64rem;font-weight:800;}
.doctor-shift-otp-form input{width:100%;padding:12px 13px;border:1px solid #d9ceca;border-radius:10px;background:#fff;text-transform:uppercase;letter-spacing:.13em;}
.doctor-shift-otp-form .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:43px;}
.doctor-shift-otp-form .btn svg{width:16px;height:16px;}
.doctor-shift-window{display:flex;align-items:center;gap:6px;margin:12px 0 0;color:#8a6b3e;font-size:.63rem;}
.doctor-shift-window.completed{color:#397153;}
.doctor-shift-window svg{width:15px;height:15px;}
.doctor-shift-form-message{margin:8px 0 0!important;}
.urgent-shift-empty,.doctor-shift-empty{display:flex;align-items:center;gap:14px;padding:18px;border:1px dashed #d9ceca;border-radius:16px;background:#fbf9f8;}
.urgent-shift-empty>span,.doctor-shift-empty-icon{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border-radius:13px;background:#f1e3e8;color:#6e1838;}
.urgent-shift-empty svg,.doctor-shift-empty svg{width:20px;height:20px;}
.urgent-shift-empty h3,.doctor-shift-empty h3{margin:0 0 4px;color:#6e1838;font-family:"Playfair Display",serif;font-size:1.08rem;}
.urgent-shift-empty p,.doctor-shift-empty p{margin:0;color:#82757a;font-size:.65rem;line-height:1.55;}
.doctor-shift-empty{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(310px,.7fr);}
.doctor-shift-otp-preview{display:flex;align-items:flex-end;gap:8px;opacity:.58;}
.doctor-shift-otp-preview label{flex:1;}
.doctor-shift-otp-preview label span{display:block;margin-bottom:6px;color:#68585e;font-size:.61rem;font-weight:800;}
.doctor-shift-otp-preview input{width:100%;padding:11px 12px;border:1px solid #d9ceca;border-radius:10px;background:#fff;}
.doctor-shift-otp-preview .btn{display:inline-flex;align-items:center;gap:5px;min-height:41px;white-space:nowrap;}

@media(max-width:1100px){
    .hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(3,minmax(0,1fr));}
    .urgent-price-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:800px){
    .urgent-form-hero-inner,.urgent-board-hero-inner,.urgent-board-toolbar,.hospital-urgent-interest-heading{align-items:flex-start;flex-direction:column;}
    .urgent-form-hero-inner,.urgent-board-hero-inner{min-height:auto;padding-top:55px;padding-bottom:45px;}
    .urgent-requirement-grid{grid-template-columns:1fr;}
    .urgent-board-filters{width:100%;}
    .urgent-board-filters label{flex:1;}
    .urgent-board-filters input{width:100%;min-width:0;}
    .hospital-urgent-interest-card{grid-template-columns:auto minmax(0,1fr);}
    .hospital-urgent-interest-card>.btn{grid-column:1/-1;width:100%;}
    .urgent-shift-heading,.urgent-shift-card-head{align-items:flex-start;flex-direction:column;}
    .urgent-shift-facts,.doctor-shift-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
    .doctor-shift-empty{grid-template-columns:auto minmax(0,1fr);}
    .doctor-shift-otp-preview{grid-column:1/-1;width:100%;}
}

@media(max-width:720px){
    .hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;}
    .hospital-workspace-dashboard .hospital-dashboard-intro{margin-top:18px;}
    .hospital-post-menu{flex:1 1 100%;}
    .hospital-post-menu>#hospitalPostRequirementToggle{width:100%;}
    .hospital-post-popover{right:auto;left:0;width:min(310px,calc(100vw - 48px));}
    .urgent-requirement-form{padding:20px 16px;}
    .urgent-form-grid{grid-template-columns:1fr;}
    .urgent-form-grid .full-width{grid-column:auto;}
    .urgent-profile-summary{grid-template-columns:auto minmax(0,1fr);}
    .urgent-profile-summary>a{grid-column:1/-1;}
    .urgent-listing-details{grid-template-columns:1fr;}
    .urgent-board-filters{flex-direction:column;}
}

@media(max-width:480px){
    .hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:1fr;}
    .hospital-urgent-interest-panel{padding:16px!important;}
    .hospital-urgent-interest-card{grid-template-columns:1fr;}
    .hospital-interest-avatar{display:none;}
    .urgent-price-summary,.urgent-listing-rate{grid-template-columns:1fr;}
    .urgent-form-heading{align-items:flex-start;flex-direction:column;}
    .urgent-form-actions,.urgent-success-panel>div{align-items:stretch;flex-direction:column;}
    .urgent-form-actions .btn,.urgent-success-panel .btn{justify-content:center;width:100%;}
    .urgent-shift-panel{padding:16px!important;}
    .doctor-shift-panel{margin-top:-18px!important;}
    .urgent-otp-pair,.urgent-shift-facts,.doctor-shift-summary{grid-template-columns:1fr;}
    .doctor-shift-otp-form{align-items:stretch;flex-direction:column;}
    .doctor-shift-otp-form .btn{width:100%;}
    .urgent-shift-empty,.doctor-shift-empty{grid-template-columns:1fr;align-items:flex-start;}
    .doctor-shift-empty-icon{display:none;}
    .doctor-shift-otp-preview{align-items:stretch;flex-direction:column;}
    .doctor-shift-otp-preview .btn{justify-content:center;width:100%;}
}

.hero-support{
    max-width:920px;
    margin:-60px auto 64px;
    text-align:center;
    position:relative;
    z-index:4;
}

.hero-support-tag{
    margin-bottom:18px;
}

.hero-support h2{
    font-size:clamp(2.4rem,4.8vw,4rem);
    margin-bottom:20px;
    letter-spacing:-0.045em;
    color:var(--burgundy);
}

.hero-support p{
    max-width:760px;
    margin:0 auto;
    font-size:1.08rem;
    line-height:1.8;
    color:var(--text-light);
}

/*==================================================
VALUE BAR PNG ICONS
==================================================*/

.value-icon-container img{
    width:32px;
    height:32px;
    object-fit:contain;
    display:block;
}

.value-icon-container{
    flex-shrink:0;
}

.value-item:hover .value-icon-container img{
    transform:scale(1.08);
}

.value-icon-container img{
    transition:transform .28s cubic-bezier(.16,1,.3,1);
}

/*==================================================
PROCESS SECTION CENTERING
==================================================*/

.process-section .container{
    text-align:center;
}

.process-section .section-tag{
    margin-inline:auto;
}

.process-section .section-title{
    text-align:center;
}

/*==================================================
PROCESS PNG ICONS
==================================================*/

.process-icon-box img{
    width:38px;
    height:38px;
    object-fit:contain;
    display:block;
    transition:transform .28s cubic-bezier(.16,1,.3,1);
}

.process-step:hover .process-icon-box img{
    transform:scale(1.08);
}

/*==================================================
PROCESS SECTION POSITION FIX
==================================================*/

.process-section{
    padding-top:30px;
    padding-bottom:100px;
}

.process-section .container{
    text-align:center;
}

.process-section .section-tag{
    margin-inline:auto;
}

/*==================================================
SOLUTIONS SECTION POSITION + CENTERING
==================================================*/

.solutions-section{
    padding-top:40px;
    padding-bottom:100px;
}

.solutions-section .container{
    text-align:center;
}

.solutions-section .section-tag{
    margin-inline:auto;
    margin-bottom:18px;
}

.solutions-section .section-title{
    text-align:center;
    margin-bottom:46px;
}

/*==================================================
SOLUTION CARD PNG IMAGES
==================================================*/

.solution-illustration img{
    width:120px;
    height:120px;
    object-fit:contain;
    display:block;
    transition:transform .32s cubic-bezier(.16,1,.3,1);
}

.solution-card:hover .solution-illustration img{
    transform:scale(1.06);
}

/*==================================================
SOLUTION CARD ILLUSTRATIONS
==================================================*/

.solution-illustration{
    height:210px;
    overflow:hidden;
}

.solution-illustration img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
    transition:transform .32s cubic-bezier(.16,1,.3,1);
}

.solution-card:hover .solution-illustration img{
    transform:scale(1.04);
}

.solutions-section{
    padding-bottom:30px;
}

.stats-bar{
    margin-top:0;
    margin-bottom:90px;
}

/*==================================================
CTA POSITION AFTER REMOVING WHY SECTION
==================================================*/

.assistance-strip{
    margin-top:60px;
}

/*==================================================
INTEGRATED FOOTER CTA
==================================================*/

footer{
    margin-top:60px;
    padding-top:64px;
}

.footer-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;

    padding:0 0 56px;
    margin-bottom:56px;

    border-bottom:1px solid rgba(0,0,0,.06);
}

.footer-cta-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:8px 14px;
    margin-bottom:18px;

    border-radius:999px;

    background:var(--peach);
    color:var(--gold);

    font-size:.72rem;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.footer-cta h2{
    max-width:760px;
    margin-bottom:14px;

    font-size:clamp(2.2rem,4.5vw,4rem);
    letter-spacing:-0.045em;
    color:var(--burgundy);
}

.footer-cta p{
    max-width:620px;
    font-size:1.05rem;
    line-height:1.8;
}

.footer-cta-btn{
    flex-shrink:0;
    min-width:150px;
}

/* Mobile */
@media(max-width:768px){

    .footer-cta{
        flex-direction:column;
        align-items:flex-start;
        text-align:left;
        padding-bottom:42px;
        margin-bottom:42px;
    }

    .footer-cta-btn{
        width:100%;
    }

}

/*==================================================
FOOTER SOCIAL ICONS
==================================================*/

.social-icons{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:26px;
}

.social-icons a{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#FAF7F4;
    color:var(--burgundy);

    border:1px solid rgba(0,0,0,.04);

    transition:
        transform .28s cubic-bezier(.16,1,.3,1),
        background .28s cubic-bezier(.16,1,.3,1),
        color .28s cubic-bezier(.16,1,.3,1),
        box-shadow .28s cubic-bezier(.16,1,.3,1);
}

.social-icons a svg{
    width:19px;
    height:19px;
    stroke-width:2.2;
}

.x-icon{
    font-family:"Plus Jakarta Sans", sans-serif;
    font-size:.95rem;
    font-weight:800;
    line-height:1;
}

.social-icons a:hover{
    transform:translateY(-3px) scale(1.08);
    background:var(--burgundy);
    color:white;
    box-shadow:0 12px 24px rgba(110,24,56,.16);
}

.social-icons a:active{
    transform:scale(.96);
}

/*==================================================
RAISE HERO SECTION — FINAL
==================================================*/

.hero-section{
    padding-top:115px;
    padding-bottom:70px;
}

.hero-grid{
    min-height:640px;
}

.stats-bar{
    background:transparent;
    border:none;
    box-shadow:none;
    border-radius:0;

    margin-top:40px;
    margin-bottom:80px;
    padding:28px 0;

    border-top:1px solid rgba(0,0,0,.05);
    border-bottom:1px solid rgba(0,0,0,.05);
}

/*==================================================
FOOTER SOCIAL WEBP ICONS
==================================================*/

.social-icons{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:26px;
}

.social-icons a{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#FAF7F4;
    border:1px solid rgba(0,0,0,.04);

    transition:
        transform .28s cubic-bezier(.16,1,.3,1),
        background .28s cubic-bezier(.16,1,.3,1),
        box-shadow .28s cubic-bezier(.16,1,.3,1);
}

.social-icons a img{
    width:20px;
    height:20px;
    object-fit:contain;
    display:block;

    transition:transform .28s cubic-bezier(.16,1,.3,1);
}

.social-icons a:hover{
    transform:translateY(-3px) scale(1.08);
    background:white;
    box-shadow:0 12px 24px rgba(110,24,56,.14);
}

.social-icons a:hover img{
    transform:scale(1.08);
}

.social-icons a:active{
    transform:scale(.96);
}

/*==================================================
AUTH PAGE CLEANUP — REGISTER / LOGIN
==================================================*/

body:has(.auth-page) header{
    position:static;
    inset:auto;
    margin-top:28px;
    padding-inline:0;
}

body:has(.auth-page) header .container{
    box-shadow:none;
    background:transparent;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    border:none;
}

.auth-nav{
    display:flex;
    align-items:center;
    justify-content:space-between;

    height:auto;
    padding:0;
}

.auth-nav .nav-right{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:14px;
}

.auth-nav .login-link{
    margin-left:auto;
}

.auth-nav .btn-nav{
    min-width:110px;
}

.auth-page{
    padding-top:60px;
}

.auth-layout{
    grid-template-columns:1fr;
    max-width:980px;
    margin-inline:auto;
    text-align:center;
}

.auth-copy{
    max-width:900px;
    margin-inline:auto;
}

.auth-copy h1{
    max-width:980px;
    margin-inline:auto;
    margin-bottom:22px;
}

.auth-copy p{
    max-width:760px;
    margin-inline:auto;
    margin-bottom:28px;
}

.auth-benefits{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    flex-wrap:wrap;
    margin-bottom:20px;
}

.auth-benefit{
    justify-content:center;
}

.auth-card{
    max-width:860px;
    width:100%;
    margin-inline:auto;
    text-align:left;
}

.auth-card-header{
    text-align:center;
}

/*==================================================
AUTH CHECKBOX FIX
==================================================*/

.auth-checkbox{
    display:flex;
    align-items:flex-start;
    gap:12px;

    width:100%;
    max-width:100%;

    margin:10px 0 26px;

    font-size:.92rem;
    line-height:1.6;
    color:var(--text-light);
}

.auth-checkbox input[type="checkbox"]{
    width:18px !important;
    height:18px !important;
    min-width:18px;
    max-width:18px;

    margin:3px 0 0 0;
    padding:0;

    accent-color:var(--burgundy);
    flex-shrink:0;
}

.auth-checkbox span{
    display:inline;
}

.auth-checkbox a{
    color:var(--burgundy);
    font-weight:700;
}

/*==================================================
AUTH FORM CENTERING FIX
==================================================*/

.auth-card{
    max-width:860px;
    width:100%;
    margin-left:auto;
    margin-right:auto;
}

.auth-form{
    width:100%;
}

.auth-submit,
.auth-switch{
    display:flex;
    justify-content:center;
    margin-left:auto;
    margin-right:auto;
}

.auth-submit{
    max-width:260px;
}

.auth-switch{
    text-align:center;
}

.auth-page{
    padding-top:10px;
    padding-bottom:80px;
}

.auth-layout{
    margin-top:10px;
}

.form-message{
    min-height:24px;
    margin:8px 0 18px;
    font-size:.92rem;
    font-weight:600;
    text-align:center;
}

.form-message.success{
    color:#2D6A4F;
}

.form-message.error{
    color:#B23030;
}

.form-message.neutral{
    color:var(--text-light);
}

/*==================================================
LEGAL PAGES
==================================================*/

.legal-page{
    padding-top:70px;
    padding-bottom:100px;
    background:
        radial-gradient(circle at 85% 10%, rgba(214,161,92,.10), transparent 28%),
        radial-gradient(circle at 12% 80%, rgba(110,24,56,.07), transparent 30%),
        var(--ivory);
}

.legal-container{
    max-width:920px;
    margin-inline:auto;
}

.legal-header{
    text-align:center;
    margin-bottom:54px;
}

.legal-header h1{
    font-size:clamp(3rem,6vw,5rem);
    letter-spacing:-0.05em;
    margin-bottom:14px;
}

.legal-header p{
    font-size:.95rem;
    color:var(--text-light);
}

.legal-content{
    background:rgba(255,255,255,.78);
    border:1px solid rgba(0,0,0,.06);
    border-radius:32px;
    padding:54px;
    box-shadow:0 20px 60px rgba(0,0,0,.06);
}

.legal-content h2{
    font-family:"Plus Jakarta Sans", sans-serif;
    font-size:1.1rem;
    color:var(--burgundy);
    margin-top:34px;
    margin-bottom:10px;
    letter-spacing:-0.02em;
}

.legal-content h2:first-of-type{
    margin-top:0;
}

.legal-content p{
    font-size:1rem;
    line-height:1.85;
    color:var(--text-light);
}

/* Mobile */
@media(max-width:768px){

    .legal-page{
        padding-top:40px;
    }

    .legal-content{
        padding:32px 24px;
        border-radius:24px;
    }

    .legal-header{
        margin-bottom:36px;
    }

}

/*==================================================
LEGAL PAGE FIRST SECTION SPACING FIX
==================================================*/

.legal-content > p:first-child{
    margin-bottom:36px;
}

.legal-content > p:first-child + h2{
    margin-top:0;
}

/*==================================================
LOGIN PAGE — LOCUMNET
==================================================*/

.login-page{
    min-height:calc(100vh - 120px);
    padding:50px 0 90px;
    background:
        radial-gradient(circle at 86% 18%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 12% 84%, rgba(110,24,56,.07), transparent 28%),
        var(--ivory);
}

.login-layout{
    display:grid;
    grid-template-columns:minmax(420px,.9fr) minmax(420px,1.1fr);
    gap:64px;
    align-items:center;
}

.login-card-shell{
    background:rgba(255,255,255,.86);
    border:1px solid rgba(0,0,0,.06);
    border-radius:32px;
    padding:42px;
    box-shadow:0 24px 70px rgba(0,0,0,.08);
}

.login-card-header{
    text-align:center;
    margin-bottom:28px;
}

.login-card-header h1{
    font-size:clamp(2.6rem,5vw,4rem);
    letter-spacing:-.05em;
    margin-bottom:10px;
}

.login-card-header p{
    font-size:1rem;
}

.login-tabs{
    display:flex;
    gap:8px;
    padding:6px;
    margin-bottom:28px;
    background:var(--beige);
    border-radius:16px;
}

.login-tab{
    flex:1;
    border:none;
    background:transparent;
    padding:12px 14px;
    border-radius:12px;
    font-weight:700;
    color:var(--text-light);
    cursor:pointer;
}

.login-tab.active{
    background:white;
    color:var(--burgundy);
    box-shadow:0 6px 18px rgba(0,0,0,.08);
}

.login-panel{
    display:none;
}

.login-panel.active{
    display:block;
}

.login-input-wrap{
    position:relative;
}

.login-input-wrap svg{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
    width:20px;
    height:20px;
    color:var(--burgundy);
    pointer-events:none;
}

.login-input-wrap input{
    padding-left:50px;
}

.login-options{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin:8px 0 22px;
    font-size:.9rem;
}

.login-remember{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--text-light);
    cursor:pointer;
}

.login-remember input{
    width:16px !important;
    height:16px !important;
    accent-color:var(--burgundy);
}

.login-forgot{
    color:var(--burgundy);
    font-weight:700;
}

.login-submit{
    width:100%;
    height:54px;
}

.otp-coming-soon{
    text-align:center;
    padding:34px 18px;
}

.otp-coming-soon svg{
    width:42px;
    height:42px;
    color:var(--burgundy);
    margin-bottom:18px;
}

.otp-coming-soon h3{
    font-size:1.6rem;
    margin-bottom:10px;
}

.otp-coming-soon p{
    max-width:420px;
    margin:0 auto;
}

.login-side-panel{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.login-visual-card{
    background:linear-gradient(135deg,var(--peach),var(--lavender));
    border:1px solid rgba(0,0,0,.05);
    border-radius:34px;
    padding:36px;
    text-align:center;
}

.login-visual-card img{
    width:100%;
    max-height:340px;
    object-fit:contain;
    margin-bottom:24px;
}

.login-visual-card h2{
    font-size:2.3rem;
    margin-bottom:12px;
}

.login-visual-card p{
    max-width:520px;
    margin:0 auto;
}

.login-feature-list{
    display:grid;
    gap:14px;
}

.login-feature{
    display:flex;
    align-items:center;
    gap:16px;
    background:white;
    border:1px solid rgba(0,0,0,.05);
    border-radius:20px;
    padding:18px;
    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

.login-feature-icon{
    width:52px;
    height:52px;
    border-radius:17px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.login-feature-icon svg{
    width:24px;
    height:24px;
}

.login-feature h4{
    font-family:"Plus Jakarta Sans",sans-serif;
    color:var(--text);
    margin-bottom:3px;
}

.login-feature p{
    font-size:.86rem;
}

/* Tablet */
@media(max-width:992px){

    .login-layout{
        grid-template-columns:1fr;
        max-width:720px;
    }

    .login-side-panel{
        display:none;
    }

}

/* Mobile */
@media(max-width:768px){

    .login-page{
        padding-top:30px;
    }

    .login-card-shell{
        padding:30px 24px;
        border-radius:26px;
    }

    .login-tabs{
        flex-direction:column;
    }

    .login-options{
        flex-direction:column;
        align-items:flex-start;
    }

}

/*==================================================
HOMEPAGE LOGIN INDICATOR
==================================================*/

.user-indicator{
    display:flex;
    align-items:center;
    gap:8px;

    padding:9px 14px;
    border-radius:999px;

    background:var(--sage);
    color:#2D6A4F;

    font-size:.84rem;
    font-weight:700;

    max-width:260px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.user-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#2D6A4F;
    flex-shrink:0;
}

.hidden{
    display:none !important;
}

/*==================================================
QUOTATION PAGE
==================================================*/

.quote-page{
    min-height:calc(100vh - 120px);
    padding:50px 0 90px;
    background:
        radial-gradient(circle at 86% 18%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 12% 84%, rgba(110,24,56,.07), transparent 28%),
        var(--ivory);
}

.quote-layout{
    display:grid;
    grid-template-columns:minmax(520px,1.1fr) minmax(380px,.9fr);
    gap:56px;
    align-items:start;
}

.quote-card{
    background:rgba(255,255,255,.88);
    border:1px solid rgba(0,0,0,.06);
    border-radius:32px;
    padding:44px;
    box-shadow:0 24px 70px rgba(0,0,0,.08);
}

.quote-header{
    text-align:center;
    margin-bottom:34px;
}

.quote-header .section-tag{
    margin-inline:auto;
    margin-bottom:18px;
}

.quote-header h1{
    font-size:clamp(2.6rem,5vw,4.2rem);
    letter-spacing:-.05em;
    margin-bottom:12px;
}

.quote-header p{
    max-width:640px;
    margin:0 auto;
    line-height:1.75;
}

.quote-form{
    display:grid;
    gap:20px;
}

.quote-input-wrap{
    position:relative;
}

.quote-input-wrap svg{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
    width:20px;
    height:20px;
    color:var(--burgundy);
    pointer-events:none;
}

.quote-input-wrap input,
.quote-input-wrap select{
    width:100%;
    padding-left:50px;
}

.quote-small-note{
    font-size:.76rem;
    color:var(--gold);
    font-weight:700;
    margin-left:6px;
}

.dept-selector-container{
    border:1px solid rgba(0,0,0,.12);
    border-radius:16px;
    padding:14px 16px;
    background:white;
}

.dept-search-input{
    width:100%;
    border:none;
    outline:none;
    padding:0 0 12px;
    margin-bottom:14px;
    border-bottom:1px solid rgba(0,0,0,.07);
    border-radius:0;
}

.dept-tags-grid{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    max-height:170px;
    overflow-y:auto;
    padding-right:4px;
}

.dept-tag{
    border:1px solid rgba(0,0,0,.06);
    background:var(--beige);
    color:var(--text);
    border-radius:999px;
    padding:8px 13px;
    font-family:inherit;
    font-size:.82rem;
    font-weight:600;
    cursor:pointer;
    transition:all .22s ease;
}

.dept-tag:hover{
    transform:translateY(-1px);
    border-color:rgba(110,24,56,.25);
}

.dept-tag.selected{
    background:var(--burgundy);
    color:white;
    border-color:var(--burgundy);
}

.quote-submit{
    width:100%;
    height:56px;
    margin-top:4px;
}

.quote-side-panel{
    display:flex;
    flex-direction:column;
    gap:22px;
    position:sticky;
    top:40px;
}

.quote-visual-card{
    background:linear-gradient(135deg,var(--peach),var(--lavender));
    border:1px solid rgba(0,0,0,.05);
    border-radius:34px;
    padding:34px;
    text-align:center;
}

.quote-visual-card img{
    width:100%;
    max-height:300px;
    object-fit:contain;
    margin-bottom:20px;
}

.quote-visual-card h2{
    font-size:2.2rem;
    margin-bottom:10px;
}

.quote-feature-list{
    display:grid;
    gap:14px;
}

.quote-feature{
    display:flex;
    align-items:center;
    gap:16px;
    background:white;
    border:1px solid rgba(0,0,0,.05);
    border-radius:20px;
    padding:18px;
    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

.quote-feature-icon{
    width:52px;
    height:52px;
    border-radius:17px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.quote-feature-icon svg{
    width:24px;
    height:24px;
}

.quote-feature h4{
    font-family:"Plus Jakarta Sans",sans-serif;
    color:var(--text);
    margin-bottom:3px;
}

.quote-feature p{
    font-size:.86rem;
}

/* Tablet */
@media(max-width:992px){

    .quote-layout{
        grid-template-columns:1fr;
        max-width:760px;
    }

    .quote-side-panel{
        display:none;
    }

}

/* Mobile */
@media(max-width:768px){

    .quote-page{
        padding-top:30px;
    }

    .quote-card{
        padding:30px 24px;
        border-radius:26px;
    }

    .quote-small-note{
        display:block;
        margin-left:0;
        margin-top:4px;
    }

}

/*==================================================
QUOTATION SUCCESS RESPONSE
==================================================*/

.quote-success-box{
    display:flex;
    gap:16px;

    margin:8px 0 20px;
    padding:20px;

    border-radius:22px;

    background:var(--sage);
    border:1px solid rgba(45,106,79,.12);

    color:#2D6A4F;
}

.quote-success-icon{
    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:16px;
    background:white;

    flex-shrink:0;
}

.quote-success-icon svg{
    width:24px;
    height:24px;
    color:#2D6A4F;
}

.quote-success-box h3{
    font-family:"Plus Jakarta Sans", sans-serif;
    font-size:1.05rem;
    margin-bottom:6px;
    color:#2D6A4F;
}

.quote-success-box p{
    font-size:.92rem;
    line-height:1.65;
    color:#2D6A4F;
}

.quote-request-id{
    display:inline-flex;
    align-items:center;

    margin:12px 0;
    padding:8px 12px;

    border-radius:999px;
    background:white;

    font-size:.86rem;
    font-weight:600;
}

.quote-success-note{
    font-size:.86rem !important;
    opacity:.9;
}

/*==================================================
HOSPITAL PAGE
==================================================*/

.hospital-page{
    background:
        radial-gradient(circle at 86% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 72%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    min-height:100vh;
    padding-bottom:90px;
}

.hospital-hero{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:64px;
    align-items:center;
    min-height:620px;
    padding-top:60px;
}

.hospital-hero-text h1{
    font-size:clamp(3rem,5.8vw,5.4rem);
    line-height:1;
    letter-spacing:-.055em;
    max-width:760px;
    margin:22px 0;
}

.hospital-hero-text p{
    max-width:720px;
    font-size:1.12rem;
    line-height:1.85;
}

.hospital-actions{
    margin-top:34px;
}

.hospital-hero-card{
    background:linear-gradient(135deg,var(--peach),var(--lavender));
    border:1px solid rgba(0,0,0,.06);
    border-radius:38px;
    padding:36px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
}

.hospital-hero-card img{
    width:100%;
    height:320px;
    object-fit:contain;
    margin-bottom:20px;
}

.hospital-card-content{
    background:rgba(255,255,255,.76);
    border-radius:24px;
    padding:24px;
    text-align:center;
}

.hospital-card-content h3{
    font-size:1.8rem;
    margin-bottom:8px;
}

.hospital-problems,
.hospital-flow{
    padding:70px 0 30px;
}

.section-heading{
    text-align:center;
    max-width:850px;
    margin:0 auto 48px;
}

.section-heading .section-tag{
    margin-inline:auto;
    margin-bottom:18px;
}

.section-heading h2{
    font-size:clamp(2.6rem,4.4vw,4.3rem);
    line-height:1.05;
    letter-spacing:-.045em;
    margin-bottom:14px;
}

.hospital-problems .section-heading{
    max-width:1200px;
}

.hospital-problems .section-heading h2{
    white-space:nowrap;
}

.section-heading p{
    font-size:1.05rem;
    line-height:1.8;
}

.problem-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.problem-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:32px;
    text-align:center;
    box-shadow:0 18px 55px rgba(0,0,0,.05);
}

.problem-icon{
    width:70px;
    height:70px;
    border-radius:22px;
    margin:0 auto 22px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.problem-icon svg{
    width:30px;
    height:30px;
    color:var(--burgundy);
}

.problem-card h3{
    font-size:1.65rem;
    margin-bottom:10px;
}

.problem-card p{
    line-height:1.7;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}

.service-card{
    background:rgba(255,255,255,.82);
    border:1px solid rgba(0,0,0,.06);
    border-radius:26px;
    padding:30px;
    transition:all .25s ease;
}

.service-card:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 60px rgba(0,0,0,.08);
}

.service-card svg{
    width:34px;
    height:34px;
    color:var(--burgundy);
    margin-bottom:22px;
}

.service-card h3{
    font-size:1.55rem;
    margin-bottom:8px;
}

.service-card p{
    line-height:1.7;
}

.hospital-flow-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.flow-step{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:30px 24px;
    text-align:center;
    position:relative;
}

.flow-step span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--gold);
    color:white;
    font-weight:800;
    margin:0 auto 22px;
}

.flow-step h3{
    font-size:1.45rem;
    margin-bottom:10px;
}

.flow-step p{
    font-size:.94rem;
    line-height:1.7;
}

.hospital-cta{
    margin-top:90px;
    padding:48px 56px;
    border-radius:34px;
    background:linear-gradient(135deg,var(--peach),var(--lavender));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.hospital-cta .section-tag{
    margin-bottom:18px;
}

.hospital-cta h2{
    font-size:clamp(2.4rem,4vw,4rem);
    line-height:1.05;
    margin-bottom:12px;
}

.hospital-cta p{
    max-width:720px;
    line-height:1.75;
}

/* Tablet */
@media(max-width:992px){

    .hospital-hero{
        grid-template-columns:1fr;
        min-height:auto;
        padding-top:130px;
        gap:40px;
        text-align:center;
    }

    .hospital-hero-text p{
        margin-inline:auto;
    }

    .hospital-actions{
        justify-content:center;
    }

    .hospital-hero-card{
        max-width:620px;
        margin-inline:auto;
    }

    .problem-grid,
    .services-grid{
        grid-template-columns:1fr 1fr;
    }

    .hospital-flow-grid{
        grid-template-columns:1fr 1fr;
    }

    .hospital-cta{
        flex-direction:column;
        text-align:center;
    }

}

/* Mobile */
@media(max-width:768px){

    .hospital-hero{
        padding-top:110px;
    }

    .hospital-hero-text h1{
        font-size:3rem;
    }

    .hospital-hero-card{
        padding:24px;
        border-radius:28px;
    }

    .hospital-hero-card img{
        height:240px;
    }

    .problem-grid,
    .services-grid,
    .hospital-flow-grid{
        grid-template-columns:1fr;
    }

    .hospital-problems,
    .hospital-flow{
    padding-top:55px;
}

    .hospital-cta{
        padding:34px 26px;
        border-radius:28px;
    }

}

/* Hospital page navbar polish */
.hospital-page ~ header .nav-links,
header .nav-links{
    gap:34px;
}

header .nav-links a{
    letter-spacing:.01em;
}

/* Fix hospital challenge icons */
.problem-icon svg{
    display:block;
    width:32px;
    height:32px;
    stroke:var(--burgundy);
    color:var(--burgundy);
    stroke-width:2.2;
}

/*==================================================
POST REQUIREMENT PAGE
==================================================*/

.requirement-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 90% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 82%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    padding-bottom:90px;
}

.requirement-layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:64px;
    align-items:start;
    padding-top:70px;
}

.requirement-intro{
    position:sticky;
    top:135px;
}

.requirement-intro h1{
    font-size:clamp(3.2rem,5.5vw,5.6rem);
    line-height:.98;
    letter-spacing:-.06em;
    margin:24px 0;
    max-width:680px;
}

.requirement-intro > p{
    font-size:1.08rem;
    line-height:1.85;
    max-width:620px;
}

.requirement-info-card{
    display:flex;
    gap:18px;
    margin-top:34px;
    padding:24px;
    border-radius:28px;
    background:white;
    border:1px solid rgba(0,0,0,.06);
    box-shadow:0 18px 50px rgba(0,0,0,.05);
}

.requirement-info-card svg{
    width:32px;
    height:32px;
    color:var(--burgundy);
}

.requirement-info-card h3{
    font-size:1.4rem;
    margin-bottom:6px;
}

.requirement-info-card p{
    line-height:1.7;
    font-size:.95rem;
}

.requirement-mini-points{
    margin-top:24px;
    display:grid;
    gap:12px;
}

.requirement-mini-points div{
    display:flex;
    align-items:center;
    gap:12px;
    font-weight:700;
    color:var(--burgundy);
}

.requirement-mini-points svg{
    width:20px;
    height:20px;
    color:var(--gold);
}

.requirement-form-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:34px;
    padding:42px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
}

.form-section-title{
    margin-bottom:30px;
}

.form-section-title h2{
    font-size:2.4rem;
    line-height:1;
    margin-bottom:8px;
}

.form-section-title p{
    line-height:1.7;
}

.requirement-form .form-grid{
    display:grid;
    gap:20px;
    margin-bottom:20px;
}

.requirement-form .two-col{
    grid-template-columns:1fr 1fr;
}

.requirement-form .form-group{
    margin-bottom:20px;
}

.requirement-form label{
    display:block;
    font-weight:700;
    margin-bottom:9px;
    color:var(--text);
}

.requirement-form input,
.requirement-form select,
.requirement-form textarea{
    width:100%;
    border:1px solid rgba(0,0,0,.12);
    border-radius:16px;
    padding:15px 16px;
    font-family:var(--font-sans);
    font-size:1rem;
    background:#fff;
    color:var(--text);
    outline:none;
    transition:all .2s ease;
}

.requirement-form textarea{
    resize:vertical;
}

.requirement-form input:focus,
.requirement-form select:focus,
.requirement-form textarea:focus{
    border-color:var(--burgundy);
    box-shadow:0 0 0 4px rgba(110,24,56,.08);
}

.requirement-submit{
    width:100%;
    justify-content:center;
    margin-top:6px;
}

@media(max-width:992px){

    .requirement-layout{
        grid-template-columns:1fr;
        padding-top:130px;
    }

    .requirement-intro{
        position:relative;
        top:auto;
        text-align:center;
    }

    .requirement-intro h1,
    .requirement-intro > p{
        margin-left:auto;
        margin-right:auto;
    }

    .requirement-info-card{
        max-width:680px;
        margin-left:auto;
        margin-right:auto;
        text-align:left;
    }

    .requirement-mini-points{
        max-width:420px;
        margin-left:auto;
        margin-right:auto;
    }

}

@media(max-width:768px){

    .requirement-layout{
        padding-top:110px;
        gap:36px;
    }

    .requirement-intro h1{
        font-size:3.1rem;
    }

    .requirement-form-card{
        padding:28px;
        border-radius:28px;
    }

    .requirement-form .two-col{
        grid-template-columns:1fr;
    }

}

/*==================================================
FIXED TOP NAVBAR - REMOVE FLOATING STYLE
==================================================*/

header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:999;
    background:rgba(252,250,248,.96);
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(0,0,0,.06);
    box-shadow:0 8px 30px rgba(0,0,0,.04);
}

.nav-wrapper{
    height:92px;
    max-width:100%;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    border:none;
    padding-left:64px;
    padding-right:64px;
}

.nav-links{
    gap:42px;
}

.nav-links a{
    letter-spacing:.015em;
}

/* Add spacing below fixed navbar */
.hospital-page,
.requirement-page,
.quote-page,
.auth-page,
.legal-page{
    padding-top:92px;
}/* Add spacing below fixed navbar */
.hospital-page,
.requirement-page,
.quote-page,
.auth-page,
.legal-page{
    padding-top:92px;
}

@media(max-width:768px){

    .nav-wrapper{
        height:78px;
        padding-left:20px;
        padding-right:20px;
    }

    .hospital-page,
    .requirement-page,
    .quote-page,
    .auth-page,
    .legal-page{
        padding-top:78px;
    }

}

/*==================================================
REMOVE NAVBAR CAPSULE FRAME
==================================================*/

header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:999;
    background:rgba(252,250,248,.96);
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(0,0,0,.06);
    box-shadow:0 6px 22px rgba(0,0,0,.035);
}

.nav-wrapper{
    max-width:100%;
    height:92px;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding-left:64px;
    padding-right:64px;
}

header .container{
    width:100%;
}

/*==================================================
DOCTOR PAGE
==================================================*/

.doctor-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 85% 14%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 10% 78%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    padding-top:82px;
    padding-bottom:90px;
}

.doctor-hero{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:64px;
    align-items:center;
    min-height:620px;
    padding-top:60px;
}

.doctor-hero-text h1{
    font-size:clamp(3rem,5.8vw,5.4rem);
    line-height:1;
    letter-spacing:-.055em;
    max-width:760px;
    margin:22px 0;
}

.doctor-hero-text p{
    max-width:720px;
    font-size:1.12rem;
    line-height:1.85;
}

.doctor-actions{
    margin-top:34px;
}

.doctor-hero-card{
    background:linear-gradient(135deg,var(--sage),var(--lavender));
    border:1px solid rgba(0,0,0,.06);
    border-radius:38px;
    padding:36px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
}

.doctor-hero-card img{
    width:100%;
    height:320px;
    object-fit:contain;
    margin-bottom:20px;
}

.doctor-card-content{
    background:rgba(255,255,255,.76);
    border-radius:24px;
    padding:24px;
    text-align:center;
}

.doctor-card-content h3{
    font-size:1.8rem;
    margin-bottom:8px;
}

.doctor-benefits,
.doctor-flow{
    padding:70px 0 30px;
}

.doctor-benefit-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.doctor-benefit-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:32px;
    text-align:center;
    box-shadow:0 18px 55px rgba(0,0,0,.05);
}

.doctor-benefit-icon{
    width:70px;
    height:70px;
    border-radius:22px;
    margin:0 auto 22px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.doctor-benefit-icon svg{
    display:block;
    width:32px;
    height:32px;
    stroke:var(--burgundy);
    color:var(--burgundy);
    stroke-width:2.2;
}

.doctor-benefit-card h3{
    font-size:1.65rem;
    margin-bottom:10px;
}

.doctor-benefit-card p{
    line-height:1.7;
}

.doctor-flow-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.doctor-flow-step{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:30px 24px;
    text-align:center;
}

.doctor-flow-step span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--gold);
    color:white;
    font-weight:800;
    margin:0 auto 22px;
}

.doctor-flow-step h3{
    font-size:1.45rem;
    margin-bottom:10px;
}

.doctor-flow-step p{
    font-size:.94rem;
    line-height:1.7;
}

.doctor-cta{
    margin-top:90px;
    padding:48px 56px;
    border-radius:34px;
    background:linear-gradient(135deg,var(--sage),var(--lavender));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.doctor-cta .section-tag{
    margin-bottom:18px;
}

.doctor-cta h2{
    font-size:clamp(2.4rem,4vw,4rem);
    line-height:1.05;
    margin-bottom:12px;
}

.doctor-cta p{
    max-width:720px;
    line-height:1.75;
}

/* Tablet */
@media(max-width:992px){

    .doctor-hero{
        grid-template-columns:1fr;
        min-height:auto;
        padding-top:50px;
        gap:40px;
        text-align:center;
    }

    .doctor-hero-text p{
        margin-inline:auto;
    }

    .doctor-actions{
        justify-content:center;
    }

    .doctor-hero-card{
        max-width:620px;
        margin-inline:auto;
    }

    .doctor-benefit-grid{
        grid-template-columns:1fr 1fr;
    }

    .doctor-flow-grid{
        grid-template-columns:1fr 1fr;
    }

    .doctor-cta{
        flex-direction:column;
        text-align:center;
    }

}

/* Mobile */
@media(max-width:768px){

    .doctor-page{
        padding-top:78px;
    }

    .doctor-hero{
        padding-top:40px;
    }

    .doctor-hero-text h1{
        font-size:3rem;
    }

    .doctor-hero-card{
        padding:24px;
        border-radius:28px;
    }

    .doctor-hero-card img{
        height:240px;
    }

    .doctor-benefit-grid,
    .doctor-flow-grid{
        grid-template-columns:1fr;
    }

    .doctor-benefits,
    .doctor-flow{
        padding-top:55px;
    }

    .doctor-cta{
        padding:34px 26px;
        border-radius:28px;
    }

}

/*==================================================
DOCTOR COMPLETE PROFILE PAGE
==================================================*/

.doctor-profile-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 90% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 82%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    padding-top:82px;
    padding-bottom:90px;
}

.doctor-profile-layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:64px;
    align-items:start;
    padding-top:70px;
}

.doctor-profile-intro{
    position:sticky;
    top:125px;
}

.doctor-profile-intro h1{
    font-size:clamp(3.2rem,5.5vw,5.6rem);
    line-height:.98;
    letter-spacing:-.06em;
    margin:24px 0;
    max-width:680px;
}

.doctor-profile-intro > p{
    font-size:1.08rem;
    line-height:1.85;
    max-width:620px;
}

.doctor-profile-form-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:34px;
    padding:42px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
}

.doctor-profile-form .form-grid{
    display:grid;
    gap:20px;
    margin-bottom:20px;
}

.doctor-profile-form .two-col{
    grid-template-columns:1fr 1fr;
}

.doctor-profile-form .form-group{
    margin-bottom:20px;
}

.doctor-profile-form label{
    display:block;
    font-weight:700;
    margin-bottom:9px;
    color:var(--text);
}

.doctor-profile-form input,
.doctor-profile-form select,
.doctor-profile-form textarea{
    width:100%;
    border:1px solid rgba(0,0,0,.12);
    border-radius:16px;
    padding:15px 16px;
    font-family:var(--font-sans);
    font-size:1rem;
    background:#fff;
    color:var(--text);
    outline:none;
    transition:all .2s ease;
}

.doctor-profile-form textarea{
    resize:vertical;
}

.doctor-profile-form input:focus,
.doctor-profile-form select:focus,
.doctor-profile-form textarea:focus{
    border-color:var(--burgundy);
    box-shadow:0 0 0 4px rgba(110,24,56,.08);
}

.role-chip-grid{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.role-chip{
    border:none;
    outline:none;
    padding:12px 18px;
    border-radius:999px;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
    font-family:var(--font-sans);
    font-weight:700;
    cursor:pointer;
    transition:all .2s ease;
}

.role-chip:hover{
    background:rgba(110,24,56,.14);
}

.role-chip.active{
    background:var(--burgundy);
    color:white;
}

.doctor-profile-submit{
    width:100%;
    justify-content:center;
    margin-top:6px;
}

@media(max-width:992px){

    .doctor-profile-layout{
        grid-template-columns:1fr;
        padding-top:55px;
    }

    .doctor-profile-intro{
        position:relative;
        top:auto;
        text-align:center;
    }

    .doctor-profile-intro h1,
    .doctor-profile-intro > p{
        margin-left:auto;
        margin-right:auto;
    }

}

@media(max-width:768px){

    .doctor-profile-page{
        padding-top:78px;
    }

    .doctor-profile-layout{
        padding-top:40px;
        gap:36px;
    }

    .doctor-profile-intro h1{
        font-size:3.1rem;
    }

    .doctor-profile-form-card{
        padding:28px;
        border-radius:28px;
    }

    .doctor-profile-form .two-col{
        grid-template-columns:1fr;
    }

}

/*==================================================
ADMIN DASHBOARD
==================================================*/

.admin-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 85% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 78%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    padding-top:82px;
    padding-bottom:90px;
}

.admin-hero{
    padding-top:70px;
    text-align:center;
}

.admin-hero .section-tag{
    margin-inline:auto;
    margin-bottom:20px;
}

.admin-hero h1{
    font-size:clamp(3.2rem,6vw,5.8rem);
    line-height:.98;
    letter-spacing:-.06em;
    margin-bottom:16px;
}

.admin-hero p{
    max-width:720px;
    margin-inline:auto;
    line-height:1.75;
}

.admin-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-top:56px;
}

.admin-stat-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    box-shadow:0 18px 55px rgba(0,0,0,.05);
}

.admin-stat-card span{
    color:var(--text-light);
    font-weight:700;
}

.admin-stat-card h2{
    font-size:3.4rem;
    line-height:1;
    margin-top:8px;
}

.admin-stat-card svg{
    width:38px;
    height:38px;
    color:var(--burgundy);
}

.admin-section{
    margin-top:70px;
}

.admin-section-header{
    display:flex;
    align-items:end;
    justify-content:space-between;
    margin-bottom:24px;
}

.admin-section-header h2{
    font-size:2.7rem;
    line-height:1;
    margin-top:14px;
}

.admin-table-wrap{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    overflow:auto;
    box-shadow:0 18px 55px rgba(0,0,0,.05);
}

.admin-table{
    width:100%;
    border-collapse:collapse;
    min-width:900px;
}

.admin-table th,
.admin-table td{
    padding:18px 20px;
    text-align:left;
    border-bottom:1px solid rgba(0,0,0,.06);
    font-size:.95rem;
}

.admin-table th{
    font-weight:800;
    color:var(--burgundy);
    background:rgba(110,24,56,.04);
}

.admin-table tr:last-child td{
    border-bottom:none;
}

.admin-status{
    display:inline-flex;
    padding:7px 12px;
    border-radius:999px;
    font-size:.82rem;
    font-weight:800;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
}

.admin-status.success{
    background:rgba(43,134,93,.1);
    color:#2B865D;
}

.admin-status.warning{
    background:rgba(214,161,92,.16);
    color:#9A6426;
}

.admin-status.danger{
    background:rgba(190,62,62,.1);
    color:#BE3E3E;
}

@media(max-width:992px){

    .admin-stats-grid{
        grid-template-columns:1fr;
    }

    .admin-section-header{
        align-items:flex-start;
        flex-direction:column;
        gap:16px;
    }

}

@media(max-width:768px){

    .admin-page{
        padding-top:78px;
    }

    .admin-hero{
        padding-top:45px;
    }

    .admin-hero h1{
        font-size:3.2rem;
    }

}

/*==================================================
ADMIN STATUS CONTROLS
==================================================*/

.admin-status-select{
    width:100%;
    min-width:150px;
    border:1px solid rgba(0,0,0,.12);
    border-radius:999px;
    padding:8px 12px;
    font-family:var(--font-sans);
    font-weight:800;
    font-size:.82rem;
    outline:none;
    background:white;
    color:var(--burgundy);
}

.admin-status-select.success{
    background:rgba(43,134,93,.1);
    color:#2B865D;
}

.admin-status-select.warning{
    background:rgba(214,161,92,.16);
    color:#9A6426;
}

.admin-status-select.danger{
    background:rgba(190,62,62,.1);
    color:#BE3E3E;
}

.admin-save-btn{
    border:none;
    outline:none;
    border-radius:999px;
    padding:9px 16px;
    background:var(--burgundy);
    color:white;
    font-family:var(--font-sans);
    font-weight:800;
    cursor:pointer;
    transition:all .2s ease;
}

.admin-save-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 8px 20px rgba(110,24,56,.18);
}

.admin-save-btn:disabled{
    opacity:.65;
    cursor:not-allowed;
    transform:none;
    box-shadow:none;
}

/*==================================================
ADMIN NOTES FIELD
==================================================*/

.admin-notes-input{
    width:240px;
    min-height:72px;
    border:1px solid rgba(0,0,0,.12);
    border-radius:16px;
    padding:10px 12px;
    font-family:var(--font-sans);
    font-size:.86rem;
    line-height:1.45;
    resize:vertical;
    outline:none;
    background:#fff;
    color:var(--text);
}

.admin-notes-input:focus{
    border-color:var(--burgundy);
    box-shadow:0 0 0 4px rgba(110,24,56,.08);
}

.admin-table td{
    vertical-align:middle;
}

/*==================================================
ADMIN DETAILS MODAL
==================================================*/

.admin-action-group{
    display:flex;
    gap:8px;
    align-items:center;
}

.admin-view-btn{
    border:none;
    outline:none;
    border-radius:999px;
    padding:9px 16px;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
    font-family:var(--font-sans);
    font-weight:800;
    cursor:pointer;
    transition:all .2s ease;
}

.admin-view-btn:hover{
    background:rgba(110,24,56,.14);
    transform:translateY(-1px);
}

.admin-modal{
    position:fixed;
    inset:0;
    z-index:2000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px;
}

.admin-modal.hidden{
    display:none;
}

.admin-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(31,27,26,.42);
    backdrop-filter:blur(6px);
}

.admin-modal-card{
    position:relative;
    width:min(920px,100%);
    max-height:86vh;
    overflow:auto;
    background:var(--ivory);
    border-radius:34px;
    padding:34px;
    box-shadow:0 40px 120px rgba(0,0,0,.22);
    border:1px solid rgba(255,255,255,.65);
}

.admin-modal-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:28px;
}

.admin-modal-header h2{
    font-size:clamp(2rem,4vw,3.4rem);
    line-height:1;
    letter-spacing:-.045em;
    margin-top:14px;
}

.admin-modal-close{
    width:44px;
    height:44px;
    border:none;
    border-radius:50%;
    background:white;
    color:var(--burgundy);
    font-size:2rem;
    line-height:1;
    cursor:pointer;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
}

.admin-detail-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.admin-detail-row{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:18px;
    padding:16px 18px;
}

.admin-detail-row span{
    display:block;
    color:var(--text-light);
    font-size:.82rem;
    font-weight:800;
    margin-bottom:6px;
}

.admin-detail-row strong{
    display:block;
    color:var(--text);
    font-size:.98rem;
    line-height:1.45;
    word-break:break-word;
}

@media(max-width:768px){

    .admin-modal{
        padding:16px;
    }

    .admin-modal-card{
        padding:24px;
        border-radius:26px;
    }

    .admin-detail-grid{
        grid-template-columns:1fr;
    }

    .admin-action-group{
        flex-direction:column;
        align-items:flex-start;
    }

}

/*==================================================
ADMIN FILTER BAR
==================================================*/

.admin-filter-bar{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-top:34px;
    flex-wrap:wrap;
}

.admin-filter-btn{
    border:none;
    outline:none;
    border-radius:999px;
    padding:12px 20px;
    background:white;
    color:var(--burgundy);
    font-family:var(--font-sans);
    font-weight:800;
    cursor:pointer;
    border:1px solid rgba(110,24,56,.12);
    transition:all .2s ease;
}

.admin-filter-btn:hover{
    background:rgba(110,24,56,.08);
    transform:translateY(-1px);
}

.admin-filter-btn.active{
    background:var(--burgundy);
    color:white;
    box-shadow:0 12px 30px rgba(110,24,56,.18);
}

.admin-section.hidden-by-filter{
    display:none;
}

.admin-table tr.hidden-by-filter{
    display:none;
}

/*==================================================
ADMIN NAV LINK
==================================================*/

.admin-nav-link{
    color:var(--burgundy) !important;
    font-weight:800;
}

.admin-nav-link::after{
    content:"";
    display:block;
    width:0;
    height:2px;
    background:var(--gold);
    margin-top:4px;
    transition:width .2s ease;
}

.admin-nav-link:hover::after{
    width:100%;
}

.nav-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.nav-right{
    display:flex;
    align-items:center;
    gap:14px;
    flex-shrink:0;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:42px;
}

.admin-nav-link{
    white-space:nowrap;
}

/*==================================================
NAVBAR CONSISTENCY
==================================================*/

.nav-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:28px;
    flex-shrink:1;
}

.nav-right{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
}

.nav-links a,
.login-link{
    white-space:nowrap;
}

.user-indicator{
    white-space:nowrap;
}

.btn-nav,
.admin-nav-link,
.logout-btn{
    white-space:nowrap;
    min-width:auto;
}

/*==================================================
SITE FOOTER - SIMPLE CLEAN VERSION
==================================================*/

.site-footer{
    background:#fff;
    border-top:1px solid rgba(0,0,0,.06);
    padding:56px 0 24px;
    margin-top:80px;
}

.footer-inner-clean{
    display:grid;
    grid-template-columns:1.4fr .8fr .8fr;
    gap:80px;
    align-items:start;
}

.footer-brand{
    max-width:460px;
}

.footer-logo{
    display:flex;
    align-items:center;
    gap:14px;
    text-decoration:none;
    color:var(--burgundy);
    margin-bottom:18px;
}

.footer-logo img{
    width:56px;
    height:56px;
    object-fit:contain;
    flex-shrink:0;
}

.footer-logo strong{
    display:block;
    font-family:var(--font-serif);
    font-size:2rem;
    line-height:1;
    color:var(--burgundy);
}

.footer-logo span{
    display:block;
    font-size:.72rem;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:var(--gold);
    margin-top:5px;
}

.footer-brand p{
    line-height:1.75;
    color:var(--text-light);
    max-width:420px;
}

.footer-links{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.footer-links h4{
    font-family:var(--font-serif);
    font-size:1.25rem;
    color:var(--burgundy);
    margin-bottom:12px;
}

.footer-links a{
    text-decoration:none;
    color:var(--text-light);
    font-weight:600;
    line-height:1.5;
    transition:color .2s ease;
}

.footer-links a:hover{
    color:var(--burgundy);
}

.footer-bottom{
    margin-top:46px;
    padding-top:22px;
    border-top:1px solid rgba(0,0,0,.06);
    color:var(--text-light);
    font-size:.9rem;
}

/* Tablet */
@media(max-width:992px){

    .footer-inner-clean{
        grid-template-columns:1fr 1fr;
        gap:42px;
    }

    .footer-brand{
        grid-column:1 / -1;
    }

}

/* Mobile */
@media(max-width:768px){

    .site-footer{
        padding-top:42px;
        margin-top:60px;
    }

    .footer-inner-clean{
        grid-template-columns:1fr;
        gap:30px;
    }

}

/*==================================================
CONTACT PAGE
==================================================*/

.contact-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 88% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 82%, rgba(110,24,56,.06), transparent 28%),
        var(--ivory);
    padding-top:82px;
    padding-bottom:20px;
}

.contact-layout{
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    gap:64px;
    align-items:start;
    padding-top:70px;
}

.contact-intro{
    position:sticky;
    top:125px;
}

.contact-intro h1{
    font-size:clamp(3.2rem,5.5vw,5.4rem);
    line-height:.98;
    letter-spacing:-.06em;
    margin:24px 0;
    max-width:720px;
}

.contact-intro > p{
    font-size:1.08rem;
    line-height:1.85;
    max-width:620px;
}

.contact-info-grid{
    margin-top:34px;
    display:grid;
    gap:16px;
}

.contact-info-card{
    display:flex;
    gap:16px;
    align-items:flex-start;
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:24px;
    padding:20px;
    box-shadow:0 16px 45px rgba(0,0,0,.04);
}

.contact-info-card svg{
    width:28px;
    height:28px;
    color:var(--burgundy);
    flex-shrink:0;
}

.contact-info-card h3{
    font-size:1.25rem;
    margin-bottom:4px;
}

.contact-info-card p{
    color:var(--text-light);
    line-height:1.6;
}

.contact-form-card{
    background:white;
    border:1px solid rgba(0,0,0,.06);
    border-radius:34px;
    padding:42px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
}

.contact-form .form-grid{
    display:grid;
    gap:20px;
    margin-bottom:20px;
}

.contact-form .two-col{
    grid-template-columns:1fr 1fr;
}

.contact-form .form-group{
    margin-bottom:20px;
}

.contact-form label{
    display:block;
    font-weight:700;
    margin-bottom:9px;
    color:var(--text);
}

.contact-form input,
.contact-form select,
.contact-form textarea{
    width:100%;
    border:1px solid rgba(0,0,0,.12);
    border-radius:16px;
    padding:15px 16px;
    font-family:var(--font-sans);
    font-size:1rem;
    background:#fff;
    color:var(--text);
    outline:none;
    transition:all .2s ease;
}

.contact-form textarea{
    resize:vertical;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
    border-color:var(--burgundy);
    box-shadow:0 0 0 4px rgba(110,24,56,.08);
}

.contact-submit{
    width:100%;
    justify-content:center;
    margin-top:6px;
}

@media(max-width:992px){

    .contact-layout{
        grid-template-columns:1fr;
        padding-top:55px;
    }

    .contact-intro{
        position:relative;
        top:auto;
        text-align:center;
    }

    .contact-intro h1,
    .contact-intro > p{
        margin-left:auto;
        margin-right:auto;
    }

}

@media(max-width:768px){

    .contact-page{
        padding-top:78px;
    }

    .contact-layout{
        padding-top:40px;
        gap:36px;
    }

    .contact-intro h1{
        font-size:3.1rem;
    }

    .contact-form-card{
        padding:28px;
        border-radius:28px;
    }

    .contact-form .two-col{
        grid-template-columns:1fr;
    }

}

/*==================================================
DOCTOR DASHBOARD
==================================================*/

.doctor-dashboard-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 90% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 85%, rgba(110,24,56,.06), transparent 30%),
        var(--ivory);
    padding-top:82px;
}

.doctor-dashboard-hero{
    padding-top:72px;
    padding-bottom:36px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:40px;
}

.doctor-dashboard-hero h1{
    font-size:clamp(3.4rem,6vw,5.8rem);
    line-height:.96;
    letter-spacing:-.06em;
    margin:22px 0 18px;
}

.doctor-dashboard-hero p{
    max-width:720px;
    font-size:1.08rem;
    line-height:1.8;
    color:var(--text-light);
}

.doctor-dashboard-grid{
    display:grid;
    grid-template-columns:.9fr 1.4fr;
    gap:28px;
    align-items:start;
    padding-bottom:40px;
}

.doctor-status-card,
.doctor-dashboard-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:32px;
    box-shadow:0 24px 70px rgba(0,0,0,.07);
}

.doctor-status-card{
    padding:34px;
    display:flex;
    gap:20px;
    align-items:flex-start;
}

.status-icon-wrap{
    width:62px;
    height:62px;
    border-radius:22px;
    background:rgba(110,24,56,.08);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.status-icon-wrap svg{
    width:30px;
    height:30px;
    color:var(--burgundy);
}

.doctor-status-card h2,
.doctor-dashboard-card h2{
    margin-top:10px;
    font-size:2rem;
    color:var(--burgundy);
}

.doctor-status-card p,
.doctor-dashboard-card p{
    color:var(--text-light);
    line-height:1.7;
}

.doctor-dashboard-card{
    padding:34px;
}

.dashboard-card-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px;
}

.doctor-profile-details{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.doctor-detail-item{
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.05);
    border-radius:18px;
    padding:16px;
}

.doctor-detail-item span{
    display:block;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--gold);
    font-weight:800;
    margin-bottom:6px;
}

.doctor-detail-item strong{
    display:block;
    color:var(--text);
    line-height:1.5;
}

.doctor-next-card{
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}

.doctor-next-card p{
    max-width:720px;
}

@media(max-width:992px){

    .doctor-dashboard-hero{
        flex-direction:column;
        align-items:flex-start;
    }

    .doctor-dashboard-grid{
        grid-template-columns:1fr;
    }

    .doctor-next-card{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:768px){

    .doctor-dashboard-hero{
        padding-top:52px;
    }

    .doctor-profile-details{
        grid-template-columns:1fr;
    }

    .dashboard-card-header{
        flex-direction:column;
    }

}

/*==================================================
HOSPITAL DASHBOARD
==================================================*/

.hospital-dashboard-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 90% 12%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 85%, rgba(110,24,56,.06), transparent 30%),
        var(--ivory);
    padding-top:82px;
}

.hospital-dashboard-hero{
    padding-top:72px;
    padding-bottom:34px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:40px;
}

.hospital-dashboard-hero h1{
    font-size:clamp(3.3rem,6vw,5.8rem);
    line-height:.96;
    letter-spacing:-.06em;
    margin:22px 0 18px;
}

.hospital-dashboard-hero p{
    max-width:760px;
    font-size:1.08rem;
    line-height:1.8;
    color:var(--text-light);
}

.hospital-dashboard-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.hospital-quick-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
    margin-bottom:30px;
}

.hospital-quick-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    padding:28px;
    text-decoration:none;
    color:var(--text);
    box-shadow:0 18px 55px rgba(0,0,0,.06);
    transition:all .25s ease;
}

.hospital-quick-card:hover{
    transform:translateY(-4px);
    box-shadow:0 26px 70px rgba(0,0,0,.09);
}

.hospital-quick-card svg{
    width:34px;
    height:34px;
    color:var(--burgundy);
    margin-bottom:18px;
}

.hospital-quick-card h3{
    font-size:1.45rem;
    color:var(--burgundy);
    margin-bottom:10px;
}

.hospital-quick-card p{
    color:var(--text-light);
    line-height:1.7;
}

.hospital-dashboard-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px;
    align-items:start;
    padding-bottom:40px;
}

.hospital-dashboard-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:32px;
    padding:32px;
    box-shadow:0 24px 70px rgba(0,0,0,.07);
}

.dashboard-table-wrap{
    overflow-x:auto;
}

.dashboard-simple-table{
    width:100%;
    border-collapse:collapse;
    margin-top:18px;
    min-width:520px;
}

.dashboard-simple-table th{
    text-align:left;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:var(--gold);
    padding:14px 12px;
    border-bottom:1px solid rgba(0,0,0,.08);
}

.dashboard-simple-table td{
    padding:16px 12px;
    border-bottom:1px solid rgba(0,0,0,.06);
    color:var(--text);
    font-weight:600;
}

.dashboard-status-pill{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:7px 12px;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
    font-size:.82rem;
    font-weight:800;
}

@media(max-width:992px){

    .hospital-dashboard-hero{
        flex-direction:column;
        align-items:flex-start;
    }

    .hospital-dashboard-actions{
        justify-content:flex-start;
    }

    .hospital-quick-grid,
    .hospital-dashboard-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .hospital-dashboard-hero{
        padding-top:52px;
    }

    .hospital-dashboard-card{
        padding:24px;
    }

}

/*==================================================
SIMPLIFIED HOMEPAGE NAV
==================================================*/

.nav-links{
    gap:38px;
}

.small-menu{
    width:240px;
}

.small-menu a{
    display:block;
    padding:12px 18px;
    border-radius:16px;
    text-decoration:none;
    color:var(--text);
    font-weight:700;
    transition:all .2s ease;
}

/*==================================================
FIX HOMEPAGE DROPDOWN NAV BUTTON STYLE
==================================================*/

.nav-dropdown-toggle{
    appearance:none;
    -webkit-appearance:none;
    border:0 !important;
    outline:none !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:10px 0 !important;
    margin:0;
    font-family:var(--font-sans);
    font-size:1rem;
    font-weight:600;
    color:var(--text);
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:6px;
    line-height:1;
}

.nav-dropdown-toggle:hover{
    color:var(--burgundy);
}

.nav-dropdown-toggle span{
    font-size:.75rem;
    color:var(--gold);
    line-height:1;
}

.nav-item{
    position:relative;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:46px;
}

.small-menu{
    width:240px;
    position:absolute;
    top:100%;
    left:50%;
    transform:translateX(-50%) translateY(12px);
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(22px);
    border:1px solid rgba(0,0,0,.06);
    border-radius:22px;
    box-shadow:0 24px 70px rgba(0,0,0,.12);
    padding:10px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:all .22s ease;
    z-index:9999;
}

.has-dropdown:hover .small-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0);
}

.small-menu a{
    display:block;
    text-decoration:none;
    color:var(--text);
    font-weight:600;
    padding:13px 14px;
    border-radius:14px;
    transition:all .2s ease;
}

.small-menu a:hover{
    background:var(--ivory);
    color:var(--burgundy);
}

/*==================================================
PREMIUM NAV TEXT UNDERLINE
==================================================*/

.nav-dropdown-toggle{
    position:relative;
    appearance:none;
    -webkit-appearance:none;
    border:0 !important;
    outline:none !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:10px 0 12px !important;
    margin:0;
    font-family:var(--font-sans);
    font-size:1rem;
    font-weight:700;
    color:var(--text);
    cursor:pointer;
    letter-spacing:-.02em;
    line-height:1;
    transition:color .22s ease;
}

.nav-dropdown-toggle::after{
    content:"";
    position:absolute;
    left:0;
    bottom:4px;
    width:100%;
    height:2px;
    border-radius:999px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.95) 0%,
        rgba(214,161,92,.75) 55%,
        rgba(214,161,92,0) 100%
    );
    transform:scaleX(0);
    transform-origin:left center;
    opacity:0;
    transition:
        transform .28s ease,
        opacity .28s ease;
}

.nav-dropdown-toggle:hover{
    color:var(--burgundy);
}

.has-dropdown:hover .nav-dropdown-toggle::after,
.nav-dropdown-toggle:hover::after{
    transform:scaleX(1);
    opacity:1;
}

/* Remove old arrow styling completely */
.nav-dropdown-toggle span{
    display:none !important;
}

/* Cleaner navbar spacing */
.nav-links{
    display:flex;
    align-items:center;
    gap:48px;
}

.nav-item{
    position:relative;
}

/*==================================================
DROPDOWN POSITION POLISH
==================================================*/

.small-menu{
    top:calc(100% + 10px);
}

/*==================================================
RICH NAV DROPDOWN CONTENT
==================================================*/

.content-menu{
    width:440px;
    padding:22px;
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
}

.menu-intro{
    padding:18px 18px 16px;
    border-radius:20px;
    background:
        radial-gradient(circle at top right, rgba(214,161,92,.18), transparent 38%),
        var(--ivory);
    border:1px solid rgba(0,0,0,.04);
}

.menu-intro span{
    display:inline-flex;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    font-weight:800;
    color:var(--gold);
    margin-bottom:10px;
}

.menu-intro h4{
    font-family:var(--font-serif);
    font-size:1.35rem;
    line-height:1.2;
    color:var(--burgundy);
    margin-bottom:8px;
}

.menu-intro p{
    font-size:.9rem;
    line-height:1.65;
    color:var(--text-light);
}

.menu-link-list{
    display:grid;
    gap:8px;
}

.menu-link-list a{
    display:block;
    text-decoration:none;
    padding:15px 16px;
    border-radius:18px;
    color:var(--text);
    transition:all .22s ease;
}

.menu-link-list a:hover{
    background:var(--ivory);
    transform:translateX(3px);
}

.menu-link-list strong{
    display:block;
    color:var(--burgundy);
    font-size:.98rem;
    margin-bottom:4px;
}

.menu-link-list small{
    display:block;
    color:var(--text-light);
    font-size:.82rem;
    line-height:1.45;
}

/* Company dropdown should align better to right */
.company-menu{
    right:0;
    left:auto;
    transform:translateY(12px);
}

.nav-item:hover .company-menu{
    transform:translateY(0);
}

/* Make dropdown feel premium */
.content-menu{
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(24px);
    border:1px solid rgba(0,0,0,.06);
    border-radius:28px;
    box-shadow:0 32px 90px rgba(0,0,0,.13);
}

/* Responsive safety */
@media(max-width:1100px){

    .content-menu{
        width:360px;
    }

    .menu-intro h4{
        font-size:1.2rem;
    }

}

/*==================================================
COMPACT PREMIUM NAV DROPDOWNS
==================================================*/

.content-menu,
.menu-intro,
.menu-link-list{
    all:unset;
}

.compact-menu{
    width:255px !important;
    position:absolute;
    top:calc(100% + 12px);
    left:50%;
    transform:translateX(-50%) translateY(10px);
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(22px);
    border:1px solid rgba(0,0,0,.06);
    border-radius:22px;
    box-shadow:0 24px 70px rgba(0,0,0,.12);
    padding:10px;
    display:flex;
    flex-direction:column;
    gap:4px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:all .22s ease;
    z-index:9999;
}

.has-dropdown:hover .compact-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0);
}

.compact-menu-right{
    left:auto !important;
    right:0;
    transform:translateY(10px);
}

.has-dropdown:hover .compact-menu-right{
    transform:translateY(0);
}

.compact-menu a{
    display:block;
    text-decoration:none;
    padding:13px 14px;
    border-radius:15px;
    transition:all .2s ease;
}

.compact-menu a:hover{
    background:var(--ivory);
    transform:translateX(3px);
}

.compact-menu span{
    display:block;
    color:var(--text);
    font-size:.95rem;
    font-weight:800;
    margin-bottom:3px;
}

.compact-menu small{
    display:block;
    color:var(--text-light);
    font-size:.78rem;
    line-height:1.35;
}

.compact-menu a:hover span{
    color:var(--burgundy);
}

/* Softer active/hover nav color */
.nav-dropdown-toggle{
    color:var(--text) !important;
}

.nav-dropdown-toggle:hover,
.has-dropdown:hover .nav-dropdown-toggle{
    color:var(--text) !important;
}

.nav-dropdown-toggle::after{
    height:2px;
    bottom:4px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.75) 0%,
        rgba(214,161,92,.55) 60%,
        rgba(214,161,92,0) 100%
    );
}

/*==================================================
STORY ABOUT PAGE
==================================================*/

.story-about-page{
    background:
        radial-gradient(circle at 88% 10%, rgba(214,161,92,.12), transparent 30%),
        radial-gradient(circle at 8% 86%, rgba(110,24,56,.06), transparent 30%),
        var(--ivory);
}

.story-hero{
    padding-top:76px;
    padding-bottom:54px;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:58px;
    align-items:center;
}

.story-hero h1{
    font-size:clamp(3.3rem,6vw,5.9rem);
    line-height:.96;
    letter-spacing:-.06em;
    margin:24px 0 22px;
}

.story-hero p{
    font-size:1.08rem;
    line-height:1.85;
    color:var(--text-light);
    max-width:760px;
}

.story-emphasis{
    margin-top:22px;
    padding:22px 24px;
    border-left:4px solid var(--gold);
    background:rgba(255,255,255,.75);
    border-radius:0 22px 22px 0;
}

.story-emphasis strong{
    color:var(--burgundy);
    font-weight:900;
}

.story-origin-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:34px;
    padding:28px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
    display:grid;
    gap:16px;
}

.origin-region{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:22px;
    border-radius:24px;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.04);
}

.origin-region span{
    width:42px;
    height:42px;
    border-radius:50%;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
}

.origin-region strong{
    font-family:var(--font-serif);
    color:var(--burgundy);
    font-size:1.5rem;
}

.story-roadmap-section,
.working-section,
.story-closing{
    margin-top:30px;
}

.story-section-heading{
    max-width:820px;
    margin-bottom:28px;
}

.story-section-heading h2{
    font-size:clamp(2.4rem,4vw,4rem);
    line-height:1.02;
    letter-spacing:-.04em;
    color:var(--burgundy);
    margin-top:12px;
}

.story-roadmap{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    margin-bottom:22px;
}

.story-step{
    border:1px solid rgba(0,0,0,.06);
    background:#fff;
    border-radius:22px;
    padding:18px 14px;
    cursor:pointer;
    text-align:left;
    box-shadow:0 14px 36px rgba(0,0,0,.04);
    transition:all .22s ease;
}

.story-step span{
    width:34px;
    height:34px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(214,161,92,.16);
    color:var(--burgundy);
    font-weight:900;
    margin-bottom:12px;
}

.story-step strong{
    color:var(--text);
    font-size:.95rem;
    line-height:1.25;
}

.story-step:hover,
.story-step.active{
    transform:translateY(-4px);
    border-color:rgba(214,161,92,.45);
    box-shadow:0 22px 58px rgba(0,0,0,.08);
}

.story-reveal-panel,
.working-reveal{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:34px;
    padding:38px;
    box-shadow:0 24px 70px rgba(0,0,0,.07);
    min-height:250px;
}

.story-content,
.work-content{
    display:none;
}

.story-content.active,
.work-content.active{
    display:block;
    animation:storyFade .25s ease;
}

@keyframes storyFade{
    from{
        opacity:0;
        transform:translateY(8px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* Doctor urgent-duty alert */
.doctor-opportunity-tools{
    min-width:290px;
}

.doctor-urgent-duty-cta{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    align-items:center;
    gap:11px;
    width:100%;
    min-height:72px;
    padding:12px 14px;
    border:1px solid rgba(110,24,56,.14);
    border-radius:17px;
    background:linear-gradient(135deg,#741d3e,#541028);
    color:#fff;
    text-decoration:none;
    box-shadow:0 13px 30px rgba(87,18,43,.18);
    transition:transform .2s ease,box-shadow .2s ease;
}

.doctor-urgent-duty-cta:hover{
    transform:translateY(-2px);
    box-shadow:0 17px 38px rgba(87,18,43,.25);
}

.doctor-urgent-duty-icon{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border-radius:13px;
    background:rgba(255,255,255,.14);
}

.doctor-urgent-duty-icon svg{width:21px;height:21px;}
.doctor-urgent-duty-copy small,.doctor-urgent-duty-copy strong{display:block;}
.doctor-urgent-duty-copy small{color:rgba(255,255,255,.68);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.doctor-urgent-duty-copy strong{margin-top:3px;color:#fff;font-size:.76rem;}
.doctor-urgent-duty-count{display:grid;place-items:center;min-width:29px;height:29px;padding:0 8px;border-radius:999px;background:#fff;color:#6e1838;font-size:.72rem;font-weight:900;}
.doctor-urgent-duty-arrow{width:17px;height:17px;opacity:.72;}

.doctor-urgent-duty-cta.has-urgent-match{
    border-color:#e2ae54;
    background:linear-gradient(135deg,#8d244b,#651534);
    animation:doctorUrgentFlash 1.6s ease-in-out infinite;
}

@keyframes doctorUrgentFlash{
    0%,100%{box-shadow:0 0 0 0 rgba(212,159,78,.12),0 13px 30px rgba(87,18,43,.18);}
    50%{box-shadow:0 0 0 7px rgba(212,159,78,.22),0 17px 42px rgba(107,23,53,.32);}
}

@media(prefers-reduced-motion:reduce){
    .doctor-urgent-duty-cta.has-urgent-match{animation:none;outline:3px solid rgba(212,159,78,.35);}
}

/* Admin urgent exchange and hospital verification */
.admin-stats-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.admin-stat-urgent{
    border-color:rgba(132,30,68,.18)!important;
    background:linear-gradient(135deg,#fff,#faeef2)!important;
}

.admin-stat-urgent>i{color:#8b2148;}
.admin-stat-hospitals>i{color:#a87439;}
.admin-browser-tab[data-admin-tab="urgent-duties"] .admin-tab-count{background:#f4e2e8;color:#8a2147;}
.admin-browser-tab[data-admin-tab="hospital-profiles"] .admin-tab-count{background:#eee8dc;color:#8c6737;}
.admin-browser-tab.has-alerts{color:#8b2148;animation:adminUrgentTabPulse 1.8s ease-in-out infinite;}

@keyframes adminUrgentTabPulse{
    0%,100%{box-shadow:none;}
    50%{box-shadow:0 -5px 20px rgba(139,33,72,.2);background:#fff5f8;}
}

.admin-section-header>div>p{
    margin:5px 0 0;
    color:#87797e;
    font-size:.72rem;
}

.admin-workspace-filter{
    padding:9px 13px;
    border:1px solid #e5dcd8;
    border-radius:999px;
    background:#fff;
    color:#75676c;
    font-size:.66rem;
    font-weight:800;
}

.admin-workspace-filter.active{
    border-color:#6e1838;
    background:#6e1838;
    color:#fff;
}

.admin-hospital-review-table td>strong,
.admin-hospital-review-table td>small{display:block;}
.admin-hospital-review-table td>small{margin-top:4px;color:#95878c;font-size:.58rem;}
.admin-hospital-status,.admin-urgent-status{min-width:125px;padding:9px 10px;border:1px solid #ddd2ce;border-radius:10px;background:#fff;text-transform:capitalize;}
.admin-hospital-notes{min-width:190px;min-height:70px;padding:9px;border:1px solid #ddd2ce;border-radius:10px;resize:vertical;}
.admin-view-hospital,.admin-save-hospital,.admin-save-urgent,.admin-ack-urgent{
    min-height:34px;
    padding:7px 10px;
    border:1px solid #6e1838;
    border-radius:9px;
    background:#fff;
    color:#6e1838;
    font-size:.62rem;
    font-weight:850;
}
.admin-save-hospital,.admin-save-urgent{background:#6e1838;color:#fff;}
.admin-hospital-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;}
.admin-hospital-document-grid .admin-document-link,.admin-document-missing{display:flex;align-items:center;gap:6px;padding:11px;border:1px solid #e5dcda;border-radius:10px;font-size:.65rem;}
.admin-hospital-document-grid svg{width:15px;height:15px;}

.admin-urgent-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;}
.admin-urgent-section-heading .btn{display:inline-flex;align-items:center;gap:6px;}
.admin-urgent-section-heading svg{width:16px;height:16px;}
.admin-urgent-exchange-list{display:grid;gap:14px;}
.admin-urgent-loading{padding:30px;border:1px dashed #ded3cf;border-radius:18px;text-align:center;color:#877a7f;}
.admin-urgent-exchange-card{padding:20px;border:1px solid #e7ddda;border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(62,39,47,.05);}
.admin-urgent-exchange-card.unread{border-color:#76203f;background:linear-gradient(135deg,#fff,#fff6f9);box-shadow:inset 5px 0 #76203f,0 15px 34px rgba(96,22,49,.1);}
.admin-urgent-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;}
.admin-urgent-card-head>div:first-child>span{color:#ad7540;font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;}
.admin-urgent-card-head h3{margin:5px 0 3px;color:#6e1838;font-family:"Playfair Display",serif;font-size:1.25rem;}
.admin-urgent-card-head p{margin:0;color:#7e7075;font-size:.67rem;}
.admin-urgent-card-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:7px;}
.admin-ack-urgent{border-color:#b67b36;background:#fff8ec;color:#8b5c27;}
.admin-urgent-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:16px 0;}
.admin-urgent-metrics>div{padding:11px;border-radius:11px;background:#faf7f5;}
.admin-urgent-metrics span,.admin-urgent-metrics strong{display:block;}
.admin-urgent-metrics span{color:#998b8f;font-size:.53rem;text-transform:uppercase;letter-spacing:.05em;}
.admin-urgent-metrics strong{margin-top:4px;color:#4d3b41;font-size:.66rem;line-height:1.4;}
.admin-urgent-interest-details{border-top:1px solid #eee6e3;padding-top:12px;}
.admin-urgent-interest-details summary{color:#6e1838;font-size:.66rem;font-weight:850;cursor:pointer;}
.admin-urgent-contact{display:flex;flex-wrap:wrap;gap:10px;margin:11px 0;padding:10px;border-radius:10px;background:#f8f5f3;font-size:.64rem;}
.admin-urgent-contact a{color:#6e1838;text-decoration:none;}
.admin-urgent-doctors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
.admin-urgent-doctor{padding:11px;border:1px solid #e7ddda;border-radius:11px;background:#fff;}
.admin-urgent-doctor.unread{border-color:#c89957;background:#fffaf0;}
.admin-urgent-doctor strong,.admin-urgent-doctor span,.admin-urgent-doctor small{display:block;}
.admin-urgent-doctor span,.admin-urgent-doctor small{color:#8c7e83;font-size:.58rem;}
.admin-urgent-doctor p{margin:6px 0;color:#66575d;font-size:.63rem;}
.admin-generate-urgent-otp{display:inline-flex;align-items:center;gap:5px;margin-top:9px;padding:8px 10px;border:1px solid #6e1838;border-radius:9px;background:#6e1838;color:#fff;font-size:.59rem;font-weight:850;cursor:pointer;}
.admin-generate-urgent-otp:disabled{cursor:wait;opacity:.65;}
.admin-generate-urgent-otp svg{width:14px;height:14px;}
.admin-otp-warning{display:flex;align-items:flex-start;gap:9px;padding:12px;border-radius:12px;background:#fff6e8;color:#765124;}
.admin-otp-warning svg{flex:0 0 auto;width:19px;height:19px;}
.admin-otp-warning p{margin:0;font-size:.67rem;line-height:1.55;}
.admin-otp-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px;}
.admin-otp-result-grid>div{padding:16px;border:1px solid #e4d8d5;border-radius:14px;background:#faf7f6;}
.admin-otp-result-grid span,.admin-otp-result-grid strong{display:block;}
.admin-otp-result-grid span{color:#8f8085;font-size:.58rem;text-transform:uppercase;letter-spacing:.07em;}
.admin-otp-result-grid strong{margin:7px 0;color:#6e1838;font-size:1.45rem;letter-spacing:.16em;}
.admin-otp-result-grid button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:#6e1838;font-size:.62rem;font-weight:850;cursor:pointer;}
.admin-otp-result-grid button svg{width:14px;height:14px;}
.admin-otp-audit-note{margin:12px 0 0;color:#82747a;font-size:.62rem;}

@media(max-width:1000px){
    .admin-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .admin-urgent-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:720px){
    .doctor-opportunity-tools{min-width:0;width:100%;}
    .doctor-urgent-duty-cta{min-height:66px;}
    .admin-stat-grid,.admin-stats-grid{grid-template-columns:1fr;}
    .admin-urgent-section-heading,.admin-urgent-card-head{align-items:stretch;flex-direction:column;}
    .admin-urgent-card-actions{justify-content:flex-start;}
    .admin-urgent-metrics,.admin-urgent-doctors,.admin-hospital-document-grid{grid-template-columns:1fr;}
    .admin-otp-result-grid{grid-template-columns:1fr;}
}

.story-kicker{
    display:inline-flex;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:12px;
}

.story-content h3,
.work-content h3{
    color:var(--burgundy);
    font-size:2.2rem;
    line-height:1.1;
    margin-bottom:16px;
}

.story-content p,
.work-content p{
    color:var(--text-light);
    font-size:1.05rem;
    line-height:1.85;
    max-width:900px;
}

.working-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:22px;
}

.working-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:24px;
    padding:22px;
    text-align:left;
    cursor:pointer;
    box-shadow:0 16px 44px rgba(0,0,0,.05);
    transition:all .22s ease;
}

.working-card svg{
    width:30px;
    height:30px;
    color:var(--burgundy);
    margin-bottom:16px;
}

.working-card span{
    display:block;
    color:var(--text);
    font-weight:800;
    line-height:1.35;
}

.working-card:hover,
.working-card.active{
    transform:translateY(-4px);
    border-color:rgba(214,161,92,.45);
    box-shadow:0 22px 58px rgba(0,0,0,.08);
}

.story-closing{
    background:linear-gradient(135deg, #fff, var(--ivory));
    border:1px solid rgba(0,0,0,.06);
    border-radius:38px;
    padding:46px;
    box-shadow:0 24px 70px rgba(0,0,0,.06);
    margin-bottom:20px;
}

.story-closing h2{
    font-size:clamp(2.4rem,4vw,4.2rem);
    line-height:1.04;
    letter-spacing:-.05em;
    color:var(--burgundy);
    max-width:980px;
    margin:14px 0 18px;
}

.story-closing p{
    max-width:820px;
    color:var(--text-light);
    font-size:1.05rem;
    line-height:1.85;
}

.story-closing-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:30px;
}

@media(max-width:1100px){

    .story-roadmap{
        grid-template-columns:repeat(3,1fr);
    }

    .working-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:992px){

    .story-hero{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .story-hero{
        padding-top:54px;
    }

    .story-roadmap,
    .working-grid{
        grid-template-columns:1fr;
    }

    .story-reveal-panel,
    .working-reveal,
    .story-closing{
        padding:28px;
        border-radius:28px;
    }

    .story-content h3,
    .work-content h3{
        font-size:1.8rem;
    }

}

/*==================================================
ABOUT ROADMAP REFINEMENT
==================================================*/

/* Reduce large gaps between sections */
.story-hero{
    padding-bottom:32px !important;
}

.story-roadmap-section,
.working-section,
.story-closing{
    margin-top:18px !important;
}

.story-section-heading{
    margin-bottom:18px !important;
}

.story-section-heading h2{
    font-size:clamp(2.1rem,3.4vw,3.4rem) !important;
}

/* Connected roadmap layout */
.story-roadmap-connected{
    display:grid;
    grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr;
    gap:0;
    align-items:center;
    margin-bottom:18px;
}

/* Slimmer roadmap steps */
.story-roadmap-connected .story-step{
    min-height:92px;
    padding:16px 14px;
    border-radius:18px;
    box-shadow:none;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(0,0,0,.06);
}

.story-roadmap-connected .story-step span{
    width:30px;
    height:30px;
    font-size:.82rem;
    margin-bottom:10px;
}

.story-roadmap-connected .story-step strong{
    font-size:.86rem;
}

/* Active step refinement */
.story-roadmap-connected .story-step.active{
    background:#fff;
    border-color:rgba(214,161,92,.65);
    box-shadow:0 16px 44px rgba(0,0,0,.07);
}

/* Arrow between roadmap items */
.roadmap-arrow{
    position:relative;
    height:2px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.22),
        rgba(214,161,92,.18)
    );
}

.roadmap-arrow::after{
    content:"";
    position:absolute;
    right:-1px;
    top:50%;
    width:8px;
    height:8px;
    border-top:2px solid rgba(110,24,56,.28);
    border-right:2px solid rgba(110,24,56,.28);
    transform:translateY(-50%) rotate(45deg);
}

/* Color the arrow after the active step */
.story-step.active + .roadmap-arrow{
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.9),
        rgba(214,161,92,.7)
    );
}

.story-step.active + .roadmap-arrow::after{
    border-color:rgba(110,24,56,.85);
}

/* Reveal panel less bulky */
.story-reveal-panel,
.working-reveal{
    padding:30px 34px !important;
    border-radius:28px !important;
    min-height:210px !important;
}

.story-content h3,
.work-content h3{
    font-size:1.95rem !important;
}

.story-content p,
.work-content p{
    font-size:1rem !important;
    line-height:1.75 !important;
}

/* Working cards: less bubble-heavy */
.working-grid{
    gap:12px !important;
    margin-bottom:18px !important;
}

.working-card{
    padding:18px !important;
    border-radius:18px !important;
    box-shadow:none !important;
    background:rgba(255,255,255,.78);
}

.working-card svg{
    width:26px !important;
    height:26px !important;
    margin-bottom:12px !important;
}

.working-card.active{
    background:#fff;
    border-color:rgba(214,161,92,.65);
    box-shadow:0 16px 44px rgba(0,0,0,.07) !important;
}

/* Closing section less massive */
.story-closing{
    padding:36px !important;
    border-radius:30px !important;
}

.story-closing h2{
    font-size:clamp(2.1rem,3.4vw,3.5rem) !important;
}

/* Completed roadmap arrows */
.roadmap-arrow.completed{
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.9),
        rgba(214,161,92,.75)
    );
}

.roadmap-arrow.completed::after{
    border-color:rgba(110,24,56,.85);
}

/*==================================================
TREASURE MAP ABOUT ROADMAP
==================================================*/

.story-treasure-map{
    position:relative;
    display:grid;
    grid-template-columns:1fr 42px 1fr 42px 1fr 42px 1fr 42px 1fr 42px 1fr;
    align-items:center;
    gap:0;
    margin:22px 0 24px;
    padding:22px;
    border-radius:34px;
    background:
        radial-gradient(circle at 12% 18%, rgba(214,161,92,.16), transparent 22%),
        radial-gradient(circle at 84% 70%, rgba(110,24,56,.07), transparent 24%),
        linear-gradient(135deg, rgba(255,250,240,.92), rgba(255,255,255,.82));
    border:1px solid rgba(214,161,92,.24);
    box-shadow:0 24px 70px rgba(0,0,0,.06);
}

/* faint map trail */
.story-treasure-map::before{
    content:"";
    position:absolute;
    left:32px;
    right:32px;
    top:50%;
    height:1px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,0),
        rgba(110,24,56,.18),
        rgba(214,161,92,.22),
        rgba(110,24,56,.18),
        rgba(110,24,56,0)
    );
    z-index:0;
}

.story-treasure-map .story-step,
.story-treasure-map .map-arrow{
    position:relative;
    z-index:1;
}

.story-treasure-map .story-step{
    min-height:116px;
    padding:18px 14px;
    border-radius:24px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(214,161,92,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
    text-align:left;
    cursor:pointer;
    transition:all .25s ease;
}

.story-treasure-map .story-step:hover,
.story-treasure-map .story-step.active{
    background:#fff;
    border-color:rgba(214,161,92,.72);
    box-shadow:0 18px 48px rgba(110,24,56,.08);
    transform:translateY(-3px);
}

.story-treasure-map .story-step span{
    display:inline-flex;
    width:auto;
    height:auto;
    background:transparent;
    color:var(--gold);
    font-family:var(--font-serif);
    font-size:.95rem;
    font-weight:800;
    letter-spacing:.08em;
    margin-bottom:10px;
}

.story-treasure-map .story-step strong{
    display:block;
    font-family:var(--font-serif);
    font-size:1.18rem;
    line-height:1.12;
    color:#4B2C22;
    letter-spacing:-.02em;
    margin-bottom:7px;
}

.story-treasure-map .story-step small{
    display:block;
    color:var(--text-light);
    font-size:.74rem;
    line-height:1.35;
    font-weight:700;
}

/* Regal active marker */
.story-treasure-map .story-step.active strong{
    color:var(--burgundy);
}

.story-treasure-map .story-step.active::after{
    content:"";
    position:absolute;
    left:16px;
    right:16px;
    bottom:12px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.85),
        rgba(214,161,92,.65),
        rgba(214,161,92,0)
    );
}

/* Arrow body */
.map-arrow{
    height:2px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.35),
        rgba(214,161,92,.32)
    );
    cursor:help;
    transition:all .25s ease;
}

.map-arrow::after{
    content:"";
    position:absolute;
    right:-2px;
    top:50%;
    width:9px;
    height:9px;
    border-top:2px solid rgba(110,24,56,.42);
    border-right:2px solid rgba(110,24,56,.42);
    transform:translateY(-50%) rotate(45deg);
    transition:all .25s ease;
}

/* Hover glow on arrow */
.map-arrow:hover,
.map-arrow.completed{
    height:3px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.95),
        rgba(214,161,92,.8)
    );
}

.map-arrow:hover::after,
.map-arrow.completed::after{
    border-color:rgba(110,24,56,.9);
}

/* Tooltip fun fact */
.map-arrow::before{
    content:attr(data-fact);
    position:absolute;
    left:50%;
    bottom:20px;
    width:280px;
    transform:translateX(-50%) translateY(8px);
    background:#fff;
    color:#4B2C22;
    border:1px solid rgba(214,161,92,.35);
    box-shadow:0 18px 50px rgba(0,0,0,.12);
    border-radius:18px;
    padding:14px 16px;
    font-size:.82rem;
    line-height:1.55;
    font-weight:600;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:all .22s ease;
    z-index:20;
}

.map-arrow:hover::before{
    opacity:1;
    visibility:visible;
    transform:translateX(-50%) translateY(0);
}

/* Reveal panel: more regal, less bubbly */
.story-reveal-panel{
    margin-top:18px;
    border-radius:30px !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,250,240,.88)) !important;
    border:1px solid rgba(214,161,92,.22) !important;
    box-shadow:0 22px 65px rgba(0,0,0,.06) !important;
}

.story-kicker{
    color:var(--gold) !important;
    letter-spacing:.18em !important;
}

.story-content h3{
    font-family:var(--font-serif);
    color:#5A2437 !important;
    letter-spacing:-.025em;
}

.story-content p{
    max-width:920px;
    color:#5E5552 !important;
}

/* Reduce excessive white gaps further */
.story-roadmap-section{
    margin-top:10px !important;
}

.story-section-heading{
    margin-bottom:10px !important;
}

.story-section-heading h2{
    max-width:980px;
}

/*==================================================
ABOUT PAGE - VERTICAL WORKFLOW REFINEMENT
==================================================*/

.working-flow-section{
    margin-top:28px !important;
}

.flow-heading{
    margin-bottom:22px !important;
}

.working-flow-layout{
    display:grid;
    grid-template-columns:360px 1fr;
    gap:34px;
    align-items:stretch;
}

.working-flow-map{
    position:relative;
    display:flex;
    flex-direction:column;
    gap:0;
    padding:10px 0;
}

/* Vertical golden route line */
.working-flow-map::before{
    content:"";
    position:absolute;
    left:34px;
    top:38px;
    bottom:38px;
    width:2px;
    background:linear-gradient(
        180deg,
        rgba(110,24,56,.85),
        rgba(214,161,92,.55),
        rgba(214,161,92,0)
    );
    border-radius:999px;
}

.flow-step{
    position:relative;
    display:grid;
    grid-template-columns:68px 1fr;
    align-items:center;
    gap:14px;
    min-height:96px;
    border:none;
    background:transparent;
    text-align:left;
    cursor:pointer;
    padding:10px 0;
    font-family:var(--font-sans);
}

.flow-step span{
    position:relative;
    z-index:2;
    width:68px;
    height:68px;
    border-radius:50%;
    background:#fff;
    border:1px solid rgba(214,161,92,.35);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--gold);
    font-family:var(--font-serif);
    font-size:1.05rem;
    font-weight:900;
    box-shadow:0 12px 32px rgba(0,0,0,.06);
    transition:all .25s ease;
}

.flow-step strong{
    color:#4B2C22;
    font-family:var(--font-serif);
    font-size:1.28rem;
    line-height:1.15;
    transition:all .25s ease;
}

.flow-step:hover span,
.flow-step.active span{
    background:var(--burgundy);
    border-color:var(--burgundy);
    color:#fff;
    transform:scale(1.04);
}

.flow-step:hover strong,
.flow-step.active strong{
    color:var(--burgundy);
    transform:translateX(4px);
}

.working-flow-panel{
    position:relative;
    min-height:360px;
    padding:48px;
    border-radius:34px;
    background:
        radial-gradient(circle at 92% 14%, rgba(214,161,92,.16), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,250,240,.88));
    border:1px solid rgba(214,161,92,.24);
    box-shadow:0 24px 70px rgba(0,0,0,.07);
    display:flex;
    align-items:center;
}

.working-flow-panel::after{
    content:"";
    position:absolute;
    right:34px;
    bottom:28px;
    width:180px;
    height:180px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(214,161,92,.14), transparent 65%);
    pointer-events:none;
}

.working-flow-panel .work-content{
    position:relative;
    z-index:2;
}

.working-flow-panel .work-content h3{
    font-family:var(--font-serif);
    font-size:clamp(2rem,3vw,3.2rem) !important;
    line-height:1.05;
    color:var(--burgundy) !important;
    margin-bottom:18px;
    max-width:820px;
}

.working-flow-panel .work-content p{
    font-size:1.05rem !important;
    line-height:1.85 !important;
    color:#5E5552 !important;
    max-width:820px;
}

@media(max-width:992px){

    .working-flow-layout{
        grid-template-columns:1fr;
    }

    .working-flow-map{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:14px;
    }

    .working-flow-map::before{
        display:none;
    }

    .flow-step{
        grid-template-columns:52px 1fr;
        background:#fff;
        border:1px solid rgba(0,0,0,.06);
        border-radius:20px;
        padding:14px;
    }

    .flow-step span{
        width:52px;
        height:52px;
    }

}

@media(max-width:768px){

    .working-flow-map{
        grid-template-columns:1fr;
    }

    .working-flow-panel{
        padding:30px;
        border-radius:28px;
        min-height:280px;
    }

}

/*==================================================
ABOUT CLOSING SECTION - BACKDROP STYLE
==================================================*/

.story-closing{
    position:relative;
    overflow:hidden;
    margin-top:32px !important;
    margin-bottom:0 !important;
    padding:70px 54px !important;
    border-radius:0 !important;
    border:none !important;
    box-shadow:none !important;
    background:
        radial-gradient(circle at 85% 45%, rgba(214,161,92,.16), transparent 30%),
        radial-gradient(circle at 18% 20%, rgba(110,24,56,.06), transparent 26%),
        linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,250,240,.86)) !important;
}

.story-closing::before{
    content:"";
    position:absolute;
    inset:24px;
    border:1px solid rgba(214,161,92,.22);
    border-radius:34px;
    pointer-events:none;
}

.story-closing::after{
    content:"";
    position:absolute;
    right:8%;
    bottom:-70px;
    width:320px;
    height:320px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(214,161,92,.16), transparent 68%);
    pointer-events:none;
}

.story-closing > *{
    position:relative;
    z-index:2;
}

.story-closing h2{
    max-width:980px;
    font-family:var(--font-serif);
    font-size:clamp(2.6rem,4.6vw,5rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em;
    color:var(--burgundy);
}

.story-closing p{
    max-width:760px;
    font-size:1.08rem;
    line-height:1.85;
    color:#5E5552;
}

.story-closing-actions{
    margin-top:34px;
}

/*==================================================
ABOUT PAGE - INDIA ORIGIN MAP
==================================================*/

.india-origin-map{
    position:relative;
    background:
        radial-gradient(circle at 70% 18%, rgba(214,161,92,.18), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,250,240,.9));
    border:1px solid rgba(214,161,92,.24);
    border-radius:36px;
    padding:30px;
    box-shadow:0 28px 80px rgba(0,0,0,.08);
    min-height:520px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.india-map-visual{
    position:relative;
    width:100%;
    max-width:430px;
    margin:0 auto;
}

.india-map-svg{
    width:100%;
    height:auto;
    display:block;
    filter:drop-shadow(0 20px 34px rgba(0,0,0,.08));
}

.india-base{
    fill:rgba(255,255,255,.82);
    stroke:rgba(110,24,56,.28);
    stroke-width:3;
}

.map-point{
    stroke:#fff;
    stroke-width:4;
    filter:drop-shadow(0 8px 16px rgba(0,0,0,.16));
}

.point-uttarakhand{
    fill:#D6A15C;
}

.point-delhi{
    fill:#6E1838;
}

.point-maharashtra{
    fill:#9A6A45;
}

.map-route{
    fill:none;
    stroke:rgba(110,24,56,.35);
    stroke-width:2;
    stroke-dasharray:6 8;
}

.map-label{
    position:absolute;
    display:flex;
    align-items:center;
    gap:8px;
    padding:9px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(214,161,92,.28);
    box-shadow:0 14px 36px rgba(0,0,0,.08);
    color:#4B2C22;
    font-weight:800;
    font-size:.9rem;
    white-space:nowrap;
}

.map-label span{
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--gold);
}

.label-uttarakhand{
    top:78px;
    right:-6px;
}

.label-delhi{
    top:142px;
    right:34px;
}

.label-maharashtra{
    left:-12px;
    top:292px;
}

.label-delhi span{
    background:var(--burgundy);
}

.label-maharashtra span{
    background:#9A6A45;
}

/* label arrows */
.label-uttarakhand::before,
.label-delhi::before,
.label-maharashtra::before{
    content:"";
    position:absolute;
    height:1.5px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.65),
        rgba(214,161,92,.45)
    );
}

.label-uttarakhand::before{
    width:56px;
    left:-52px;
    top:50%;
}

.label-delhi::before{
    width:44px;
    left:-40px;
    top:50%;
}

.label-maharashtra::before{
    width:52px;
    right:-50px;
    top:50%;
}

.map-caption{
    margin-top:18px;
    padding:18px 20px;
    border-radius:24px;
    background:rgba(255,255,255,.68);
    border:1px solid rgba(0,0,0,.04);
}

.map-caption span{
    display:inline-flex;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:8px;
}

.map-caption p{
    margin:0;
    color:var(--text-light);
    line-height:1.65;
    font-size:.94rem;
}

/* Gentle hover animation */
.india-origin-map:hover .map-point{
    transform-origin:center;
    animation:mapPulse 1.8s ease infinite;
}

@keyframes mapPulse{
    0%, 100%{
        opacity:1;
    }
    50%{
        opacity:.72;
    }
}

@media(max-width:992px){

    .india-origin-map{
        min-height:auto;
    }

    .india-map-visual{
        max-width:360px;
    }

}

@media(max-width:768px){

    .map-label{
        font-size:.78rem;
        padding:8px 10px;
    }

    .label-uttarakhand{
        right:0;
    }

    .label-maharashtra{
        left:0;
    }

}

.story-origin-card{
    display:none !important;
}

/*==================================================
ABOUT PAGE - REAL INDIA MAP
==================================================*/

.india-origin-map{
    display:none !important;
}

.india-real-map-wrap{
    position:relative;
    min-height:560px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0;
}

.india-real-map{
    width:min(100%, 520px);
    height:auto;
    object-fit:contain;
    opacity:.92;
    filter:
        drop-shadow(0 28px 48px rgba(0,0,0,.10))
        sepia(.08)
        saturate(.92);
}

/* Floating state labels */
.india-map-pin{
    position:absolute;
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.86);
    backdrop-filter:blur(14px);
    border:1px solid rgba(214,161,92,.32);
    box-shadow:0 14px 36px rgba(0,0,0,.08);
    color:#4B2C22;
    font-weight:800;
    font-size:.92rem;
    white-space:nowrap;
}

.india-map-pin span{
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 5px rgba(214,161,92,.14);
}

.india-map-pin strong{
    font-weight:800;
}

/* Approximate positions around the map */
.pin-uttarakhand{
    top:23%;
    right:4%;
}

.pin-delhi{
    top:34%;
    right:10%;
}

.pin-maharashtra{
    left:4%;
    top:58%;
}

.pin-delhi span{
    background:var(--burgundy);
    box-shadow:0 0 0 5px rgba(110,24,56,.12);
}

.pin-maharashtra span{
    background:#9A6A45;
    box-shadow:0 0 0 5px rgba(154,106,69,.14);
}

/* Label arrows */
.pin-uttarakhand::before,
.pin-delhi::before,
.pin-maharashtra::before{
    content:"";
    position:absolute;
    height:1.5px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.65),
        rgba(214,161,92,.4)
    );
}

.pin-uttarakhand::before{
    width:72px;
    left:-68px;
    top:50%;
}

.pin-delhi::before{
    width:56px;
    left:-52px;
    top:50%;
}

.pin-maharashtra::before{
    width:72px;
    right:-68px;
    top:50%;
}

/* Subtle animation */
.india-map-pin{
    transition:all .25s ease;
}

.india-map-pin:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 48px rgba(0,0,0,.12);
}

/* Mobile */
@media(max-width:992px){

    .india-real-map-wrap{
        min-height:440px;
        margin-top:20px;
    }

    .india-real-map{
        width:min(100%, 420px);
    }

}

@media(max-width:768px){

    .india-map-pin{
        font-size:.78rem;
        padding:8px 11px;
    }

    .pin-uttarakhand{
        top:18%;
        right:0;
    }

    .pin-delhi{
        top:31%;
        right:2%;
    }

    .pin-maharashtra{
        left:0;
        top:58%;
    }

}

.india-origin-map{
    display:none !important;
}

/*==================================================
ABOUT PAGE - ACCURATE INDIA MAP MARKERS
==================================================*/

.india-origin-map,
.india-origin-legend,
.map-caption{
    display:none !important;
}

.india-map-accurate{
    position:relative;
    min-height:560px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0;
}

.india-map-stage{
    position:relative;
    width:min(100%, 560px);
    margin:0 auto;
}

.india-map-stage .india-real-map{
    width:100%;
    height:auto;
    display:block;
    opacity:.94;
    filter:
        drop-shadow(0 28px 48px rgba(0,0,0,.10))
        sepia(.04)
        saturate(.92);
}

/* Marker base */
.state-marker{
    position:absolute;
    display:flex;
    align-items:center;
    gap:10px;
    z-index:5;
}

.state-dot{
    width:13px;
    height:13px;
    border-radius:50%;
    background:var(--burgundy);
    border:3px solid #fff;
    box-shadow:
        0 0 0 6px rgba(110,24,56,.12),
        0 10px 24px rgba(0,0,0,.18);
    flex-shrink:0;
}

.state-label{
    position:relative;
    padding:9px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.9);
    backdrop-filter:blur(14px);
    border:1px solid rgba(214,161,92,.32);
    box-shadow:0 14px 34px rgba(0,0,0,.08);
    color:#4B2C22;
    font-size:.9rem;
    font-weight:850;
    white-space:nowrap;
}

/* Correct approximate placements on India map image */

/* Uttarakhand: Himalayan state, north of Uttar Pradesh */
.marker-uttarakhand{
    left:48%;
    top:25%;
}

/* Delhi: small UT in north India, just south-west of Uttarakhand */
.marker-delhi{
    left:42.5%;
    top:33%;
}

/* Maharashtra: western-central India */
.marker-maharashtra{
    left:34%;
    top:58%;
}

/* Individual colours */
.marker-uttarakhand .state-dot{
    background:var(--gold);
    box-shadow:
        0 0 0 6px rgba(214,161,92,.16),
        0 10px 24px rgba(0,0,0,.18);
}

.marker-delhi .state-dot{
    background:var(--burgundy);
}

.marker-maharashtra .state-dot{
    background:#9A6A45;
    box-shadow:
        0 0 0 6px rgba(154,106,69,.16),
        0 10px 24px rgba(0,0,0,.18);
}

/* Label directions */
.marker-uttarakhand{
    flex-direction:row;
}

.marker-delhi{
    flex-direction:row;
}

.marker-maharashtra{
    flex-direction:row-reverse;
}

.marker-maharashtra .state-label{
    margin-right:4px;
}

/* Small connecting line from label to dot */
.state-label::before{
    content:"";
    position:absolute;
    top:50%;
    width:26px;
    height:1.5px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.62),
        rgba(214,161,92,.45)
    );
}

.marker-uttarakhand .state-label::before,
.marker-delhi .state-label::before{
    left:-26px;
}

.marker-maharashtra .state-label::before{
    right:-26px;
}

/* Hover polish */
.state-marker{
    transition:transform .22s ease;
}

.state-marker:hover{
    transform:translateY(-3px);
}

.state-marker:hover .state-label{
    border-color:rgba(214,161,92,.55);
    box-shadow:0 18px 44px rgba(0,0,0,.12);
}

/* Mobile safety */
@media(max-width:992px){

    .india-map-accurate{
        min-height:auto;
        margin-top:24px;
    }

    .india-map-stage{
        width:min(100%, 430px);
    }

    .state-label{
        font-size:.78rem;
        padding:8px 10px;
    }

}

@media(max-width:768px){

    .marker-uttarakhand{
        left:46%;
        top:24%;
    }

    .marker-delhi{
        left:40%;
        top:32%;
    }

    .marker-maharashtra{
        left:30%;
        top:58%;
    }

}

/*==================================================
FIX INDIA MAP STATE MARKER POSITIONING
Dot is now the true location anchor
==================================================*/

.state-marker{
    position:absolute !important;
    width:14px;
    height:14px;
    display:block !important;
    z-index:10;
    transform:none !important;
}

/* Dot is the actual state marker */
.state-dot{
    position:absolute;
    left:0;
    top:0;
    width:14px;
    height:14px;
    border-radius:50%;
    border:3px solid #fff;
    box-shadow:
        0 0 0 6px rgba(110,24,56,.12),
        0 10px 24px rgba(0,0,0,.18);
}

/* Label floats separately from dot */
.state-label{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    padding:9px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(14px);
    border:1px solid rgba(214,161,92,.32);
    box-shadow:0 14px 34px rgba(0,0,0,.08);
    color:#4B2C22;
    font-size:.9rem;
    font-weight:850;
    white-space:nowrap;
}

/* Connector line */
.state-label::before{
    content:"";
    position:absolute;
    top:50%;
    height:1.5px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.62),
        rgba(214,161,92,.45)
    );
}

/* Corrected dot locations */

/* Uttarakhand: north of Uttar Pradesh, western Himalayan belt */
.marker-uttarakhand{
    left:40%;
    top:22%;
}

.marker-uttarakhand .state-label{
    left:30px;
}

.marker-uttarakhand .state-label::before{
    width:30px;
    left:-30px;
}

/* Delhi: small UT around NCR region */
.marker-delhi{
    left:31%;
    top:27.5%;
}

.marker-delhi .state-label{
    left:30px;
}

.marker-delhi .state-label::before{
    width:30px;
    left:-30px;
}

/* Maharashtra: western-central India */
.marker-maharashtra{
    left:20%;
    top:57%;
}

.marker-maharashtra .state-label{
    right:30px;
}

.marker-maharashtra .state-label::before{
    width:30px;
    right:-30px;
}

/* Colours */
.marker-uttarakhand .state-dot{
    background:var(--gold);
    box-shadow:
        0 0 0 6px rgba(214,161,92,.16),
        0 10px 24px rgba(0,0,0,.18);
}

.marker-delhi .state-dot{
    background:var(--burgundy);
}

.marker-maharashtra .state-dot{
    background:#9A6A45;
    box-shadow:
        0 0 0 6px rgba(154,106,69,.16),
        0 10px 24px rgba(0,0,0,.18);
}

/* Hover */
.state-marker:hover .state-label{
    border-color:rgba(214,161,92,.55);
    box-shadow:0 18px 44px rgba(0,0,0,.12);
}

.state-marker:hover .state-dot{
    transform:scale(1.12);
}

/*==================================================
CLEAN HOMEPAGE FOOTER
==================================================*/

.clean-home-footer{
    background:#fff;
    border-top:1px solid rgba(0,0,0,.06);
    padding:58px 0 24px;
}

.clean-footer-grid{
    display:grid;
    grid-template-columns:1.5fr .7fr .7fr;
    gap:70px;
    align-items:start;
}

.clean-footer-brand{
    max-width:480px;
}

.clean-footer-logo{
    display:flex;
    align-items:baseline;
    gap:18px;
    margin-bottom:20px;
}

.footer-logo-main{
    font-family:var(--font-serif);
    font-size:2.1rem;
    font-weight:800;
    color:var(--burgundy);
    line-height:1;
}

.footer-logo-sub{
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.22em;
    color:var(--gold);
    font-weight:700;
}

.clean-footer-brand p{
    color:var(--text-light);
    line-height:1.75;
    max-width:440px;
    margin-bottom:24px;
}

.footer-socials{
    display:flex;
    align-items:center;
    gap:14px;
}

.footer-socials a{
    width:46px;
    height:46px;
    border-radius:50%;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.06);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .22s ease;
}

.footer-socials a:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 34px rgba(0,0,0,.08);
}

.footer-socials img{
    width:20px;
    height:20px;
    object-fit:contain;
}

.clean-footer-links{
    display:flex;
    flex-direction:column;
    gap:13px;
}

.clean-footer-links h4{
    font-family:var(--font-serif);
    color:var(--burgundy);
    font-size:1.25rem;
    margin-bottom:8px;
}

.clean-footer-links a{
    color:var(--text-light);
    text-decoration:none;
    font-weight:600;
    transition:color .2s ease;
}

.clean-footer-links a:hover{
    color:var(--burgundy);
}

.clean-footer-bottom{
    margin-top:46px;
    padding-top:22px;
    border-top:1px solid rgba(0,0,0,.06);
    color:var(--text-light);
    font-size:.9rem;
}

@media(max-width:900px){

    .clean-footer-grid{
        grid-template-columns:1fr;
        gap:34px;
    }

    .clean-footer-logo{
        flex-direction:column;
        gap:8px;
        align-items:flex-start;
    }

}

/*==================================================
HOMEPAGE STATS - REDUCED SIZE
==================================================*/

.stat-card h3{
    font-size:clamp(1.9rem,2.6vw,2.8rem) !important;
    line-height:1;
    margin-bottom:10px;
}

.stat-card p{
    font-size:.98rem !important;
    line-height:1.5;
    max-width:260px;
}

.stats-grid{
    padding:34px 0 !important;
    gap:32px !important;
}

/*==================================================
HOMEPAGE STATS - ALIGNMENT FIX
==================================================*/

.stats-grid{
    display:grid !important;
    grid-template-columns:repeat(4, 1fr) !important;
    align-items:start !important;
    padding:34px 0 !important;
}

.stat-card{
    min-height:130px;
    display:flex !important;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    text-align:center;
    padding:0 18px !important;
}

.stat-card h3{
    min-height:46px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    font-size:clamp(1.9rem,2.5vw,2.6rem) !important;
    line-height:1 !important;
    margin:0 0 12px !important;
    color:var(--gold) !important;
}

.stat-card p{
    min-height:48px;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    text-align:center;
    font-size:.98rem !important;
    line-height:1.45 !important;
    color:var(--text-light) !important;
    max-width:260px;
    margin:0 auto !important;
}

/*==================================================
DOCTOR DASHBOARD - COMPACT PREMIUM REDESIGN
==================================================*/

.doctor-dashboard-hero{
    padding-top:54px !important;
    padding-bottom:26px !important;
    align-items:flex-start !important;
}

.doctor-dashboard-hero h1{
    font-size:clamp(3rem,5vw,5rem) !important;
    max-width:950px;
}

.doctor-dashboard-hero p{
    max-width:680px;
}

.doctor-dashboard-grid{
    grid-template-columns:360px 1fr !important;
    gap:24px !important;
    align-items:start;
}

.doctor-status-card{
    position:sticky;
    top:118px;
    flex-direction:column;
    padding:28px !important;
}

.doctor-status-card h2{
    font-size:1.8rem !important;
}

.status-icon-wrap{
    width:58px !important;
    height:58px !important;
}

.doctor-dashboard-card{
    padding:28px !important;
    border-radius:28px !important;
}

.doctor-profile-details{
    grid-template-columns:repeat(3, 1fr) !important;
    gap:14px !important;
}

.doctor-detail-item{
    padding:14px !important;
    border-radius:16px !important;
}

.doctor-detail-item span{
    font-size:.68rem !important;
    letter-spacing:.12em;
}

.doctor-detail-item strong{
    font-size:.95rem;
}

/* Upload card */
.doctor-documents-card{
    grid-column:2 / 3;
}

.doctor-upload-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-top:20px;
}

.doctor-upload-box{
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.06);
    border-radius:18px;
    padding:16px;
}

.doctor-upload-box label{
    display:block;
    font-weight:800;
    color:var(--burgundy);
    margin-bottom:10px;
}

.doctor-upload-box input{
    width:100%;
    font-size:.9rem;
}

.doctor-upload-box small{
    display:block;
    margin-top:8px;
    color:var(--text-light);
}

.doctor-upload-btn{
    margin-top:20px;
    width:100%;
    justify-content:center;
}

.doctor-document-status{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:20px;
}

.doctor-document-status div{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:16px;
    padding:14px;
}

.doctor-document-status span{
    display:block;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:6px;
}

.doctor-document-status strong{
    color:var(--text);
    font-size:.92rem;
}

/* Remove excessive whitespace */
.doctor-next-card{
    display:none !important;
}

@media(max-width:1100px){

    .doctor-dashboard-grid{
        grid-template-columns:1fr !important;
    }

    .doctor-status-card{
        position:relative;
        top:auto;
    }

    .doctor-documents-card{
        grid-column:auto;
    }

    .doctor-profile-details{
        grid-template-columns:1fr 1fr !important;
    }

}

@media(max-width:768px){

    .doctor-profile-details,
    .doctor-upload-grid,
    .doctor-document-status{
        grid-template-columns:1fr !important;
    }

}

/*==================================================
DOCTOR DASHBOARD FILE LIST + FLOATING PHOTO
==================================================*/

.doctor-sidebar-documents{
    margin-top:26px;
    padding-top:22px;
    border-top:1px solid rgba(0,0,0,.06);
}

.doctor-sidebar-documents h4{
    font-family:var(--font-serif);
    color:var(--burgundy);
    font-size:1.25rem;
    margin-bottom:14px;
}

.sidebar-file-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.sidebar-file-link{
    text-decoration:none;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.06);
    border-radius:14px;
    padding:12px 14px;
    color:var(--text);
    font-weight:700;
    transition:all .22s ease;
}

.sidebar-file-link:hover{
    color:var(--burgundy);
    transform:translateX(3px);
    box-shadow:0 12px 28px rgba(0,0,0,.06);
}

.sidebar-no-files{
    color:var(--text-light);
    font-size:.92rem;
    line-height:1.5;
}

.doctor-floating-photo{
    position:fixed;
    right:34px;
    bottom:34px;
    width:82px;
    height:82px;
    border-radius:50%;
    padding:5px;
    background:#fff;
    border:1px solid rgba(214,161,92,.45);
    box-shadow:0 20px 60px rgba(0,0,0,.18);
    z-index:900;
    cursor:pointer;
    transition:all .25s ease;
}

.doctor-floating-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:50%;
    display:block;
}

.doctor-floating-photo:hover{
    width:132px;
    height:132px;
    transform:translateY(-8px);
    box-shadow:0 28px 80px rgba(0,0,0,.24);
}

/*==================================================
NAVBAR PROFILE PHOTO
==================================================*/

.user-indicator{
    display:flex;
    align-items:center;
    gap:9px;
}

.navbar-profile-photo{
    width:30px;
    height:30px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid #fff;
    box-shadow:0 0 0 2px rgba(214,161,92,.35);
}

/*==================================================
DOCTOR DASHBOARD ADMIN NOTE
==================================================*/

.doctor-admin-note-box{
    margin-top:20px;
    padding:16px 18px;
    border-radius:18px;
    background:var(--ivory);
    border-left:4px solid var(--gold);
}

.doctor-admin-note-box span{
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:8px;
}

.doctor-admin-note-box p{
    margin:0;
    color:var(--text);
    line-height:1.6;
    font-weight:600;
}

/*==================================================
DOCTOR DASHBOARD - PROFILE MEDIA SPACING FIX
==================================================*/

.doctor-documents-card{
    margin-top:24px !important;
}

/*==================================================
DOCTOR DASHBOARD - APPLICATION PROGRESS FLOW
==================================================*/

.doctor-progress-section{
    margin-top:10px;
    margin-bottom:28px;
}

.doctor-progress-header{
    margin-bottom:18px;
}

.doctor-progress-header h2{
    font-family:var(--font-serif);
    font-size:clamp(2rem,3vw,3rem);
    color:var(--burgundy);
    margin:10px 0 8px;
    letter-spacing:-.04em;
}

.doctor-progress-header p{
    color:var(--text-light);
    line-height:1.6;
    max-width:680px;
}

.doctor-progress-flow{
    display:grid;
    grid-template-columns:1fr 44px 1fr 44px 1fr 44px 1fr 44px 1fr;
    align-items:center;
    gap:0;
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:30px;
    padding:22px;
    box-shadow:0 22px 65px rgba(0,0,0,.06);
}

.doctor-progress-step{
    min-height:106px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:16px;
    border-radius:22px;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.04);
    opacity:.58;
    transition:all .25s ease;
}

.progress-circle{
    width:42px;
    height:42px;
    border-radius:50%;
    background:#fff;
    border:1px solid rgba(214,161,92,.35);
    color:var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--font-serif);
    font-weight:900;
    flex-shrink:0;
}

.doctor-progress-step strong{
    display:block;
    color:var(--text);
    font-weight:900;
    line-height:1.25;
    margin-bottom:4px;
}

.doctor-progress-step span{
    display:block;
    color:var(--text-light);
    font-size:.82rem;
    line-height:1.35;
}

.progress-line{
    height:2px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.18),
        rgba(214,161,92,.22)
    );
    position:relative;
}

.progress-line::after{
    content:"";
    position:absolute;
    right:-2px;
    top:50%;
    width:8px;
    height:8px;
    border-top:2px solid rgba(110,24,56,.28);
    border-right:2px solid rgba(110,24,56,.28);
    transform:translateY(-50%) rotate(45deg);
}

/* Completed previous steps */
.doctor-progress-step.completed{
    opacity:1;
    background:rgba(255,255,255,.9);
}

.doctor-progress-step.completed .progress-circle{
    background:rgba(56,140,92,.1);
    color:#388C5C;
    border-color:rgba(56,140,92,.3);
}

.progress-line.completed{
    background:linear-gradient(
        90deg,
        rgba(56,140,92,.85),
        rgba(214,161,92,.65)
    );
}

.progress-line.completed::after{
    border-color:rgba(56,140,92,.85);
}

/* Current active step */
.doctor-progress-step.current{
    opacity:1;
    background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(234,247,242,.95));
    border-color:rgba(56,140,92,.45);
    box-shadow:0 18px 46px rgba(56,140,92,.12);
    transform:translateY(-3px);
}

.doctor-progress-step.current .progress-circle{
    background:#388C5C;
    color:#fff;
    border-color:#388C5C;
    box-shadow:0 0 0 7px rgba(56,140,92,.12);
}

.doctor-progress-step.current strong{
    color:#2F704B;
}

.doctor-progress-step.rejected-current{
    background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,238,238,.92));
    border-color:rgba(190,70,70,.42);
    box-shadow:0 18px 46px rgba(190,70,70,.1);
}

.doctor-progress-step.rejected-current .progress-circle{
    background:#BE4646;
    color:#fff;
    border-color:#BE4646;
    box-shadow:0 0 0 7px rgba(190,70,70,.12);
}

.doctor-progress-step.rejected-current strong{
    color:#BE4646;
}

@media(max-width:1100px){

    .doctor-progress-flow{
        grid-template-columns:1fr;
        gap:10px;
    }

    .progress-line{
        width:2px;
        height:24px;
        margin:0 auto;
    }

    .progress-line::after{
        right:auto;
        left:50%;
        top:auto;
        bottom:-1px;
        transform:translateX(-50%) rotate(135deg);
    }

}

/*==================================================
DOCTOR DASHBOARD - PROGRESS SECTION SPACING FIX
==================================================*/

.doctor-dashboard-hero{
    padding-top:20px !important;
    padding-bottom:10px !important;
}

.doctor-progress-section{
    margin-top:0 !important;
    margin-bottom:22px !important;
}

.doctor-progress-header{
    margin-bottom:14px !important;
}

.doctor-progress-header h2{
    margin-top:5px !important;
    margin-bottom:6px !important;
    font-size:clamp(1.8rem,2.6vw,2.6rem) !important;
}

.doctor-progress-header p{
    margin-bottom:0 !important;
}

.doctor-progress-flow{
    padding:18px !important;
    border-radius:26px !important;
}

.doctor-progress-step{
    min-height:92px !important;
    padding:14px !important;
}

.doctor-dashboard-grid{
    margin-top:0 !important;
}

/*==================================================
DOCTOR DASHBOARD - REMOVE EXCESS HERO SPACE
==================================================*/

.doctor-dashboard-page{
    padding-top:82px !important;
}

.doctor-dashboard-hero{
    padding-top:18px !important;
    padding-bottom:10px !important;
    min-height:auto !important;
}

.doctor-dashboard-hero h1{
    font-size:clamp(2.6rem,4vw,4.2rem) !important;
    margin:10px 0 10px !important;
}

.doctor-dashboard-hero p{
    margin:0 !important;
    max-width:620px !important;
}

.doctor-progress-section{
    margin-top:14px !important;
    margin-bottom:20px !important;
}

.doctor-progress-header{
    margin-bottom:12px !important;
}

.doctor-progress-header h2{
    margin:6px 0 4px !important;
}

.doctor-progress-flow{
    padding:16px !important;
}

.doctor-dashboard-grid{
    margin-top:0 !important;
}

.doctor-dashboard-hero{
    display:block !important;
}

/*==================================================
DOCTOR DASHBOARD - REDUCE SPACE BELOW PROGRESS FLOW
==================================================*/

.doctor-progress-section{
    margin-bottom:8px !important;
}

.doctor-progress-flow{
    margin-bottom:0 !important;
}

.doctor-dashboard-grid{
    margin-top:-18px !important;
    padding-top:0 !important;
}

/* If still too much space, this pulls the cards slightly upward */
.doctor-status-card,
.doctor-dashboard-card{
    margin-top:0 !important;
}

/*==================================================
DOCTOR DASHBOARD - PROFILE MEDIA SPACING FIX
==================================================*/

.doctor-documents-card{
    margin-top:24px !important;
}

/*==================================================
DOCTOR DASHBOARD - HERO PROFILE CARD
==================================================*/

.doctor-dashboard-hero{
    display:grid !important;
    grid-template-columns:1.15fr .85fr !important;
    align-items:center !important;
    gap:48px !important;
}

.doctor-hero-profile-card{
    justify-self:end;
    width:min(100%, 420px);
    display:flex;
    align-items:center;
    gap:22px;
    padding:26px;
    border-radius:34px;
    background:
        radial-gradient(circle at 85% 20%, rgba(214,161,92,.18), transparent 34%),
        rgba(255,255,255,.82);
    border:1px solid rgba(214,161,92,.24);
    box-shadow:0 24px 70px rgba(0,0,0,.08);
    backdrop-filter:blur(18px);
}

.doctor-hero-photo-wrap{
    position:relative;
    width:116px;
    height:116px;
    border-radius:50%;
    padding:6px;
    background:#fff;
    border:1px solid rgba(214,161,92,.45);
    box-shadow:0 18px 46px rgba(0,0,0,.12);
    flex-shrink:0;
}

.doctor-hero-photo{
    width:100%;
    height:100%;
    border-radius:50%;
    object-fit:cover;
    display:block;
}

.doctor-hero-initials{
    width:100%;
    height:100%;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(circle at top right, rgba(214,161,92,.22), transparent 40%),
        var(--ivory);
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:2.2rem;
    font-weight:900;
}

.doctor-hero-profile-text{
    min-width:0;
}

.doctor-hero-profile-text h2{
    font-family:var(--font-serif);
    font-size:2.25rem;
    line-height:1.05;
    color:var(--burgundy);
    margin:10px 0 8px;
    letter-spacing:-.04em;
}

.doctor-hero-profile-text p{
    color:var(--text);
    font-weight:700;
    margin:0 0 14px;
    line-height:1.4;
}

.doctor-hero-status-badge{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:9px 14px;
    background:rgba(56,140,92,.1);
    color:#388C5C;
    font-weight:900;
    font-size:.85rem;
}

.doctor-hero-status-badge.pending{
    background:rgba(214,161,92,.13);
    color:#9A6A45;
}

.doctor-hero-status-badge.verified{
    background:rgba(56,140,92,.1);
    color:#388C5C;
}

.doctor-hero-status-badge.rejected{
    background:rgba(190,70,70,.1);
    color:#BE4646;
}

.doctor-hero-status-badge.inactive{
    background:rgba(0,0,0,.06);
    color:var(--text-light);
}

@media(max-width:1100px){

    .doctor-dashboard-hero{
        grid-template-columns:1fr !important;
    }

    .doctor-hero-profile-card{
        justify-self:start;
    }

}

@media(max-width:768px){

    .doctor-hero-profile-card{
        width:100%;
        flex-direction:column;
        align-items:flex-start;
    }

    .doctor-hero-photo-wrap{
        width:96px;
        height:96px;
    }

}

/*==================================================
DOCTOR DASHBOARD - WIDE HERO PROFILE CARD WITH QUOTE
==================================================*/

.doctor-dashboard-hero{
    grid-template-columns:1fr 560px !important;
    gap:56px !important;
}

.doctor-hero-profile-card-wide{
    width:100% !important;
    max-width:560px !important;
    align-self:center;
    display:flex !important;
    flex-direction:column;
    gap:22px;
    padding:30px !important;
}

.doctor-hero-profile-main{
    display:flex;
    align-items:center;
    gap:24px;
}

.doctor-hero-profile-card-wide .doctor-hero-photo-wrap{
    width:128px;
    height:128px;
}

.doctor-hero-profile-card-wide .doctor-hero-profile-text h2{
    font-size:2.55rem;
    margin-bottom:8px;
}

.doctor-hero-profile-card-wide .doctor-hero-profile-text p{
    font-size:1.05rem;
    margin-bottom:12px;
}

.doctor-hero-quote-box{
    padding:20px 22px;
    border-radius:24px;
    background:
        radial-gradient(circle at 95% 0%, rgba(214,161,92,.16), transparent 38%),
        var(--ivory);
    border-left:4px solid var(--gold);
}

.doctor-hero-quote-box span{
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:8px;
}

.doctor-hero-quote-box p{
    margin:0;
    color:var(--text);
    font-weight:700;
    line-height:1.65;
    font-size:1rem;
}

@media(max-width:1200px){

    .doctor-dashboard-hero{
        grid-template-columns:1fr !important;
    }

    .doctor-hero-profile-card-wide{
        max-width:620px !important;
        justify-self:start;
    }

}

@media(max-width:768px){

    .doctor-hero-profile-main{
        flex-direction:column;
        align-items:flex-start;
    }

    .doctor-hero-profile-card-wide .doctor-hero-photo-wrap{
        width:104px;
        height:104px;
    }

}
const doctorHeroQuote = document.getElementById("doctorHeroQuote");

const doctorQuotes = [
    "Your profile is now part of a doctor-led staffing network.",
    "Opportunities work best when the right doctor reaches the right place at the right time.",
    "Your availability can help healthcare teams close real staffing gaps.",
    "LocumNet is built to make flexible medical work more structured and reliable.",
    "A complete profile helps us match you with better clinical opportunities.",
    "Verified doctors are the foundation of dependable healthcare staffing."
];

if (doctorHeroQuote) {
    const randomIndex = Math.floor(Math.random() * doctorQuotes.length);
    doctorHeroQuote.textContent = doctorQuotes[randomIndex];
}

/*==================================================
DOCTOR DASHBOARD - HERO / PROGRESS GAP FIX
==================================================*/

.doctor-dashboard-hero{
    padding-top:28px !important;
    padding-bottom:0 !important;
    align-items:center !important;
}

.doctor-hero-profile-card-wide{
    margin-top:0 !important;
    margin-bottom:0 !important;
}

.doctor-progress-section{
    margin-top:-36px !important;
    margin-bottom:8px !important;
}

.doctor-progress-header{
    margin-bottom:10px !important;
}

.doctor-progress-flow{
    margin-top:0 !important;
}

/*==================================================
HOSPITAL DASHBOARD - COMPACT ACTION CARDS
==================================================*/

.hospital-dashboard-hero{
    padding-top:48px !important;
    padding-bottom:22px !important;
}

.hospital-dashboard-hero h1{
    font-size:clamp(3rem,5vw,5rem) !important;
    max-width:900px;
}

.hospital-dashboard-hero p{
    max-width:760px;
}

.hospital-dashboard-actions{
    display:none !important;
}

.hospital-quick-grid{
    gap:18px !important;
    margin-top:10px !important;
    margin-bottom:24px !important;
}

.hospital-quick-card{
    min-height:auto !important;
    padding:24px 26px !important;
    border-radius:24px !important;
}

.hospital-quick-card svg{
    width:30px !important;
    height:30px !important;
    margin-bottom:14px !important;
}

.hospital-quick-card h3{
    font-size:1.35rem !important;
    margin-bottom:8px !important;
}

.hospital-quick-card p{
    font-size:.95rem !important;
    line-height:1.6 !important;
}

.hospital-quick-card{
    padding:20px 22px !important;
}

.hospital-quick-card h3{
    font-size:1.25rem !important;
}

.hospital-quick-card p{
    font-size:.9rem !important;
}

/*==================================================
HOSPITAL DASHBOARD - CLEAN REDESIGN
==================================================*/

.hospital-dashboard-hero{
    display:grid !important;
    grid-template-columns:1fr 280px !important;
    gap:36px !important;
    align-items:center !important;
    padding-top:44px !important;
    padding-bottom:20px !important;
}

.hospital-dashboard-hero h1{
    font-size:clamp(3rem,5vw,5.2rem) !important;
    max-width:980px;
}

.hospital-dashboard-hero p{
    max-width:760px;
}

/* Hide old duplicate quick action cards if still present */
.hospital-quick-grid{
    display:none !important;
}

.hospital-hero-contact-card{
    justify-self:end;
    width:260px;
    min-height:118px;
    display:flex;
    align-items:center;
    gap:16px;
    padding:20px;
    border-radius:26px;
    background:#fff;
    border:1px solid rgba(214,161,92,.24);
    box-shadow:0 18px 50px rgba(0,0,0,.07);
    text-decoration:none;
    transition:all .22s ease;
}

.hospital-hero-contact-card:hover{
    transform:translateY(-4px);
    box-shadow:0 24px 65px rgba(0,0,0,.11);
}

.hospital-hero-contact-card svg{
    width:34px;
    height:34px;
    color:var(--burgundy);
    flex-shrink:0;
}

.hospital-hero-contact-card strong{
    display:block;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:1.35rem;
    line-height:1.1;
    margin-bottom:6px;
}

.hospital-hero-contact-card span{
    display:block;
    color:var(--text-light);
    font-size:.9rem;
    line-height:1.45;
}

/* Progress section */
.hospital-progress-section{
    margin-top:4px !important;
    margin-bottom:24px !important;
}

.hospital-progress-header{
    margin-bottom:14px;
}

.hospital-progress-header h2{
    font-family:var(--font-serif);
    font-size:clamp(2rem,3vw,3rem);
    color:var(--burgundy);
    margin:10px 0 6px;
    letter-spacing:-.04em;
}

.hospital-progress-header p{
    color:var(--text-light);
    max-width:760px;
    line-height:1.6;
}

.hospital-progress-flow{
    display:grid;
    grid-template-columns:1fr 44px 1fr 44px 1fr 44px 1fr 44px 1fr;
    align-items:center;
    gap:0;
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:30px;
    padding:18px;
    box-shadow:0 22px 65px rgba(0,0,0,.06);
}

.hospital-progress-step{
    min-height:92px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px;
    border-radius:22px;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.04);
    opacity:.58;
}

.hospital-progress-circle{
    width:42px;
    height:42px;
    border-radius:50%;
    background:#fff;
    border:1px solid rgba(214,161,92,.35);
    color:var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--font-serif);
    font-weight:900;
    flex-shrink:0;
}

.hospital-progress-step strong{
    display:block;
    color:var(--text);
    font-weight:900;
    line-height:1.25;
    margin-bottom:4px;
}

.hospital-progress-step span{
    display:block;
    color:var(--text-light);
    font-size:.82rem;
    line-height:1.35;
}

.hospital-progress-line{
    height:2px;
    background:linear-gradient(
        90deg,
        rgba(110,24,56,.18),
        rgba(214,161,92,.22)
    );
    position:relative;
}

.hospital-progress-line::after{
    content:"";
    position:absolute;
    right:-2px;
    top:50%;
    width:8px;
    height:8px;
    border-top:2px solid rgba(110,24,56,.28);
    border-right:2px solid rgba(110,24,56,.28);
    transform:translateY(-50%) rotate(45deg);
}

.hospital-progress-step.completed{
    opacity:1;
    background:rgba(255,255,255,.9);
}

.hospital-progress-step.completed .hospital-progress-circle{
    background:rgba(56,140,92,.1);
    color:#388C5C;
    border-color:rgba(56,140,92,.3);
}

.hospital-progress-step.current{
    opacity:1;
    background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(234,247,242,.95));
    border-color:rgba(56,140,92,.45);
    box-shadow:0 18px 46px rgba(56,140,92,.12);
    transform:translateY(-3px);
}

.hospital-progress-step.current .hospital-progress-circle{
    background:#388C5C;
    color:#fff;
    border-color:#388C5C;
    box-shadow:0 0 0 7px rgba(56,140,92,.12);
}

.hospital-progress-step.current strong{
    color:#2F704B;
}

.hospital-progress-line.completed{
    background:linear-gradient(
        90deg,
        rgba(56,140,92,.85),
        rgba(214,161,92,.65)
    );
}

.hospital-progress-line.completed::after{
    border-color:rgba(56,140,92,.85);
}

/* Bring request cards closer */
.hospital-dashboard-sections,
.hospital-dashboard-grid{
    margin-top:12px !important;
}

/* Responsive */
@media(max-width:1100px){

    .hospital-dashboard-hero{
        grid-template-columns:1fr !important;
    }

    .hospital-hero-contact-card{
        justify-self:start;
    }

    .hospital-progress-flow{
        grid-template-columns:1fr;
        gap:10px;
    }

    .hospital-progress-line{
        width:2px;
        height:24px;
        margin:0 auto;
    }

    .hospital-progress-line::after{
        right:auto;
        left:50%;
        top:auto;
        bottom:-1px;
        transform:translateX(-50%) rotate(135deg);
    }

}

/*==================================================
HOSPITAL DASHBOARD - GRADIENT PROCESS FLOW
==================================================*/

.hospital-progress-section{
    margin-top:0 !important;
    margin-bottom:6px !important;
    padding-bottom:0 !important;
}

.hospital-progress-header{
    margin-bottom:12px !important;
}

.hospital-progress-header h2{
    margin-top:8px !important;
    margin-bottom:6px !important;
}

.hospital-progress-header p{
    margin-bottom:0 !important;
}

.hospital-gradient-flow{
    padding:16px !important;
    margin-bottom:0 !important;
}

/* Remove old active/completed green logic */
.hospital-progress-step,
.hospital-progress-step.completed,
.hospital-progress-step.current{
    opacity:1 !important;
    transform:none !important;
    box-shadow:none !important;
}

.hospital-progress-step.current .hospital-progress-circle,
.hospital-progress-step.completed .hospital-progress-circle{
    box-shadow:none !important;
}

/* Shared card style */
.hospital-gradient-flow .hospital-progress-step{
    min-height:88px !important;
    border-radius:22px !important;
    border:1px solid rgba(214,161,92,.22) !important;
    transition:all .22s ease;
}

.hospital-gradient-flow .hospital-progress-step:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 16px 42px rgba(0,0,0,.08) !important;
}

/* Light to dark tones */
.step-tone-1{
    background:#FFFCF7 !important;
}

.step-tone-2{
    background:#FFF8EF !important;
}

.step-tone-3{
    background:#F8EFE5 !important;
}

.step-tone-4{
    background:#EFE0D2 !important;
}

.step-tone-5{
    background:#E4CBB7 !important;
}

/* Text gets slightly darker towards the right */
.step-tone-1 strong,
.step-tone-2 strong{
    color:#6E1838 !important;
}

.step-tone-3 strong{
    color:#5E2434 !important;
}

.step-tone-4 strong{
    color:#4B2C22 !important;
}

.step-tone-5 strong{
    color:#3A241D !important;
}

.step-tone-1 span,
.step-tone-2 span,
.step-tone-3 span,
.step-tone-4 span,
.step-tone-5 span{
    color:#6B6563 !important;
}

/* Number circles */
.step-tone-1 .hospital-progress-circle{
    background:#FFF8EF !important;
    color:#D6A15C !important;
    border-color:rgba(214,161,92,.32) !important;
}

.step-tone-2 .hospital-progress-circle{
    background:#F8EFE5 !important;
    color:#B88445 !important;
    border-color:rgba(184,132,69,.34) !important;
}

.step-tone-3 .hospital-progress-circle{
    background:#EFE0D2 !important;
    color:#9A6A45 !important;
    border-color:rgba(154,106,69,.34) !important;
}

.step-tone-4 .hospital-progress-circle{
    background:#8A4E39 !important;
    color:#fff !important;
    border-color:#8A4E39 !important;
}

.step-tone-5 .hospital-progress-circle{
    background:#6E1838 !important;
    color:#fff !important;
    border-color:#6E1838 !important;
}

/* Gradient arrows between cards */
.hospital-gradient-flow .hospital-progress-line{
    height:2px !important;
}

.line-tone-1{
    background:linear-gradient(90deg, #D6A15C, #C89558) !important;
}

.line-tone-2{
    background:linear-gradient(90deg, #C89558, #9A6A45) !important;
}

.line-tone-3{
    background:linear-gradient(90deg, #9A6A45, #8A4E39) !important;
}

.line-tone-4{
    background:linear-gradient(90deg, #8A4E39, #6E1838) !important;
}

.line-tone-1::after{
    border-color:#C89558 !important;
}

.line-tone-2::after{
    border-color:#9A6A45 !important;
}

.line-tone-3::after{
    border-color:#8A4E39 !important;
}

.line-tone-4::after{
    border-color:#6E1838 !important;
}

/* Reduce space below flow before request cards */
.hospital-dashboard-grid,
.hospital-dashboard-sections{
    margin-top:-18px !important;
    padding-top:0 !important;
}

/*==================================================
HOSPITAL DASHBOARD - PROGRESS FLOW WIDTH FIX
==================================================*/

.hospital-progress-flow{
    width:100% !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}

.hospital-gradient-flow{
    display:grid !important;
    grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr !important;
    gap:0 !important;
    padding:18px !important;
}

.hospital-gradient-flow .hospital-progress-step{
    min-width:0 !important;
    min-height:84px !important;
    padding:12px 14px !important;
}

.hospital-gradient-flow .hospital-progress-step strong{
    font-size:1rem !important;
    line-height:1.15 !important;
}

.hospital-gradient-flow .hospital-progress-step span{
    font-size:.78rem !important;
    line-height:1.35 !important;
}

.hospital-progress-circle{
    width:38px !important;
    height:38px !important;
    flex-shrink:0 !important;
}

.hospital-progress-line{
    width:100% !important;
}

/*==================================================
HOSPITAL DASHBOARD - REDUCE GAP BELOW FLOW
==================================================*/

.hospital-progress-section{
    margin-bottom:30px !important;
    padding-bottom:30px !important;
}

.hospital-dashboard-grid,
.hospital-dashboard-sections{
    margin-top:-34px !important;
    padding-top:0 !important;
}

/*==================================================
HOSPITAL DASHBOARD - EQUAL CARD PROPORTIONS
==================================================*/

.hospital-dashboard-grid,
.hospital-dashboard-sections{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:26px !important;
    align-items:stretch !important;
}

.hospital-dashboard-card{
    height:100%;
    min-height:430px;
    display:flex;
    flex-direction:column;
}

.hospital-dashboard-card table{
    width:100%;
}

.hospital-dashboard-card .dashboard-table-wrap,
.hospital-dashboard-card .hospital-table-wrap{
    flex:1;
}

.hospital-dashboard-card h2{
    font-size:clamp(2.8rem,4vw,4.4rem) !important;
    line-height:1.05 !important;
}

@media(max-width:1100px){

    .hospital-dashboard-grid,
    .hospital-dashboard-sections{
        grid-template-columns:1fr !important;
    }

}

/*==================================================
HOSPITAL DASHBOARD - STATUS + WITHDRAW ACTION
==================================================*/

.hospital-status-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 13px;
    border-radius:999px;
    font-size:.78rem;
    font-weight:900;
    text-transform:lowercase;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
}

.hospital-status-pill.status-new{
    background:rgba(214,161,92,.14);
    color:#9A6A45;
}

.hospital-status-pill.status-contacted,
.hospital-status-pill.status-quoted,
.hospital-status-pill.status-converted,
.hospital-status-pill.status-confirmed{
    background:rgba(56,140,92,.1);
    color:#388C5C;
}

.hospital-status-pill.status-closed{
    background:rgba(0,0,0,.06);
    color:var(--text-light);
}

.hospital-status-pill.status-cancelled{
    background:rgba(190,70,70,.1);
    color:#BE4646;
}

.hospital-withdraw-btn{
    border:none;
    background:rgba(190,70,70,.08);
    color:#BE4646;
    border-radius:999px;
    padding:8px 13px;
    font-weight:900;
    cursor:pointer;
    transition:all .2s ease;
}

.hospital-withdraw-btn:hover{
    background:#BE4646;
    color:#fff;
    transform:translateY(-2px);
}

.hospital-withdraw-btn:disabled{
    opacity:.65;
    cursor:not-allowed;
    transform:none;
}

.hospital-muted-action{
    color:var(--text-light);
    opacity:.6;
}

/*==================================================
HOSPITAL DASHBOARD - VIEW DETAILS MODAL
==================================================*/

.hospital-row-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.hospital-view-btn{
    border:none;
    background:rgba(214,161,92,.14);
    color:#9A6A45;
    border-radius:999px;
    padding:8px 13px;
    font-weight:900;
    cursor:pointer;
    transition:all .2s ease;
}

.hospital-view-btn:hover{
    background:var(--gold);
    color:#fff;
    transform:translateY(-2px);
}

.hospital-modal{
    position:fixed;
    inset:0;
    z-index:3000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
}

.hospital-modal.hidden{
    display:none !important;
}

.hospital-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(31,27,26,.34);
    backdrop-filter:blur(8px);
}

.hospital-modal-card{
    position:relative;
    width:min(920px, 94vw);
    max-height:86vh;
    overflow:auto;
    background:#fff;
    border-radius:34px;
    padding:34px;
    border:1px solid rgba(214,161,92,.24);
    box-shadow:0 30px 90px rgba(0,0,0,.22);
}

.hospital-modal-close{
    position:absolute;
    top:22px;
    right:22px;
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    color:var(--burgundy);
    font-size:1.6rem;
    cursor:pointer;
}

.hospital-modal-card h2{
    font-family:var(--font-serif);
    font-size:clamp(2.3rem,4vw,4rem);
    color:var(--burgundy);
    margin:14px 0 8px;
    letter-spacing:-.04em;
}

.hospital-modal-card > p{
    color:var(--text-light);
    margin-bottom:22px;
}

.hospital-modal-status-box{
    padding:18px 20px;
    border-radius:22px;
    background:var(--ivory);
    border-left:4px solid var(--gold);
    margin-bottom:24px;
}

.hospital-modal-status-box span{
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:6px;
}

.hospital-modal-status-box strong{
    display:block;
    color:var(--burgundy);
    font-size:1.35rem;
    margin-bottom:6px;
    text-transform:capitalize;
}

.hospital-modal-status-box p{
    margin:0;
    color:var(--text-light);
    line-height:1.55;
}

.hospital-modal-body{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
}

.hospital-detail-row{
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.05);
    border-radius:18px;
    padding:15px 16px;
}

.hospital-detail-row span{
    display:block;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:7px;
}

.hospital-detail-row strong{
    display:block;
    color:var(--text);
    font-size:.98rem;
    line-height:1.45;
}

body.modal-open{
    overflow:hidden;
}

@media(max-width:768px){

    .hospital-modal-body{
        grid-template-columns:1fr;
    }

    .hospital-modal-card{
        padding:26px;
        border-radius:26px;
    }

}

/*==================================================
ADMIN DASHBOARD - WITHDRAWN REQUEST HIGHLIGHT
==================================================*/

.admin-row-withdrawn{
    background:linear-gradient(
        90deg,
        rgba(190,70,70,.09),
        rgba(255,255,255,.98)
    ) !important;
}

.admin-row-withdrawn td{
    border-bottom-color:rgba(190,70,70,.16) !important;
}

.admin-row-withdrawn .admin-status-select{
    border-color:rgba(190,70,70,.35) !important;
    background:rgba(190,70,70,.08) !important;
    color:#BE4646 !important;
}

.admin-withdrawn-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:8px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(190,70,70,.1);
    color:#BE4646;
    font-size:.72rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.admin-row-withdrawn textarea,
.admin-row-withdrawn .admin-notes-input{
    border-color:rgba(190,70,70,.22) !important;
    background:rgba(255,245,245,.72) !important;
}

/*==================================================
ADMIN DASHBOARD - BROWSER STYLE TABS
==================================================*/

.admin-filter-bar{
    display:none !important;
}

.admin-browser-tabs{
    display:flex;
    align-items:flex-end;
    gap:8px;
    margin-top:22px !important;
    margin-bottom:0 !important;
    padding:0 18px !important;
    border-bottom:1px solid rgba(0,0,0,.08);
}

.admin-browser-tab{
    border:1px solid rgba(0,0,0,.08);
    border-bottom:none;
    background:rgba(252,250,248,.72);
    color:var(--text-light);
    padding:15px 24px;
    border-radius:20px 20px 0 0;
    font-weight:900;
    cursor:pointer;
    transition:all .2s ease;
}

.admin-browser-tab:hover{
    color:var(--burgundy);
    background:#fff;
}

.admin-browser-tab.active{
    background:#fff;
    color:var(--burgundy);
    box-shadow:0 -8px 24px rgba(0,0,0,.04);
    transform:translateY(1px);
}

.admin-browser-panel{
    display:none !important;
    margin-top:0 !important;
    padding-top:28px !important;
    padding-bottom:36px !important;
    background:#fff;
    border-radius:0 0 34px 34px;
    border:1px solid rgba(0,0,0,.06);
    border-top:none;
    box-shadow:0 26px 70px rgba(0,0,0,.06);
}

.admin-browser-panel.active{
    display:block !important;
}

.admin-browser-panel h2{
    margin-top:0 !important;
}

/* Reduce excessive vertical space inside admin tables */
.admin-section{
    margin-bottom:40px !important;
}

.admin-table-wrap{
    max-height:620px;
    overflow:auto;
    border-radius:24px;
}

/* Sticky table header while scrolling inside the tab */
.admin-table-wrap thead th{
    position:sticky;
    top:0;
    z-index:5;
}

/* Make the whole admin page less scroll-heavy */
.admin-page{
    padding-bottom:60px !important;
}

@media(max-width:900px){

    .admin-browser-tabs{
        overflow-x:auto;
        align-items:center;
        padding-bottom:0 !important;
    }

    .admin-browser-tab{
        white-space:nowrap;
        padding:13px 18px;
    }

}

/*==================================================
ADMIN DASHBOARD - TAB COUNT BADGES
==================================================*/

.admin-browser-tab{
    display:flex;
    align-items:center;
    gap:10px;
}

.admin-tab-count{
    min-width:28px;
    height:28px;
    padding:0 9px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(110,24,56,.08);
    color:var(--burgundy);
    font-size:.78rem;
    font-weight:900;
    line-height:1;
}

.admin-browser-tab.active .admin-tab-count{
    background:var(--burgundy);
    color:#fff;
}

.admin-browser-tab[data-admin-tab="requirements"] .admin-tab-count,
.admin-browser-tab[data-admin-tab="quotations"] .admin-tab-count{
    background:rgba(214,161,92,.18);
    color:#9A6A45;
}

.admin-browser-tab[data-admin-tab="requirements"].active .admin-tab-count,
.admin-browser-tab[data-admin-tab="quotations"].active .admin-tab-count{
    background:var(--gold);
    color:#fff;
}

.admin-browser-tab[data-admin-tab="contacts"] .admin-tab-count{
    background:rgba(56,140,92,.1);
    color:#388C5C;
}

.admin-browser-tab[data-admin-tab="contacts"].active .admin-tab-count{
    background:#388C5C;
    color:#fff;
}

/*==================================================
ADMIN DASHBOARD - INNER FILTER PILLS
==================================================*/

.admin-tab-filter-bar{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin:0 0 22px;
    padding:4px 0 18px;
    border-bottom:1px solid rgba(0,0,0,.06);
}

.admin-tab-filter{
    border:1px solid rgba(0,0,0,.07);
    background:var(--ivory);
    color:var(--text-light);
    border-radius:999px;
    padding:9px 15px;
    font-weight:900;
    cursor:pointer;
    transition:all .2s ease;
}

.admin-tab-filter:hover{
    color:var(--burgundy);
    background:#fff;
    transform:translateY(-2px);
}

.admin-tab-filter.active{
    background:var(--burgundy);
    color:#fff;
    border-color:var(--burgundy);
    box-shadow:0 10px 24px rgba(110,24,56,.18);
}

.admin-tab-filter[data-filter-value="cancelled"].active,
.admin-tab-filter[data-filter-value="rejected"].active{
    background:#BE4646;
    border-color:#BE4646;
    box-shadow:0 10px 24px rgba(190,70,70,.18);
}

.admin-tab-filter[data-filter-value="verified"].active,
.admin-tab-filter[data-filter-value="confirmed"].active,
.admin-tab-filter[data-filter-value="resolved"].active{
    background:#388C5C;
    border-color:#388C5C;
    box-shadow:0 10px 24px rgba(56,140,92,.16);
}

.admin-tab-filter[data-filter-value="spam"].active{
    background:#6B6563;
    border-color:#6B6563;
    box-shadow:0 10px 24px rgba(0,0,0,.14);
}

/*==================================================
ADMIN DASHBOARD - INNER SEARCH
==================================================*/

.admin-tab-search-wrap{
    margin:0 0 22px;
}

.admin-tab-search{
    width:100%;
    min-height:54px;
    border-radius:18px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    padding:0 18px;
    font-size:1rem;
    font-weight:700;
    color:var(--text);
    outline:none;
    box-shadow:0 12px 30px rgba(0,0,0,.035);
    transition:all .2s ease;
}

.admin-tab-search::placeholder{
    color:rgba(107,101,99,.72);
    font-weight:600;
}

.admin-tab-search:focus{
    border-color:rgba(110,24,56,.35);
    box-shadow:0 0 0 4px rgba(110,24,56,.08);
}

/*==================================================
ADMIN DASHBOARD - DOCUMENT LINKS
==================================================*/

.admin-document-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    padding:9px 14px;
    border-radius:999px;
    background:rgba(214,161,92,.14);
    color:#9A6A45;
    font-weight:900;
    text-decoration:none;
    transition:all .2s ease;
}

.admin-document-link:hover{
    background:var(--gold);
    color:#fff;
    transform:translateY(-2px);
}

/*==================================================
USER DASHBOARDS - CONTACT REPLIES
==================================================*/

.hospital-contact-updates-section{
    margin-top:28px;
    margin-bottom:56px;
}

.hospital-contact-updates-card{
    padding:34px;
}

.contact-updates-list{
    display:grid;
    gap:16px;
    margin-top:20px;
}

.contact-update-item{
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.06);
    border-radius:22px;
    padding:18px 20px;
}

.contact-update-top{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
    margin-bottom:10px;
}

.contact-update-top strong{
    color:var(--burgundy);
    font-size:1.05rem;
}

.contact-update-status{
    display:inline-flex;
    padding:6px 11px;
    border-radius:999px;
    background:rgba(214,161,92,.16);
    color:#9A6A45;
    font-size:.75rem;
    font-weight:900;
    text-transform:lowercase;
}

.contact-update-status.status-responded,
.contact-update-status.status-reviewed{
    background:rgba(56,140,92,.1);
    color:#388C5C;
}

.contact-update-status.status-closed{
    background:rgba(0,0,0,.06);
    color:var(--text-light);
}

.contact-update-message{
    color:var(--text-light);
    line-height:1.55;
    margin-bottom:12px;
}

.contact-update-reply{
    background:#fff;
    border-left:4px solid var(--gold);
    border-radius:16px;
    padding:13px 15px;
}

.contact-update-reply span{
    display:block;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:6px;
}

.contact-update-reply p{
    margin:0;
    color:var(--text);
    font-weight:700;
    line-height:1.55;
}

.contact-update-reply.muted p,
.contact-updates-empty{
    color:var(--text-light);
    font-weight:600;
}

/* Doctor mini reply box */

.doctor-contact-updates-mini{
    margin-top:18px;
    padding:18px;
    border-radius:22px;
    background:var(--ivory);
    border:1px solid rgba(0,0,0,.06);
}

.doctor-contact-updates-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
}

.doctor-contact-updates-header span{
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
}

.doctor-contact-updates-header a{
    color:var(--burgundy);
    text-decoration:none;
    font-weight:900;
    font-size:.82rem;
}

.doctor-contact-updates-list{
    display:grid;
    gap:10px;
}

.doctor-contact-update-item{
    background:#fff;
    border-radius:16px;
    padding:13px 14px;
    border:1px solid rgba(0,0,0,.05);
}

.doctor-contact-update-item strong{
    display:block;
    color:var(--burgundy);
    margin-bottom:6px;
}

.doctor-contact-status{
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(214,161,92,.15);
    color:#9A6A45;
    font-size:.7rem;
    font-weight:900;
    margin-bottom:7px;
}

.doctor-contact-update-item p{
    margin:0;
    color:var(--text);
    font-size:.92rem;
    line-height:1.5;
    font-weight:650;
}

.doctor-contact-update-item .muted{
    color:var(--text-light);
}

/*==================================================
DOCTOR DASHBOARD - SEPARATE REPLY CARD
==================================================*/

.doctor-dashboard-hero{
    align-items:start !important;
}

.doctor-hero-profile-card-wide{
    margin-bottom:18px !important;
}

.doctor-contact-updates-card{
    width:100%;
    max-width:560px;
    background:#fff;
    border-radius:28px;
    padding:22px;
    border:1px solid rgba(214,161,92,.22);
    box-shadow:0 18px 50px rgba(0,0,0,.06);
}

.doctor-contact-updates-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:14px;
}

.doctor-contact-updates-header span{
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--gold);
    font-weight:900;
}

.doctor-contact-updates-header a{
    color:var(--burgundy);
    text-decoration:none;
    font-weight:900;
    font-size:.82rem;
}

.doctor-contact-updates-list{
    max-height:260px;
    overflow:auto;
    display:grid;
    gap:12px;
    padding-right:6px;
}

.doctor-contact-update-item{
    background:var(--ivory);
    border-radius:18px;
    padding:14px;
    border:1px solid rgba(0,0,0,.05);
}

.doctor-contact-update-item strong{
    display:block;
    color:var(--burgundy);
    margin-bottom:7px;
}

.doctor-contact-status{
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(214,161,92,.15);
    color:#9A6A45;
    font-size:.7rem;
    font-weight:900;
    margin-bottom:8px;
}

.doctor-contact-original{
    margin:0 0 10px;
    color:var(--text-light);
    font-size:.9rem;
    line-height:1.5;
}

.doctor-contact-admin-reply{
    background:#fff;
    border-left:4px solid var(--gold);
    border-radius:14px;
    padding:11px 12px;
    margin-bottom:12px;
}

.doctor-contact-admin-reply span{
    display:block;
    font-size:.65rem;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:900;
    margin-bottom:5px;
}

.doctor-contact-admin-reply p{
    margin:0;
    color:var(--text);
    font-weight:700;
    line-height:1.45;
}

.doctor-contact-reply-form{
    display:grid;
    gap:8px;
}

.dashboard-contact-reply-input{
    width:100%;
    min-height:76px;
    resize:vertical;
    border-radius:14px;
    border:1px solid rgba(0,0,0,.08);
    padding:11px 12px;
    font-family:inherit;
    font-weight:650;
    outline:none;
}

.dashboard-contact-reply-input:focus{
    border-color:rgba(110,24,56,.34);
    box-shadow:0 0 0 4px rgba(110,24,56,.07);
}

.dashboard-contact-reply-btn{
    justify-self:end;
    border:none;
    border-radius:999px;
    background:var(--burgundy);
    color:#fff;
    padding:9px 16px;
    font-weight:900;
    cursor:pointer;
}

.dashboard-reply-closed{
    color:var(--text-light);
    font-size:.86rem;
    font-weight:700;
    margin:10px 0 0;
}

/*==================================================
CONTACT UPDATES - DIRECT REPLY INFO
==================================================*/

.dashboard-contact-direct-message{
    margin-top:12px;
    padding:12px 13px;
    border-radius:14px;
    background:#fff;
    border:1px dashed rgba(214,161,92,.45);
}

.dashboard-contact-direct-message span{
    display:block;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.13em;
    color:var(--gold);
    font-weight:900;
    margin-bottom:5px;
}

.dashboard-contact-direct-message p{
    margin:0 0 8px;
    color:var(--text-light);
    font-size:.88rem;
    line-height:1.45;
}

.dashboard-contact-direct-message a{
    color:var(--burgundy);
    font-weight:900;
    text-decoration:none;
    font-size:.88rem;
}

/*==================================================
LOGIN PAGE - FEATURE ICON FIX
==================================================*/

.auth-feature-icon{
    width:54px;
    height:54px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.auth-feature-icon svg{
    width:25px;
    height:25px;
    color:var(--burgundy);
    stroke-width:2.2;
}

.icon-peach{
    background:var(--peach);
}

.icon-sage{
    background:var(--sage);
}

.icon-lavender{
    background:var(--lavender);
}

/* LOGIN PAGE - SMALL ICON FIX ONLY */

.auth-feature-icon{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.auth-feature-icon svg{
    width:20px !important;
    height:20px !important;
    color:var(--burgundy) !important;
    stroke-width:2.1 !important;
}

/*==================================================
REGISTER PAGE - LEFT BRAND BANNER
==================================================*/

.register-page-enhanced{
    padding-top:120px !important;
    padding-bottom:80px !important;
}

.register-layout{
    display:grid;
    grid-template-columns:420px minmax(0, 1fr);
    gap:46px;
    align-items:stretch;
}

.register-brand-panel{
    min-height:720px;
    border-radius:34px;
    background:
        radial-gradient(circle at 20% 0%, rgba(214,161,92,.26), transparent 34%),
        linear-gradient(145deg, #6E1838, #4F1028);
    color:#fff;
    padding:36px;
    position:sticky;
    top:118px;
    align-self:start;
    box-shadow:0 28px 80px rgba(110,24,56,.24);
    overflow:hidden;
}

.register-brand-panel::after{
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    border-radius:50%;
    right:-90px;
    bottom:-90px;
    border:1px solid rgba(214,161,92,.28);
    background:rgba(255,255,255,.04);
}

.register-brand-inner{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    height:100%;
}

.register-brand-tag{
    width:max-content;
    display:inline-flex;
    padding:10px 15px;
    border-radius:999px;
    background:rgba(255,255,255,.1);
    color:var(--gold);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:34px;
}

.register-brand-panel h1{
    font-family:var(--font-serif);
    font-size:clamp(2.7rem,4vw,4.5rem);
    line-height:.98;
    letter-spacing:-.05em;
    margin:0 0 22px;
    color:#fff;
}

.register-brand-panel p{
    color:rgba(255,255,255,.78);
    line-height:1.75;
    font-size:1.02rem;
    margin-bottom:34px;
}

.register-reason-list{
    display:grid;
    gap:16px;
    margin-top:auto;
}

.register-reason-card{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:17px;
    border-radius:22px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
}

.register-reason-icon{
    width:42px;
    height:42px;
    border-radius:15px;
    background:rgba(214,161,92,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.register-reason-icon svg{
    width:21px;
    height:21px;
    color:var(--gold);
    stroke-width:2.2;
}

.register-reason-card strong{
    display:block;
    color:#fff;
    font-size:1rem;
    margin-bottom:5px;
}

.register-reason-card span{
    display:block;
    color:rgba(255,255,255,.72);
    line-height:1.5;
    font-size:.9rem;
}

.register-form-card{
    width:100% !important;
    max-width:760px !important;
    margin:0 !important;
    align-self:start;
}

@media(max-width:1050px){

    .register-layout{
        grid-template-columns:1fr;
    }

    .register-brand-panel{
        position:relative;
        top:auto;
        min-height:auto;
    }

}

/*==================================================
REGISTER PAGE - FIX TWO COLUMN LAYOUT
==================================================*/

.register-page-enhanced{
    padding-top:120px !important;
    padding-bottom:80px !important;
}

.register-layout{
    width:min(1180px, calc(100% - 48px)) !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:360px minmax(0, 1fr) !important;
    gap:42px !important;
    align-items:start !important;
}

.register-brand-panel{
    width:100% !important;
    max-width:360px !important;
    min-height:680px !important;
    padding:30px !important;
    border-radius:30px !important;
    position:sticky !important;
    top:118px !important;
    align-self:start !important;
}

.register-brand-panel h1{
    font-size:2.55rem !important;
    line-height:1.05 !important;
    letter-spacing:-.04em !important;
    margin-bottom:18px !important;
}

.register-brand-panel p{
    font-size:.95rem !important;
    line-height:1.65 !important;
    margin-bottom:24px !important;
}

.register-reason-list{
    gap:14px !important;
}

.register-reason-card{
    padding:15px !important;
    border-radius:18px !important;
    gap:12px !important;
}

.register-reason-icon{
    width:38px !important;
    height:38px !important;
    border-radius:13px !important;
}

.register-reason-icon svg{
    width:19px !important;
    height:19px !important;
}

.register-reason-card strong{
    font-size:.95rem !important;
}

.register-reason-card span{
    font-size:.82rem !important;
    line-height:1.45 !important;
}

.register-form-card,
.auth-card.register-form-card{
    width:100% !important;
    max-width:720px !important;
    margin:0 !important;
    align-self:start !important;
}

/*==================================================
DOCTOR ACCOUNT — PROFILE-FIRST DASHBOARD
==================================================*/

.doctor-account-body{
    background:#f8f6f2;
}

.doctor-profile-dashboard{
    min-height:100vh;
    padding:138px 0 84px;
    background:
        radial-gradient(circle at 82% 3%, rgba(214,161,92,.13), transparent 28%),
        linear-gradient(180deg, #fffdf9 0, #f8f6f2 440px);
}

.doctor-dashboard-welcome{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    margin-bottom:32px;
}

.doctor-dashboard-welcome h1{
    margin:8px 0 10px;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:clamp(2.3rem, 4vw, 4.1rem);
    line-height:1;
    letter-spacing:-.045em;
}

.doctor-dashboard-welcome p{
    max-width:690px;
    margin:0;
    color:var(--text-light);
    font-size:1rem;
    line-height:1.7;
}

.doctor-dashboard-eyebrow{
    display:block;
    color:#a46d30;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.doctor-primary-action,
.doctor-upload-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
}

.doctor-primary-action svg,
.doctor-upload-btn svg{
    width:18px;
    height:18px;
}

.doctor-profile-shell{
    display:grid;
    grid-template-columns:minmax(280px, 330px) minmax(0, 1fr);
    gap:26px;
    align-items:start;
}

.doctor-profile-sidebar{
    position:sticky;
    top:112px;
    display:grid;
    gap:16px;
}

.doctor-profile-summary-card,
.doctor-status-card-compact,
.doctor-help-card,
.doctor-dashboard-panel{
    border:1px solid rgba(75,40,48,.08);
    box-shadow:0 18px 55px rgba(61,34,41,.07);
}

.doctor-profile-summary-card{
    position:relative;
    overflow:hidden;
    padding:30px 24px 24px;
    border-radius:28px;
    background:
        radial-gradient(circle at 50% -10%, rgba(214,161,92,.22), transparent 38%),
        #fff;
    text-align:center;
}

.doctor-profile-summary-card::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:5px;
    background:linear-gradient(90deg, var(--burgundy), var(--gold));
}

.doctor-photo-edit-link{
    display:inline-block;
    margin-bottom:17px;
    border-radius:50%;
    color:inherit;
    text-decoration:none;
}

.doctor-photo-edit-link:focus-visible{
    outline:3px solid rgba(110,24,56,.28);
    outline-offset:5px;
}

.doctor-photo-edit-link .doctor-hero-photo-wrap{
    position:relative;
    display:grid;
    place-items:center;
    width:132px;
    height:132px;
    overflow:hidden;
    border:4px solid #fff;
    border-radius:50%;
    background:linear-gradient(145deg, #f4dfc4, #ead9df);
    box-shadow:0 14px 32px rgba(110,24,56,.16);
}

.doctor-photo-edit-link .doctor-hero-photo,
.doctor-photo-edit-link .doctor-hero-initials{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.doctor-photo-edit-link .doctor-hero-photo{
    z-index:2;
    object-fit:cover;
}

.doctor-photo-edit-link .doctor-hero-initials{
    display:grid;
    place-items:center;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:2.45rem;
    font-weight:700;
}

.doctor-photo-edit-overlay{
    position:absolute;
    inset:0;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    background:rgba(37,15,24,.66);
    color:#fff;
    font-size:.78rem;
    font-weight:900;
    opacity:0;
    transform:scale(.94);
    transition:opacity .2s ease, transform .2s ease;
}

.doctor-photo-edit-overlay svg{
    width:18px;
    height:18px;
}

.doctor-photo-edit-link:hover .doctor-photo-edit-overlay,
.doctor-photo-edit-link:focus-visible .doctor-photo-edit-overlay{
    opacity:1;
    transform:scale(1);
}

.doctor-profile-summary-card h2{
    margin:11px 0 5px;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:1.65rem;
    line-height:1.15;
}

.doctor-profile-summary-card > p{
    min-height:24px;
    margin:0 0 19px;
    color:var(--text-light);
    font-size:.9rem;
    line-height:1.5;
}

.doctor-hero-status-badge{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    margin:0;
    padding:6px 11px;
    border:1px solid rgba(154,106,69,.15);
    border-radius:999px;
    background:#f5eee4;
    color:#8b633e;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.doctor-hero-status-badge.pending{
    border-color:#f2d99e;
    background:#fff6da;
    color:#8a6411;
}

.doctor-hero-status-badge.verified{
    border-color:#b9dfcb;
    background:#eaf8f0;
    color:#28714b;
}

.doctor-hero-status-badge.rejected{
    border-color:#f2bcbc;
    background:#fff0f0;
    color:#a33838;
}

.doctor-hero-status-badge.inactive{
    border-color:#d7d7d7;
    background:#f1f1f1;
    color:#646464;
}

.doctor-profile-edit-link{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    padding:12px 16px;
    border:1px solid rgba(110,24,56,.14);
    border-radius:15px;
    background:#fff9f6;
    color:var(--burgundy);
    text-decoration:none;
    font-size:.86rem;
    font-weight:900;
    transition:background .2s ease, transform .2s ease;
}

.doctor-profile-edit-link:hover{
    background:#f7ece8;
    transform:translateY(-1px);
}

.doctor-profile-edit-link svg{
    width:17px;
    height:17px;
}

.doctor-status-card-compact{
    display:block;
    padding:22px;
    border-radius:24px;
    background:#fff;
}

.doctor-card-label{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:12px;
    color:#a46d30;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.doctor-card-label svg{
    width:17px;
    height:17px;
}

.doctor-status-card-compact h2{
    margin:0 0 8px;
    color:var(--burgundy);
    font-size:1.25rem;
}

.doctor-status-card-compact > p{
    margin:0;
    color:var(--text-light);
    font-size:.88rem;
    line-height:1.6;
}

.doctor-status-card-compact .doctor-admin-note-box{
    margin-top:16px;
}

.doctor-help-card{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:13px;
    padding:20px;
    border-radius:24px;
    background:linear-gradient(145deg, #6e1838, #551129);
    color:#fff;
}

.doctor-help-icon{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:14px;
    background:rgba(255,255,255,.12);
    color:var(--gold);
}

.doctor-help-icon svg{
    width:20px;
    height:20px;
}

.doctor-help-card h3{
    margin:1px 0 5px;
    color:#fff;
    font-size:1rem;
}

.doctor-help-card p{
    margin:0;
    color:rgba(255,255,255,.7);
    font-size:.8rem;
    line-height:1.45;
}

.doctor-help-card > a{
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:39px;
    border-radius:12px;
    background:#fff;
    color:var(--burgundy);
    text-decoration:none;
    font-size:.82rem;
    font-weight:900;
}

.doctor-profile-content{
    display:grid;
    gap:20px;
}

.doctor-dashboard-panel{
    padding:27px;
    border-radius:28px;
    background:#fff;
}

.doctor-panel-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:22px;
    margin-bottom:23px;
}

.doctor-panel-heading h2{
    margin:6px 0 6px;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:1.65rem;
    line-height:1.15;
}

.doctor-panel-heading p{
    max-width:620px;
    margin:0;
    color:var(--text-light);
    font-size:.9rem;
    line-height:1.6;
}

.doctor-panel-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    gap:7px;
    padding:10px 13px;
    border:1px solid rgba(110,24,56,.13);
    border-radius:13px;
    background:#fff9f6;
    color:var(--burgundy);
    text-decoration:none;
    font-size:.8rem;
    font-weight:900;
}

.doctor-panel-action svg{
    width:16px;
    height:16px;
}

.doctor-progress-panel{
    overflow:hidden;
    background:
        radial-gradient(circle at 100% 0, rgba(214,161,92,.1), transparent 30%),
        #fff;
}

.doctor-profile-dashboard .doctor-progress-flow{
    display:grid;
    grid-template-columns:auto minmax(24px,1fr) auto minmax(24px,1fr) auto minmax(24px,1fr) auto minmax(24px,1fr) auto;
    align-items:start;
    gap:9px;
    padding:4px 0 0;
}

.doctor-profile-dashboard .doctor-progress-step{
    display:grid;
    justify-items:center;
    gap:9px;
    width:104px;
    padding:0;
    border:0;
    background:transparent;
    text-align:center;
}

.doctor-profile-dashboard .progress-circle{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:2px solid #e9e1dc;
    border-radius:50%;
    background:#fff;
    color:#9d9295;
}

.doctor-profile-dashboard .progress-circle svg{
    width:18px;
    height:18px;
}

.doctor-profile-dashboard .doctor-progress-step strong{
    display:block;
    color:#6d6265;
    font-size:.76rem;
    line-height:1.35;
}

.doctor-profile-dashboard .doctor-progress-step span{
    display:block;
    margin-top:3px;
    color:#a39a9c;
    font-size:.65rem;
    line-height:1.35;
}

.doctor-profile-dashboard .progress-line{
    width:100%;
    height:2px;
    margin-top:20px;
    border:0;
    background:#e9e1dc;
}

.doctor-profile-dashboard .doctor-progress-step.completed .progress-circle,
.doctor-profile-dashboard .progress-line.completed{
    border-color:#4f9a72;
    background:#4f9a72;
    color:#fff;
}

.doctor-profile-dashboard .doctor-progress-step.completed strong{
    color:#2d704e;
}

.doctor-profile-dashboard .doctor-progress-step.current .progress-circle{
    border-color:var(--gold);
    background:#fff8e9;
    color:var(--burgundy);
    box-shadow:0 0 0 6px rgba(214,161,92,.14);
}

.doctor-profile-dashboard .doctor-progress-step.current strong{
    color:var(--burgundy);
}

.doctor-profile-dashboard .doctor-progress-step.rejected-current .progress-circle{
    border-color:#c84d4d;
    background:#fff0f0;
    color:#a33838;
    box-shadow:0 0 0 6px rgba(200,77,77,.1);
}

.doctor-profile-dashboard .doctor-progress-step.rejected-current strong{
    color:#a33838;
}

.doctor-profile-dashboard .doctor-profile-details{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
    margin:0;
}

.doctor-profile-dashboard .doctor-detail-item{
    min-width:0;
    padding:16px 17px;
    border:1px solid rgba(75,40,48,.07);
    border-radius:16px;
    background:#fcfaf7;
}

.doctor-profile-dashboard .doctor-detail-item span{
    display:block;
    margin-bottom:6px;
    color:#988d90;
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.doctor-profile-dashboard .doctor-detail-item strong{
    display:block;
    overflow-wrap:anywhere;
    color:#3f3337;
    font-size:.9rem;
    line-height:1.5;
}

.doctor-dashboard-skeleton{
    min-height:76px;
    border-radius:16px;
    background:linear-gradient(100deg,#f4f0ec 30%,#faf8f5 50%,#f4f0ec 70%);
    background-size:300% 100%;
    animation:doctor-skeleton 1.4s infinite;
}

@keyframes doctor-skeleton{
    to{background-position:-150% 0}
}

.doctor-document-links{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

.doctor-document-link{
    display:grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    align-items:center;
    gap:12px;
    padding:15px;
    border:1px solid rgba(75,40,48,.08);
    border-radius:17px;
    background:#fcfaf7;
    color:inherit;
    text-decoration:none;
    transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.doctor-document-link:hover{
    border-color:rgba(110,24,56,.22);
    box-shadow:0 10px 25px rgba(61,34,41,.07);
    transform:translateY(-2px);
}

.doctor-document-link > span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:14px;
    background:#f3e8e4;
    color:var(--burgundy);
}

.doctor-document-link > span svg{
    width:20px;
    height:20px;
}

.doctor-document-link strong,
.doctor-document-link small{
    display:block;
}

.doctor-document-link strong{
    color:#46383d;
    font-size:.84rem;
}

.doctor-document-link small{
    margin-top:3px;
    color:#95898d;
    font-size:.7rem;
}

.doctor-document-link > svg{
    width:16px;
    height:16px;
    color:#aa9ca0;
}

.doctor-empty-documents{
    grid-column:1 / -1;
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:20px;
    border:1px dashed rgba(110,24,56,.2);
    border-radius:18px;
    background:#fffcf8;
}

.doctor-empty-documents > span{
    display:grid;
    place-items:center;
    flex:0 0 43px;
    height:43px;
    border-radius:14px;
    background:#f3e8e4;
    color:var(--burgundy);
}

.doctor-empty-documents > span svg{
    width:21px;
    height:21px;
}

.doctor-empty-documents strong{
    color:var(--burgundy);
    font-size:.91rem;
}

.doctor-empty-documents p{
    margin:5px 0 8px;
    color:var(--text-light);
    font-size:.78rem;
    line-height:1.5;
}

.doctor-empty-documents a{
    color:var(--burgundy);
    font-size:.78rem;
    font-weight:900;
}

.doctor-dashboard-support-strip{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:24px 26px;
    border-radius:26px;
    background:linear-gradient(135deg, #f0d3c7, #f7e8dc);
}

.doctor-dashboard-support-strip > div{
    display:flex;
    align-items:center;
    gap:15px;
}

.doctor-dashboard-support-strip > div > span{
    display:grid;
    place-items:center;
    flex:0 0 48px;
    height:48px;
    border-radius:16px;
    background:rgba(255,255,255,.68);
    color:var(--burgundy);
}

.doctor-dashboard-support-strip svg{
    width:23px;
    height:23px;
}

.doctor-dashboard-support-strip h2{
    margin:0 0 4px;
    color:var(--burgundy);
    font-size:1.08rem;
}

.doctor-dashboard-support-strip p{
    margin:0;
    color:#775f67;
    font-size:.83rem;
    line-height:1.45;
}

/*==================================================
DOCTOR ACCOUNT — EDIT PROFILE & UPLOADS
==================================================*/

.doctor-edit-back-link{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-bottom:28px;
    color:var(--burgundy);
    text-decoration:none;
    font-size:.82rem;
    font-weight:900;
}

.doctor-edit-back-link svg{
    width:17px;
    height:17px;
}

.doctor-edit-documents-card{
    margin-top:28px;
    margin-bottom:72px;
    padding:32px;
    border:1px solid rgba(75,40,48,.08);
    border-radius:30px;
    background:#fff;
    box-shadow:0 18px 55px rgba(61,34,41,.07);
}

.doctor-edit-documents-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:24px;
}

.doctor-edit-documents-heading h2{
    margin:6px 0 7px;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:clamp(1.75rem, 3vw, 2.45rem);
}

.doctor-edit-documents-heading p{
    max-width:700px;
    margin:0;
    color:var(--text-light);
    font-size:.91rem;
    line-height:1.65;
}

.doctor-edit-upload-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:14px;
}

.doctor-edit-upload-box{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:13px;
    min-height:104px;
    padding:17px;
    border:1px dashed rgba(110,24,56,.23);
    border-radius:18px;
    background:#fdfaf6;
    cursor:pointer;
    transition:border-color .2s ease, background .2s ease;
}

.doctor-edit-upload-box:hover,
.doctor-edit-upload-box:focus-within{
    border-color:var(--burgundy);
    background:#fff7f3;
}

.doctor-edit-upload-icon{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:14px;
    background:#f2e4df;
    color:var(--burgundy);
}

.doctor-edit-upload-icon svg{
    width:21px;
    height:21px;
}

.doctor-edit-upload-box strong,
.doctor-edit-upload-box small{
    display:block;
}

.doctor-edit-upload-box strong{
    color:#46383d;
    font-size:.88rem;
}

.doctor-edit-upload-box small{
    margin-top:5px;
    color:#95898d;
    font-size:.69rem;
    line-height:1.4;
}

.doctor-edit-upload-box input{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
    clip-path:inset(50%);
}

.doctor-edit-upload-box b{
    padding:6px 9px;
    border-radius:999px;
    background:#eee9e5;
    color:#7c7074;
    font-size:.65rem;
    white-space:nowrap;
}

.doctor-edit-upload-box b.uploaded{
    background:#e5f5ec;
    color:#28714b;
}

.doctor-edit-upload-box.has-file{
    border-style:solid;
    border-color:rgba(79,154,114,.45);
    background:#f5fbf7;
}

.doctor-edit-upload-actions{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:20px;
}

.doctor-edit-upload-actions .form-message{
    margin:0;
}

@media (hover:none), (pointer:coarse){
    .doctor-photo-edit-overlay{
        inset:auto 7px 7px auto;
        width:36px;
        height:36px;
        border:1px solid rgba(255,255,255,.75);
        border-radius:50%;
        opacity:.78;
        transform:none;
    }

    .doctor-photo-edit-overlay span{
        position:absolute;
        width:1px;
        height:1px;
        overflow:hidden;
        clip:rect(0 0 0 0);
    }
}

@media(max-width:1050px){
    .doctor-profile-shell{
        grid-template-columns:280px minmax(0,1fr);
    }

    .doctor-profile-dashboard .doctor-progress-flow{
        grid-template-columns:1fr;
        gap:0;
    }

    .doctor-profile-dashboard .doctor-progress-step{
        grid-template-columns:auto 1fr;
        justify-items:start;
        align-items:center;
        width:100%;
        text-align:left;
    }

    .doctor-profile-dashboard .doctor-progress-step > div:last-child{
        padding:10px 0;
    }

    .doctor-profile-dashboard .progress-line{
        width:2px;
        height:24px;
        margin:0 0 0 20px;
    }
}

@media(max-width:820px){
    .doctor-profile-dashboard{
        padding-top:112px;
    }

    .doctor-dashboard-welcome{
        align-items:flex-start;
    }

    .doctor-profile-shell{
        grid-template-columns:1fr;
    }

    .doctor-profile-sidebar{
        position:static;
        grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
    }

    .doctor-help-card{
        grid-column:1 / -1;
    }

    .doctor-profile-summary-card{
        grid-row:span 2;
    }
}

@media(max-width:640px){
    .doctor-profile-dashboard{
        padding-top:98px;
        padding-bottom:56px;
    }

    .doctor-dashboard-welcome{
        display:grid;
        margin-bottom:22px;
    }

    .doctor-primary-action{
        width:100%;
    }

    .doctor-profile-sidebar{
        grid-template-columns:1fr;
    }

    .doctor-profile-summary-card{
        grid-row:auto;
    }

    .doctor-dashboard-panel{
        padding:21px 17px;
        border-radius:23px;
    }

    .doctor-panel-heading,
    .doctor-edit-documents-heading{
        display:grid;
    }

    .doctor-panel-action{
        width:max-content;
    }

    .doctor-profile-dashboard .doctor-profile-details,
    .doctor-document-links,
    .doctor-edit-upload-grid{
        grid-template-columns:1fr;
    }

    .doctor-dashboard-support-strip{
        display:grid;
        padding:22px 18px;
    }

    .doctor-dashboard-support-strip > .btn{
        width:100%;
    }

    .doctor-edit-documents-card{
        width:calc(100% - 32px);
        margin-top:22px;
        margin-bottom:52px;
        padding:22px 17px;
        border-radius:24px;
    }

    .doctor-edit-upload-box{
        grid-template-columns:auto 1fr;
    }

    .doctor-edit-upload-box b{
        grid-column:2;
        justify-self:start;
    }

    .doctor-edit-upload-actions{
        display:grid;
    }

    .doctor-edit-upload-actions .doctor-upload-btn{
        width:100%;
    }
}

@media(prefers-reduced-motion:reduce){
    .doctor-dashboard-skeleton{
        animation:none;
    }

    .doctor-photo-edit-overlay,
    .doctor-document-link,
    .doctor-profile-edit-link{
        transition:none;
    }
}

/* Prevent old auth styles from centering the form vertically */
.register-page-enhanced .auth-card{
    margin-top:0 !important;
}

@media(max-width:1050px){

    .register-layout{
        grid-template-columns:1fr !important;
    }

    .register-brand-panel{
        max-width:100% !important;
        min-height:auto !important;
        position:relative !important;
        top:auto !important;
    }

    .register-form-card,
    .auth-card.register-form-card{
        max-width:100% !important;
    }

}

/*==================================================
DOCTOR ACCOUNT — STREAMLINED PROFESSIONAL PROFILE
==================================================*/

.doctor-public-profile-page{
    min-height:100vh;
    padding:92px 0 78px;
    background:#f7f5f1;
}

.doctor-public-cover{
    position:relative;
    height:232px;
    overflow:hidden;
    background:
        radial-gradient(circle at 15% 20%, rgba(214,161,92,.32), transparent 30%),
        radial-gradient(circle at 88% 35%, rgba(255,255,255,.1), transparent 24%),
        linear-gradient(135deg, #6e1838 0%, #4d0f27 72%, #35101e 100%);
}

.doctor-public-cover::before,
.doctor-public-cover::after{
    content:"";
    position:absolute;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
}

.doctor-public-cover::before{
    width:360px;
    height:360px;
    right:7%;
    top:-210px;
}

.doctor-public-cover::after{
    width:220px;
    height:220px;
    right:20%;
    bottom:-170px;
}

.doctor-public-cover .container{
    position:relative;
    height:100%;
}

.doctor-cover-mark{
    position:absolute;
    right:10px;
    bottom:-36px;
    color:rgba(255,255,255,.055);
    font-family:var(--font-serif);
    font-size:12rem;
    font-weight:700;
    line-height:1;
    letter-spacing:-.09em;
}

.doctor-public-identity{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:end;
    gap:24px;
    min-height:166px;
    margin-top:-78px;
    padding:24px 28px;
    border:1px solid rgba(75,40,48,.08);
    border-radius:28px;
    background:#fff;
    box-shadow:0 20px 58px rgba(55,29,38,.11);
}

.doctor-public-photo{
    margin:0 0 2px !important;
}

.doctor-public-photo .doctor-hero-photo-wrap{
    width:142px;
    height:142px;
    border-width:5px;
}

.doctor-public-title{
    padding-bottom:9px;
}

.doctor-public-name-line{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
}

.doctor-public-name-line h1{
    margin:0;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:clamp(2rem,3.2vw,3.1rem);
    line-height:1.05;
    letter-spacing:-.04em;
}

.doctor-public-title > p{
    margin:8px 0 11px;
    color:#75686c;
    font-size:.96rem;
    font-weight:650;
}

.doctor-public-availability{
    display:flex;
    align-items:center;
    gap:8px;
    color:#47755c;
    font-size:.78rem;
    font-weight:800;
}

.doctor-online-dot{
    width:9px;
    height:9px;
    border-radius:50%;
    background:#4f9a72;
    box-shadow:0 0 0 4px rgba(79,154,114,.12);
}

.doctor-public-actions{
    display:flex;
    align-items:center;
    gap:10px;
    padding-bottom:8px;
}

.doctor-public-actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    white-space:nowrap;
}

.doctor-public-actions svg{
    width:17px;
    height:17px;
}

.doctor-public-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,330px);
    gap:22px;
    align-items:start;
    margin-top:24px;
}

.doctor-public-main,
.doctor-public-sidebar{
    display:grid;
    gap:18px;
}

.doctor-public-sidebar{
    position:sticky;
    top:112px;
}

.doctor-public-card,
.doctor-public-status-card,
.doctor-public-progress-card,
.doctor-public-help-card{
    border:1px solid rgba(75,40,48,.08);
    border-radius:24px;
    background:#fff;
    box-shadow:0 14px 42px rgba(61,34,41,.055);
}

.doctor-public-card{
    padding:25px;
}

.doctor-public-card-heading{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:19px;
}

.doctor-public-card-icon{
    display:grid;
    place-items:center;
    flex:0 0 43px;
    height:43px;
    border-radius:14px;
    background:#f2e4df;
    color:var(--burgundy);
}

.doctor-public-card-icon svg{
    width:21px;
    height:21px;
}

.doctor-public-card-heading > div > span,
.doctor-progress-title > span,
.doctor-status-topline > span{
    display:block;
    margin-bottom:3px;
    color:#a46d30;
    font-size:.64rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.doctor-public-card-heading h2,
.doctor-progress-title h2{
    margin:0;
    color:var(--burgundy);
    font-family:var(--font-serif);
    font-size:1.42rem;
    line-height:1.15;
}

.doctor-about-text{
    margin:0;
    color:#5f5357;
    font-size:.94rem;
    line-height:1.8;
}

.doctor-interest-chips{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.doctor-interest-chip{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:8px 13px;
    border:1px solid rgba(110,24,56,.1);
    border-radius:999px;
    background:#fff8f4;
    color:var(--burgundy);
    font-size:.77rem;
    font-weight:800;
}

.doctor-interest-chip.muted{
    background:#f4f1ee;
    color:#8d8386;
}

.doctor-achievement-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
}

.doctor-achievement-item{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:12px;
    min-height:76px;
    padding:14px;
    border:1px solid rgba(75,40,48,.07);
    border-radius:17px;
    background:#fcfaf7;
}

.doctor-achievement-item > span{
    display:grid;
    place-items:center;
    width:39px;
    height:39px;
    border-radius:13px;
    background:#f2e4df;
    color:var(--burgundy);
}

.doctor-achievement-item > span svg{
    width:19px;
    height:19px;
}

.doctor-achievement-item strong,
.doctor-achievement-item small{
    display:block;
}

.doctor-achievement-item strong{
    color:#493b40;
    font-size:.82rem;
    line-height:1.35;
}

.doctor-achievement-item small{
    margin-top:4px;
    color:#94898c;
    font-size:.69rem;
    line-height:1.4;
}

.doctor-contact-card .doctor-profile-details{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
    margin:0;
}

.doctor-contact-card .doctor-detail-item{
    min-width:0;
    padding:14px 15px;
    border:1px solid rgba(75,40,48,.07);
    border-radius:15px;
    background:#fcfaf7;
}

.doctor-contact-card .doctor-detail-item span{
    display:block;
    margin-bottom:5px;
    color:#988d90;
    font-size:.62rem;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.doctor-contact-card .doctor-detail-item strong{
    display:block;
    overflow-wrap:anywhere;
    color:#493b40;
    font-size:.82rem;
    line-height:1.45;
}

.doctor-public-status-card{
    padding:23px;
    background:
        radial-gradient(circle at 100% 0,rgba(214,161,92,.13),transparent 40%),
        #fff;
}

.doctor-status-topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:13px;
}

.doctor-status-topline svg{
    width:20px;
    height:20px;
    color:var(--gold);
}

.doctor-public-status-card h2{
    margin:0 0 8px;
    color:var(--burgundy);
    font-size:1.25rem;
}

.doctor-public-status-card > p{
    margin:0;
    color:#786b70;
    font-size:.82rem;
    line-height:1.6;
}

.doctor-public-status-card .doctor-admin-note-box{
    margin-top:16px;
}

.doctor-public-progress-card{
    padding:23px;
}

.doctor-progress-title{
    margin-bottom:19px;
}

.doctor-public-progress-card .doctor-progress-flow{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
}

.doctor-public-progress-card .doctor-progress-step{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:12px;
    width:100%;
    padding:0;
    border:0;
    background:transparent;
    text-align:left;
}

.doctor-public-progress-card .progress-circle{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border:2px solid #e5ddda;
    border-radius:50%;
    background:#fff;
    color:#9a9093;
}

.doctor-public-progress-card .progress-circle svg{
    width:16px;
    height:16px;
}

.doctor-public-progress-card .doctor-progress-step strong{
    display:block;
    color:#64585c;
    font-size:.76rem;
    line-height:1.35;
}

.doctor-public-progress-card .doctor-progress-step span{
    display:block;
    margin-top:3px;
    color:#9c9295;
    font-size:.65rem;
}

.doctor-public-progress-card .progress-line{
    width:2px;
    height:21px;
    margin:0 0 0 17px;
    border:0;
    background:#e5ddda;
}

.doctor-public-progress-card .doctor-progress-step.completed .progress-circle,
.doctor-public-progress-card .progress-line.completed{
    border-color:#4f9a72;
    background:#4f9a72;
    color:#fff;
}

.doctor-public-progress-card .doctor-progress-step.completed strong{
    color:#2d704e;
}

.doctor-public-progress-card .doctor-progress-step.current .progress-circle{
    border-color:var(--gold);
    background:#fff8e9;
    color:var(--burgundy);
    box-shadow:0 0 0 5px rgba(214,161,92,.12);
}

.doctor-public-progress-card .doctor-progress-step.current strong{
    color:var(--burgundy);
}

.doctor-public-progress-card .doctor-progress-step.rejected-current .progress-circle{
    border-color:#c84d4d;
    background:#fff0f0;
    color:#a33838;
    box-shadow:0 0 0 5px rgba(200,77,77,.09);
}

.doctor-public-progress-card .doctor-progress-step.rejected-current strong{
    color:#a33838;
}

.doctor-public-help-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:12px;
    padding:20px;
    background:linear-gradient(145deg,#6e1838,#4d1027);
    color:#fff;
}

.doctor-public-help-card > span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:13px;
    background:rgba(255,255,255,.11);
    color:var(--gold);
}

.doctor-public-help-card > span svg{
    width:20px;
    height:20px;
}

.doctor-public-help-card h2{
    margin:1px 0 4px;
    color:#fff;
    font-size:.98rem;
}

.doctor-public-help-card p{
    margin:0;
    color:rgba(255,255,255,.7);
    font-size:.75rem;
    line-height:1.5;
}

.doctor-public-help-card > a{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    border-radius:12px;
    background:#fff;
    color:var(--burgundy);
    text-decoration:none;
    font-size:.78rem;
    font-weight:900;
}

@media(max-width:1050px){
    .doctor-public-identity{
        grid-template-columns:auto minmax(0,1fr);
        align-items:center;
    }

    .doctor-public-actions{
        grid-column:1/-1;
        justify-content:flex-end;
        padding:0;
    }
}

@media(max-width:860px){
    .doctor-public-layout{
        grid-template-columns:1fr;
    }

    .doctor-public-sidebar{
        position:static;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .doctor-public-progress-card{
        grid-row:span 2;
    }
}

@media(max-width:640px){
    .doctor-public-profile-page{
        padding-top:78px;
        padding-bottom:55px;
    }

    .doctor-public-cover{
        height:175px;
    }

    .doctor-cover-mark{
        font-size:7rem;
        bottom:-16px;
    }

    .doctor-public-identity{
        grid-template-columns:1fr;
        justify-items:center;
        margin-top:-62px;
        padding:20px 17px;
        text-align:center;
    }

    .doctor-public-photo .doctor-hero-photo-wrap{
        width:122px;
        height:122px;
    }

    .doctor-public-title{
        padding:0;
    }

    .doctor-public-name-line{
        justify-content:center;
    }

    .doctor-public-availability{
        justify-content:center;
    }

    .doctor-public-actions{
        display:grid;
        grid-column:auto;
        width:100%;
    }

    .doctor-public-actions .btn{
        width:100%;
    }

    .doctor-public-layout{
        margin-top:17px;
    }

    .doctor-public-card{
        padding:20px 17px;
        border-radius:21px;
    }

    .doctor-achievement-list,
    .doctor-contact-card .doctor-profile-details,
    .doctor-public-sidebar{
        grid-template-columns:1fr;
    }

    .doctor-public-progress-card{
        grid-row:auto;
    }
}

@media(max-width:640px){

    .register-page-enhanced{
        padding-top:96px !important;
    }

    .register-brand-panel{
        padding:28px;
        border-radius:28px;
    }

    .register-brand-panel h1{
        font-size:2.6rem;
    }

}

/*==================================================
DOCTOR PROFILE — COVER, HORIZONTAL JOURNEY & GLOBAL SOCIALS
==================================================*/

.doctor-public-cover.has-custom-cover{
    background-image:
        linear-gradient(90deg,rgba(45,14,27,.38),rgba(45,14,27,.13)),
        var(--doctor-cover-image);
    background-position:center;
    background-size:cover;
}

.doctor-public-cover.has-custom-cover .doctor-cover-mark{
    opacity:0;
}

.doctor-cover-controls{
    position:absolute;
    z-index:3;
    top:24px;
    right:0;
    display:flex;
    align-items:center;
    gap:9px;
}

.doctor-cover-change-button,
.doctor-cover-reset-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:40px;
    padding:9px 13px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:13px;
    background:rgba(34,12,22,.48);
    color:#fff;
    font:inherit;
    font-size:.75rem;
    font-weight:900;
    cursor:pointer;
    backdrop-filter:blur(10px);
    transition:background .2s ease,transform .2s ease;
}

.doctor-cover-change-button:hover,
.doctor-cover-reset-button:hover{
    background:rgba(34,12,22,.72);
    transform:translateY(-1px);
}

.doctor-cover-change-button svg,
.doctor-cover-reset-button svg{
    width:17px;
    height:17px;
}

.doctor-cover-file-input{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
}

.doctor-cover-file-input:focus-visible + .doctor-cover-reset-button,
.doctor-cover-change-button:has(+ .doctor-cover-file-input:focus-visible){
    outline:3px solid rgba(255,255,255,.55);
    outline-offset:3px;
}

.doctor-cover-message{
    position:absolute;
    z-index:3;
    top:74px;
    right:0;
    max-width:330px;
    margin:0;
    padding:7px 10px;
    border-radius:10px;
    background:rgba(34,12,22,.62);
    color:#fff;
    font-size:.7rem;
    font-weight:750;
    line-height:1.4;
    opacity:0;
    transform:translateY(-4px);
    pointer-events:none;
    transition:opacity .2s ease,transform .2s ease;
}

.doctor-cover-message:not(:empty){
    opacity:1;
    transform:translateY(0);
}

.doctor-public-actions .doctor-connect-action{
    border-color:var(--burgundy);
    background:var(--burgundy);
    color:#fff;
    box-shadow:0 12px 28px rgba(110,24,56,.16);
}

.doctor-public-actions .doctor-connect-action:hover{
    background:#57112b;
}

.doctor-public-actions .doctor-edit-action{
    border-color:rgba(110,24,56,.16);
    background:#fff;
    color:var(--burgundy);
}

.doctor-public-progress-wide{
    margin-top:22px;
    padding:24px 28px 27px;
}

.doctor-public-progress-wide .doctor-progress-title{
    margin-bottom:20px;
}

.doctor-public-progress-wide .doctor-progress-flow{
    display:grid;
    grid-template-columns:auto minmax(30px,1fr) auto minmax(30px,1fr) auto minmax(30px,1fr) auto minmax(30px,1fr) auto;
    align-items:start;
    gap:9px;
}

.doctor-public-progress-wide .doctor-progress-step{
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    gap:8px;
    width:112px;
    padding:0;
    border:0;
    background:transparent;
    text-align:center;
}

.doctor-public-progress-wide .doctor-progress-step > div:last-child{
    padding:0;
}

.doctor-public-progress-wide .progress-circle{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border:2px solid #e5ddda;
    border-radius:50%;
    background:#fff;
    color:#9a9093;
}

.doctor-public-progress-wide .progress-circle svg{
    width:17px;
    height:17px;
}

.doctor-public-progress-wide .doctor-progress-step strong{
    display:block;
    color:#64585c;
    font-size:.75rem;
    line-height:1.3;
}

.doctor-public-progress-wide .doctor-progress-step span{
    display:block;
    margin-top:3px;
    color:#9c9295;
    font-size:.64rem;
    line-height:1.35;
}

.doctor-public-progress-wide .progress-line{
    position:relative;
    width:100%;
    height:2px;
    margin:19px 0 0;
    border:0;
    background:#e5ddda;
}

.doctor-public-progress-wide .progress-line::after{
    right:-2px;
    left:auto;
    top:50%;
    bottom:auto;
    transform:translateY(-50%) rotate(45deg);
}

.doctor-public-progress-wide .doctor-progress-step.completed .progress-circle,
.doctor-public-progress-wide .progress-line.completed{
    border-color:#4f9a72;
    background:#4f9a72;
    color:#fff;
}

.doctor-public-progress-wide .doctor-progress-step.completed strong{
    color:#2d704e;
}

.doctor-public-progress-wide .doctor-progress-step.current .progress-circle{
    border-color:var(--gold);
    background:#fff8e9;
    color:var(--burgundy);
    box-shadow:0 0 0 5px rgba(214,161,92,.12);
}

.doctor-public-progress-wide .doctor-progress-step.current strong{
    color:var(--burgundy);
}

.doctor-public-progress-wide .doctor-progress-step.rejected-current .progress-circle{
    border-color:#c84d4d;
    background:#fff0f0;
    color:#a33838;
}

.doctor-public-progress-wide .doctor-progress-step.rejected-current strong{
    color:#a33838;
}

.site-footer .footer-socials{
    margin-top:20px;
}

@media(max-width:900px){
    .doctor-public-progress-wide .doctor-progress-flow{
        grid-template-columns:1fr;
        gap:0;
    }

    .doctor-public-progress-wide .doctor-progress-step{
        grid-template-columns:auto minmax(0,1fr);
        justify-items:start;
        align-items:center;
        width:100%;
        text-align:left;
    }

    .doctor-public-progress-wide .doctor-progress-step > div:last-child{
        padding:8px 0;
    }

    .doctor-public-progress-wide .progress-line{
        width:2px;
        height:22px;
        margin:0 0 0 19px;
    }

    .doctor-public-progress-wide .progress-line::after{
        right:auto;
        left:50%;
        top:auto;
        bottom:-1px;
        transform:translateX(-50%) rotate(135deg);
    }

    .doctor-public-sidebar{
        grid-template-columns:1fr;
    }
}

@media(max-width:640px){
    .doctor-cover-controls{
        top:16px;
        right:16px;
    }

    .doctor-cover-message{
        top:65px;
        right:16px;
        left:16px;
        max-width:none;
    }

    .doctor-cover-change-button span{
        position:absolute;
        width:1px;
        height:1px;
        overflow:hidden;
        clip:rect(0 0 0 0);
    }

    .doctor-cover-change-button,
    .doctor-cover-reset-button{
        min-width:40px;
        padding:9px 11px;
    }

    .doctor-public-progress-wide{
        width:calc(100% - 32px);
        padding:21px 18px;
    }
}

/*==================================================
DOCTOR HOME DASHBOARD & OPPORTUNITY MATCHING
==================================================*/

.sr-only{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}

.doctor-home-dashboard-page{
    padding-bottom:84px;
    background:
        radial-gradient(circle at 7% 32%,rgba(208,168,106,.09),transparent 25%),
        #f7f5f2;
}

.doctor-dashboard-cover{
    min-height:230px;
}

.doctor-dashboard-identity{
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:24px;
    min-height:154px;
    margin-top:-77px;
    padding:24px 28px;
    border:1px solid rgba(110,24,56,.08);
    border-radius:28px;
    background:rgba(255,255,255,.97);
    box-shadow:0 24px 60px rgba(52,33,39,.13);
}

.doctor-dashboard-identity .doctor-public-photo{
    margin-top:0;
}

.doctor-dashboard-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.doctor-dashboard-actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:48px;
}

.doctor-dashboard-actions svg{
    width:17px;
    height:17px;
}

.doctor-opportunity-workspace{
    margin-top:30px;
    padding:30px;
    border:1px solid rgba(110,24,56,.08);
    border-radius:28px;
    background:#fff;
    box-shadow:0 20px 50px rgba(66,45,52,.08);
}

.doctor-opportunity-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    padding-bottom:23px;
    border-bottom:1px solid #eee7e4;
}

.doctor-opportunity-heading h2{
    margin:7px 0 7px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:clamp(1.7rem,3vw,2.25rem);
    line-height:1.1;
}

.doctor-opportunity-heading p{
    max-width:690px;
    margin:0;
    color:#776d70;
    font-size:.91rem;
    line-height:1.65;
}

.doctor-opportunity-tools{
    display:grid;
    justify-items:end;
    gap:10px;
    flex:0 0 auto;
}

.doctor-opportunity-filter{
    min-width:205px;
    height:44px;
    padding:0 38px 0 14px;
    border:1px solid #e7ddda;
    border-radius:12px;
    background:#fbf9f7;
    color:#4e4145;
    font:inherit;
    font-size:.78rem;
    font-weight:700;
}

.doctor-update-preferences-link{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--burgundy);
    font-size:.73rem;
    font-weight:750;
}

.doctor-update-preferences-link svg{
    width:15px;
    height:15px;
}

.doctor-opportunity-summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:54px;
    padding:13px 2px 12px;
    color:#5f5256;
    font-size:.76rem;
}

.doctor-opportunity-summary span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-weight:750;
}

.doctor-opportunity-summary small{
    color:#968b8e;
    text-align:right;
}

.doctor-opportunity-summary svg{
    width:17px;
    height:17px;
    color:var(--gold);
}

.doctor-opportunity-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.doctor-opportunity-card{
    display:flex;
    flex-direction:column;
    min-height:360px;
    padding:22px;
    border:1px solid #ece5e2;
    border-radius:20px;
    background:linear-gradient(150deg,#fff 0%,#fff 74%,#fbf7f2 100%);
    box-shadow:0 11px 24px rgba(72,52,58,.055);
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

.doctor-opportunity-card:hover{
    transform:translateY(-3px);
    border-color:rgba(110,24,56,.18);
    box-shadow:0 17px 32px rgba(72,52,58,.1);
}

.doctor-opportunity-card-top{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:start;
    gap:12px;
}

.doctor-opportunity-hospital-icon{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:14px;
    background:#f5e9ed;
    color:var(--burgundy);
}

.doctor-opportunity-hospital-icon svg{
    width:20px;
    height:20px;
}

.doctor-opportunity-kicker{
    display:block;
    margin-bottom:4px;
    color:#a36b2c;
    font-size:.64rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.doctor-opportunity-card h3{
    margin:0;
    color:#3e3135;
    font-size:1rem;
    line-height:1.35;
}

.doctor-opportunity-card-top p{
    display:flex;
    align-items:center;
    gap:5px;
    margin:7px 0 0;
    color:#867b7e;
    font-size:.72rem;
}

.doctor-opportunity-card-top p svg{
    width:13px;
    height:13px;
}

.doctor-urgency-badge{
    padding:6px 9px;
    border-radius:999px;
    background:#fff3dc;
    color:#8c5a16;
    font-size:.61rem;
    font-weight:800;
    white-space:nowrap;
}

.doctor-match-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:18px 0;
}

.doctor-match-tag{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:6px 9px;
    border-radius:999px;
    background:#edf7f0;
    color:#347451;
    font-size:.62rem;
    font-weight:800;
}

.doctor-match-tag.location{
    background:#eef3fb;
    color:#466886;
}

.doctor-match-tag.role{
    background:#f5edf7;
    color:#754a80;
}

.doctor-match-tag svg{
    width:11px;
    height:11px;
}

.doctor-opportunity-meta{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin:0;
}

.doctor-opportunity-meta div{
    min-width:0;
    padding:11px 12px;
    border:1px solid #eee8e5;
    border-radius:12px;
    background:#fbfaf8;
}

.doctor-opportunity-meta dt{
    margin-bottom:4px;
    color:#9a8d91;
    font-size:.57rem;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.doctor-opportunity-meta dd{
    margin:0;
    color:#4d4144;
    font-size:.71rem;
    font-weight:750;
    line-height:1.4;
}

.doctor-opportunity-note{
    margin:14px 0 0;
    color:#756a6d;
    font-size:.72rem;
    line-height:1.55;
}

.doctor-opportunity-card-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:auto;
    padding-top:18px;
}

.doctor-opportunity-card-footer>span{
    max-width:180px;
    color:#9c9093;
    font-size:.61rem;
    line-height:1.4;
}

.doctor-opportunity-connect{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:40px;
    padding:9px 13px;
    font-size:.7rem;
}

.doctor-opportunity-connect svg{
    width:14px;
    height:14px;
}

.doctor-opportunity-empty{
    display:grid;
    justify-items:center;
    max-width:610px;
    margin:24px auto 0;
    padding:40px 24px;
    text-align:center;
}

.doctor-opportunity-empty>span{
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    border-radius:18px;
    background:#f5e9ed;
    color:var(--burgundy);
}

.doctor-opportunity-empty h3{
    margin:16px 0 7px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.45rem;
}

.doctor-opportunity-empty p{
    margin:0 0 18px;
    color:#807477;
    font-size:.83rem;
    line-height:1.65;
}

.doctor-opportunity-skeleton{
    min-height:330px;
    border-color:transparent;
    background:linear-gradient(100deg,#f4f1ef 30%,#faf8f6 48%,#f4f1ef 66%);
    background-size:220% 100%;
    animation:doctorOpportunityLoading 1.35s ease-in-out infinite;
}

@keyframes doctorOpportunityLoading{
    from{background-position:120% 0}
    to{background-position:-120% 0}
}

.doctor-edit-heading-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

/*==================================================
DOCTOR CV BUILDER
==================================================*/

.doctor-cv-page{
    min-height:100vh;
    padding:62px 0 88px;
    background:
        radial-gradient(circle at 88% 8%,rgba(110,24,56,.08),transparent 29%),
        #f7f5f2;
}

.doctor-cv-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:28px;
}

.doctor-cv-heading h1{
    max-width:720px;
    margin:10px 0 10px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:clamp(2rem,4.2vw,3.3rem);
    line-height:1.05;
}

.doctor-cv-heading>div:first-child>p{
    max-width:790px;
    margin:0;
    color:#766a6e;
    font-size:.92rem;
    line-height:1.7;
}

.doctor-cv-heading-note{
    display:flex;
    align-items:flex-start;
    gap:11px;
    max-width:350px;
    padding:16px;
    border:1px solid rgba(110,24,56,.12);
    border-radius:16px;
    background:#fff;
    color:var(--burgundy);
    box-shadow:0 12px 30px rgba(70,48,55,.07);
}

.doctor-cv-heading-note svg{
    flex:0 0 auto;
    width:20px;
    height:20px;
}

.doctor-cv-heading-note strong,
.doctor-cv-heading-note span{
    display:block;
}

.doctor-cv-heading-note strong{
    margin-bottom:4px;
    font-size:.76rem;
}

.doctor-cv-heading-note span{
    color:#867a7d;
    font-size:.65rem;
    line-height:1.5;
}

.doctor-cv-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(390px,.88fr);
    align-items:start;
    gap:25px;
}

.doctor-cv-editor,
.doctor-cv-preview-shell{
    border:1px solid rgba(110,24,56,.08);
    border-radius:24px;
    background:#fff;
    box-shadow:0 20px 48px rgba(62,42,48,.08);
}

.doctor-cv-editor{
    padding:26px;
}

.doctor-cv-editor-title,
.doctor-cv-preview-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.doctor-cv-editor-title{
    margin-bottom:20px;
    padding-bottom:18px;
    border-bottom:1px solid #eee7e4;
}

.doctor-cv-editor-title span,
.doctor-cv-preview-toolbar div>span{
    display:block;
    margin-bottom:4px;
    color:#b17a3c;
    font-size:.59rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.doctor-cv-editor-title h2,
.doctor-cv-preview-toolbar h2{
    margin:0;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.4rem;
}

.doctor-cv-profile-summary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin-bottom:22px;
}

.doctor-cv-profile-summary div{
    padding:12px;
    border:1px solid #eee7e4;
    border-radius:12px;
    background:#fbfaf8;
}

.doctor-cv-profile-summary span,
.doctor-cv-profile-summary strong{
    display:block;
}

.doctor-cv-profile-summary span{
    margin-bottom:4px;
    color:#9b8f92;
    font-size:.56rem;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.doctor-cv-profile-summary strong{
    overflow-wrap:anywhere;
    color:#4b3f42;
    font-size:.72rem;
    line-height:1.4;
}

.doctor-cv-editor .form-group{
    margin-bottom:18px;
}

.doctor-cv-editor .form-group small{
    display:block;
    margin-top:6px;
    color:#978b8e;
    font-size:.62rem;
}

.doctor-cv-consent{
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin:3px 0 16px;
    padding:14px;
    border:1px solid #eadfdb;
    border-radius:13px;
    background:#fbf8f6;
    cursor:pointer;
}

.doctor-cv-consent input{
    width:17px;
    height:17px;
    margin-top:1px;
    accent-color:var(--burgundy);
}

.doctor-cv-consent strong,
.doctor-cv-consent small{
    display:block;
}

.doctor-cv-consent strong{
    color:#514448;
    font-size:.72rem;
}

.doctor-cv-consent small{
    margin-top:3px;
    color:#8f8387;
    font-size:.61rem;
    line-height:1.5;
}

.doctor-cv-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin-top:18px;
}

.doctor-cv-actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.doctor-cv-actions svg{
    width:17px;
    height:17px;
}

.doctor-cv-preview-shell{
    position:sticky;
    top:96px;
    overflow:hidden;
}

.doctor-cv-preview-toolbar{
    padding:17px 20px;
    border-bottom:1px solid #eadfdb;
    background:#fff;
}

.doctor-cv-preview-toolbar>span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 10px;
    border-radius:999px;
    background:#f4e9ed;
    color:var(--burgundy);
    font-size:.62rem;
    font-weight:800;
}

.doctor-cv-preview-toolbar svg{
    width:14px;
    height:14px;
}

.doctor-cv-preview{
    min-height:740px;
    margin:20px;
    padding:0 30px 32px;
    border:1px solid #e5ddda;
    background:#fff;
    box-shadow:0 11px 30px rgba(40,31,34,.09);
}

.doctor-cv-preview>header{
    margin:0 -30px 24px;
    padding:28px 30px 22px;
    background:var(--burgundy);
    color:#fff;
}

.doctor-cv-preview>header h2{
    margin:0;
    font-family:"Playfair Display",serif;
    font-size:1.65rem;
}

.doctor-cv-preview>header p{
    margin:6px 0 10px;
    color:#f5dfe7;
    font-size:.72rem;
    line-height:1.45;
}

.doctor-cv-preview>header div{
    color:#fff;
    font-size:.59rem;
    line-height:1.5;
}

.doctor-cv-preview section{
    margin-top:20px;
}

.doctor-cv-preview section h3{
    margin:0 0 9px;
    padding-bottom:5px;
    border-bottom:2px solid #d2a15d;
    color:var(--burgundy);
    font-size:.65rem;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.doctor-cv-preview section p,
.doctor-cv-preview section li,
.doctor-cv-preview section div{
    color:#554a4d;
    font-size:.62rem;
    line-height:1.65;
}

.doctor-cv-preview section>p{
    margin:0;
    white-space:pre-line;
}

.doctor-cv-preview section div p{
    margin:0 0 3px;
}

.doctor-cv-preview ul{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:3px 20px;
    margin:0;
    padding-left:16px;
}

.doctor-cv-preview .preview-placeholder{
    opacity:.48;
}

@media(max-width:1080px){
    .doctor-dashboard-identity{
        grid-template-columns:auto minmax(0,1fr);
    }

    .doctor-dashboard-actions{
        grid-column:1/-1;
        justify-content:flex-start;
        padding-left:150px;
    }

    .doctor-cv-layout{
        grid-template-columns:1fr;
    }

    .doctor-cv-preview-shell{
        position:static;
    }
}

@media(max-width:800px){
    .doctor-opportunity-heading,
    .doctor-cv-heading{
        align-items:stretch;
        flex-direction:column;
    }

    .doctor-opportunity-tools{
        justify-items:start;
    }

    .doctor-opportunity-grid{
        grid-template-columns:1fr;
    }

    .doctor-opportunity-summary{
        align-items:flex-start;
        flex-direction:column;
    }

    .doctor-opportunity-summary small{
        text-align:left;
    }
}

@media(max-width:640px){
    .doctor-home-dashboard-page{
        padding-bottom:58px;
    }

    .doctor-dashboard-cover{
        min-height:185px;
    }

    .doctor-dashboard-identity{
        grid-template-columns:1fr;
        justify-items:center;
        width:calc(100% - 32px);
        margin-top:-52px;
        padding:20px 18px;
        text-align:center;
    }

    .doctor-dashboard-identity .doctor-public-name-line{
        justify-content:center;
    }

    .doctor-dashboard-identity .doctor-public-availability{
        justify-content:center;
    }

    .doctor-dashboard-actions{
        grid-column:auto;
        justify-content:center;
        width:100%;
        padding-left:0;
    }

    .doctor-dashboard-actions .btn{
        flex:1 1 140px;
    }

    .doctor-opportunity-workspace{
        width:calc(100% - 32px);
        margin-top:20px;
        padding:20px 16px;
        border-radius:22px;
    }

    .doctor-opportunity-filter{
        width:100%;
        min-width:0;
    }

    .doctor-opportunity-tools{
        width:100%;
    }

    .doctor-opportunity-card{
        min-height:0;
        padding:17px;
    }

    .doctor-opportunity-card-top{
        grid-template-columns:auto minmax(0,1fr);
    }

    .doctor-urgency-badge{
        grid-column:2;
        justify-self:start;
    }

    .doctor-opportunity-meta{
        grid-template-columns:1fr;
    }

    .doctor-opportunity-card-footer{
        align-items:stretch;
        flex-direction:column;
    }

    .doctor-opportunity-connect{
        justify-content:center;
    }

    .doctor-cv-page{
        padding:38px 0 58px;
    }

    .doctor-cv-heading,
    .doctor-cv-layout{
        width:calc(100% - 32px);
    }

    .doctor-cv-editor{
        padding:19px 16px;
        border-radius:20px;
    }

    .doctor-cv-editor-title{
        align-items:flex-start;
        flex-direction:column;
    }

    .doctor-cv-profile-summary{
        grid-template-columns:1fr;
    }

    .doctor-cv-actions{
        flex-direction:column;
    }

    .doctor-cv-preview{
        min-height:0;
        margin:12px;
        padding:0 20px 25px;
    }

    .doctor-cv-preview>header{
        margin:0 -20px 20px;
        padding:24px 20px 19px;
    }

    .doctor-cv-preview ul{
        grid-template-columns:1fr;
    }
}

/* Doctor opportunity enquiry */

body.doctor-interest-open{
    overflow:hidden;
}

.doctor-interest-dialog{
    width:min(620px,calc(100% - 32px));
    max-height:min(88vh,820px);
    padding:0;
    border:0;
    border-radius:24px;
    background:#fff;
    color:#493d41;
    box-shadow:0 34px 90px rgba(35,18,25,.3);
}

.doctor-interest-dialog::backdrop{
    background:rgba(32,15,22,.62);
    backdrop-filter:blur(7px);
}

.doctor-interest-form{
    position:relative;
    padding:28px;
}

.doctor-interest-close{
    position:absolute;
    top:16px;
    right:16px;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:1px solid #eadfdb;
    border-radius:50%;
    background:#fff;
    color:var(--burgundy);
    cursor:pointer;
}

.doctor-interest-close svg{
    width:17px;
    height:17px;
}

.doctor-interest-heading{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding-right:34px;
}

.doctor-interest-heading>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:46px;
    height:46px;
    border-radius:15px;
    background:var(--burgundy);
    color:#fff;
}

.doctor-interest-heading>span svg{
    width:20px;
    height:20px;
}

.doctor-interest-heading small{
    display:block;
    margin-bottom:4px;
    color:#b07a3e;
    font-size:.6rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.doctor-interest-heading h2{
    margin:0;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.5rem;
}

.doctor-interest-heading p{
    margin:6px 0 0;
    color:#84787c;
    font-size:.72rem;
    line-height:1.55;
}

.doctor-interest-job{
    margin:20px 0 14px;
    padding:15px 16px;
    border-left:4px solid var(--gold);
    border-radius:0 14px 14px 0;
    background:#fbf7f2;
}

.doctor-interest-job span,
.doctor-interest-job strong,
.doctor-interest-job small{
    display:block;
}

.doctor-interest-job span{
    margin-bottom:4px;
    color:#9b8e91;
    font-size:.58rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.doctor-interest-job strong{
    color:#4c3f43;
    font-size:.82rem;
}

.doctor-interest-job small{
    margin-top:3px;
    color:#7f7276;
    font-size:.68rem;
}

.doctor-interest-identity{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-bottom:17px;
}

.doctor-interest-identity div{
    min-width:0;
    padding:11px 12px;
    border:1px solid #eee7e4;
    border-radius:11px;
    background:#fff;
}

.doctor-interest-identity span,
.doctor-interest-identity strong{
    display:block;
}

.doctor-interest-identity span{
    margin-bottom:3px;
    color:#9b8f92;
    font-size:.55rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.doctor-interest-identity strong{
    overflow-wrap:anywhere;
    color:#514448;
    font-size:.68rem;
    line-height:1.4;
}

.doctor-interest-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin-top:16px;
}

.doctor-interest-actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
}

.doctor-interest-actions svg{
    width:16px;
    height:16px;
}

/* CV contact bezel and profile photo */

.doctor-cv-design-controls{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(190px,.62fr);
    gap:10px;
    margin:3px 0 12px;
}

.doctor-cv-design-controls .doctor-cv-consent{
    margin:0;
}

.doctor-cv-colour{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px;
    border:1px solid #eadfdb;
    border-radius:13px;
    background:#fbf8f6;
    cursor:pointer;
}

.doctor-cv-colour strong,
.doctor-cv-colour small{
    display:block;
}

.doctor-cv-colour strong{
    color:#514448;
    font-size:.72rem;
}

.doctor-cv-colour small{
    margin-top:3px;
    color:#8f8387;
    font-size:.61rem;
    line-height:1.5;
}

.doctor-cv-colour input{
    flex:0 0 auto;
    width:42px;
    height:42px;
    padding:3px;
    border:1px solid #d9cdca;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
}

.doctor-cv-contact-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 12px;
    margin-bottom:4px;
    padding:15px;
    border:1px solid #eadfdb;
    border-radius:13px;
    background:#fff;
}

.doctor-cv-contact-fields .full-width{
    grid-column:1/-1;
}

.doctor-cv-preview{
    --cv-sidebar-color:#661836;
    --cv-sidebar-text:#fff;
    display:grid;
    grid-template-columns:34% minmax(0,66%);
    min-height:740px;
    padding:0;
    overflow:hidden;
}

.doctor-cv-preview-sidebar{
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:28px 18px 20px;
    background:var(--cv-sidebar-color);
    color:var(--cv-sidebar-text);
}

.doctor-cv-preview-photo{
    position:relative;
    display:grid;
    place-items:center;
    width:104px;
    height:104px;
    margin:0 auto 28px;
    overflow:hidden;
    border:4px solid color-mix(in srgb,var(--cv-sidebar-text) 82%,transparent);
    border-radius:50%;
    background:color-mix(in srgb,var(--cv-sidebar-text) 92%,transparent);
    color:var(--cv-sidebar-color);
    font-family:"Playfair Display",serif;
    font-size:1.8rem;
    font-weight:700;
}

.doctor-cv-preview-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.doctor-cv-preview-contact h3{
    margin:0 0 15px;
    padding-bottom:7px;
    border-bottom:1px solid color-mix(in srgb,var(--cv-sidebar-text) 52%,transparent);
    color:inherit;
    font-size:.66rem;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.doctor-cv-preview-contact div{
    margin-bottom:16px;
}

.doctor-cv-preview-contact span,
.doctor-cv-preview-contact strong{
    display:block;
    color:inherit;
}

.doctor-cv-preview-contact span{
    margin-bottom:4px;
    font-size:.51rem;
    font-weight:800;
    letter-spacing:.08em;
    opacity:.72;
    text-transform:uppercase;
}

.doctor-cv-preview-contact strong{
    overflow-wrap:anywhere;
    font-size:.58rem;
    line-height:1.55;
}

.doctor-cv-preview-sidebar-brand{
    margin-top:auto;
    padding-top:20px;
    color:inherit;
    font-size:.56rem;
    font-weight:800;
    letter-spacing:.13em;
    text-align:center;
    text-transform:uppercase;
    opacity:.82;
}

.doctor-cv-preview-main{
    min-width:0;
    padding:34px 26px 30px;
}

.doctor-cv-preview-main>header{
    padding-bottom:18px;
    border-bottom:1px solid #e6ddda;
}

.doctor-cv-preview-main>header h2{
    margin:0;
    color:var(--cv-sidebar-color);
    font-family:"Playfair Display",serif;
    font-size:1.65rem;
    line-height:1.15;
}

.doctor-cv-preview-main>header p{
    margin:7px 0 0;
    color:#756a6e;
    font-size:.68rem;
    line-height:1.5;
}

.doctor-cv-preview-main section h3{
    color:var(--cv-sidebar-color);
}

@media(max-width:640px){
    .doctor-interest-dialog.doctor-interest-light{
        width:100%;
        max-width:none;
        height:100dvh;
        max-height:none;
        margin:0;
        border-radius:0;
    }

    .doctor-interest-dialog.doctor-interest-light .doctor-interest-form{
        min-height:100%;
        padding:22px 16px;
    }

    .doctor-interest-identity{
        grid-template-columns:1fr;
    }

    .doctor-interest-actions{
        flex-direction:column-reverse;
    }

    .doctor-interest-actions .btn{
        width:100%;
    }

    .doctor-cv-design-controls,
    .doctor-cv-contact-fields{
        grid-template-columns:1fr;
    }

    .doctor-cv-contact-fields .full-width{
        grid-column:auto;
    }

    .doctor-cv-preview{
        grid-template-columns:37% minmax(0,63%);
    }

    .doctor-cv-preview-sidebar{
        padding:20px 9px 14px;
    }

    .doctor-cv-preview-photo{
        width:68px;
        height:68px;
        margin-bottom:20px;
        border-width:3px;
        font-size:1.2rem;
    }

    .doctor-cv-preview-main{
        padding:25px 13px 22px;
    }

    .doctor-cv-preview-main>header h2{
        font-size:1.1rem;
    }

    .doctor-cv-preview-main section p,
    .doctor-cv-preview-main section li,
    .doctor-cv-preview-main section div{
        font-size:.53rem;
    }
}

/*==================================================
DOCTOR PROFILE — VERIFICATION & APPLICATION UPDATES
==================================================*/

.doctor-verification-card .doctor-status-topline>span{
    color:#397153;
}

.doctor-verification-card .doctor-status-topline svg{
    color:#4f936c;
}

.doctor-applications-panel{
    padding:23px;
    transition:border-color .2s ease,box-shadow .2s ease;
}

.doctor-applications-panel.has-unread-applications{
    border-color:rgba(110,24,56,.34);
    box-shadow:0 18px 44px rgba(92,22,49,.16);
}

.doctor-applications-panel>p{
    margin:0;
    color:#786b70;
    font-size:.76rem;
    line-height:1.58;
}

.doctor-application-wait-note{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:13px;
    padding:11px 12px;
    border:1px solid rgba(188,132,61,.22);
    border-radius:13px;
    background:#fbf6ee;
}

.doctor-application-wait-note svg{
    flex:0 0 auto;
    width:16px;
    height:16px;
    margin-top:2px;
    color:#a7733b;
}

.doctor-application-wait-note p{
    margin:0;
    color:#735f4c;
    font-size:.61rem;
    font-weight:650;
    line-height:1.55;
}

.doctor-application-updates{
    display:grid;
    gap:10px;
    max-height:520px;
    margin-top:16px;
    padding-right:2px;
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:rgba(110,24,56,.28) transparent;
}

.doctor-application-item{
    padding:14px;
    border:1px solid #e9dfdc;
    border-radius:16px;
    background:#fbfaf8;
    color:#4d4144;
    transition:background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.doctor-application-item.unread{
    border-color:#5b132d;
    background:
        radial-gradient(circle at 100% 0,rgba(219,163,86,.18),transparent 38%),
        linear-gradient(145deg,#741d3e,#4f1028);
    color:#fff;
    box-shadow:0 13px 28px rgba(83,17,43,.24);
}

.doctor-application-item-top,
.doctor-application-item-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:9px;
}

.doctor-application-status{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:5px 8px;
    border-radius:999px;
    background:#efe5e8;
    color:var(--burgundy);
    font-size:.56rem;
    font-weight:850;
    line-height:1.2;
}

.doctor-application-item.unread .doctor-application-status{
    background:rgba(255,255,255,.14);
    color:#fff;
}

.doctor-application-status.status-confirmed,
.doctor-application-status.status-assigned{
    background:#e7f4eb;
    color:#2f6f4d;
}

.doctor-application-status.status-rejected,
.doctor-application-status.status-cancelled,
.doctor-application-status.status-closed{
    background:#f4e8e8;
    color:#914040;
}

.doctor-application-new,
.doctor-application-seen{
    display:inline-flex;
    align-items:center;
    gap:4px;
    font-size:.55rem;
    font-weight:850;
}

.doctor-application-new{
    color:#ffe1aa;
}

.doctor-application-new.follow-up{
    color:#fff0c9;
}

.doctor-application-new svg,
.doctor-application-seen svg{
    width:12px;
    height:12px;
}

.doctor-application-date{
    color:#9a8e91;
    font-size:.55rem;
}

.doctor-application-item h3{
    margin:11px 0 6px;
    color:var(--burgundy);
    font-size:.75rem;
    line-height:1.4;
}

.doctor-application-item>p{
    margin:0;
    color:#74686c;
    font-size:.67rem;
    line-height:1.58;
}

.doctor-application-item.unread h3,
.doctor-application-item.unread>p{
    color:#fff;
}

.doctor-application-item-footer{
    align-items:flex-end;
    margin-top:13px;
    padding-top:11px;
    border-top:1px solid #ebe2df;
}

.doctor-application-item-footer.has-follow-up-time{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
}

.doctor-application-item.unread .doctor-application-item-footer{
    border-top-color:rgba(255,255,255,.18);
}

.doctor-application-item-footer small{
    overflow-wrap:anywhere;
    color:#9b8e92;
    font-size:.52rem;
    line-height:1.35;
}

.doctor-application-item-footer.has-follow-up-time>small{
    flex:none;
    overflow-wrap:normal;
    white-space:nowrap;
}

.doctor-application-item.unread .doctor-application-item-footer small{
    color:rgba(255,255,255,.68);
}

.doctor-application-seen{
    color:#5b8069;
}

.doctor-application-okay,
.doctor-application-follow-up{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    min-width:68px;
    min-height:34px;
    padding:7px 12px;
    border:0;
    border-radius:10px;
    background:#fff;
    color:var(--burgundy);
    font:inherit;
    font-size:.62rem;
    font-weight:850;
    cursor:pointer;
    box-shadow:0 7px 16px rgba(31,7,16,.17);
}

.doctor-application-follow-up{
    border:1px solid rgba(110,24,56,.18);
    background:var(--burgundy);
    color:#fff;
}

.doctor-application-follow-up svg,
.doctor-application-follow-up-sent svg,
.doctor-application-follow-up-time svg{
    width:12px;
    height:12px;
}

.doctor-application-follow-up-sent,
.doctor-application-follow-up-time{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    gap:4px;
    color:#7a6d71;
    font-size:.53rem;
    font-weight:800;
    line-height:1.35;
    text-align:right;
}

.doctor-application-follow-up-time{
    display:inline-flex;
    align-items:center;
    flex:0 0 auto;
    gap:6px;
    margin-left:0;
    text-align:left;
    white-space:nowrap;
}

.doctor-application-follow-up-time>svg{
    margin-top:0;
}

.doctor-application-follow-up-copy{
    display:inline-flex;
    align-items:baseline;
    gap:5px;
    white-space:nowrap;
}

.doctor-application-follow-up-copy>span{
    color:#9a8e91;
    font-size:.46rem;
    font-weight:800;
    letter-spacing:.045em;
    line-height:1.2;
    text-transform:uppercase;
}

.doctor-application-follow-up-copy>strong{
    color:#675b5f;
    font-size:.56rem;
    font-weight:800;
    line-height:1.35;
    white-space:nowrap;
}

.doctor-application-item.unread .doctor-application-follow-up-sent{
    color:#ffe1aa;
}

.doctor-application-okay:disabled,
.doctor-application-follow-up:disabled{
    opacity:.68;
    cursor:wait;
}

.doctor-application-empty{
    display:grid;
    justify-items:center;
    gap:7px;
    padding:23px 12px;
    border:1px dashed #e1d6d2;
    border-radius:15px;
    background:#fbfaf8;
    text-align:center;
}

.doctor-application-empty svg{
    width:24px;
    height:24px;
    color:#a7733b;
}

.doctor-application-empty strong{
    color:#5d5054;
    font-size:.71rem;
}

.doctor-application-empty span{
    color:#93878a;
    font-size:.61rem;
    line-height:1.5;
}

.doctor-application-empty.error svg{
    color:#a64242;
}

.doctor-application-skeleton{
    min-height:128px;
    border-radius:16px;
    background:linear-gradient(100deg,#f0ece9 30%,#f8f5f2 48%,#f0ece9 66%);
    background-size:220% 100%;
    animation:doctorOpportunityLoading 1.35s ease-in-out infinite;
}

.doctor-applications-panel>.form-message{
    margin-top:10px;
    font-size:.63rem;
}

@media(max-width:860px) and (min-width:641px){
    .doctor-applications-panel{
        grid-column:1/-1;
    }

    .doctor-application-updates{
        grid-template-columns:repeat(2,minmax(0,1fr));
        max-height:none;
        overflow:visible;
    }
}

/*==================================================
HOSPITAL WORKSPACE — DASHBOARD & PROFILE SEPARATION
==================================================*/

.hospital-account-body{
    background:#f7f5f2;
}

.hospital-workspace-dashboard,
.hospital-profile-page,
.hospital-profile-editor-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 90% 14%,rgba(214,161,92,.11),transparent 29%),
        radial-gradient(circle at 8% 82%,rgba(110,24,56,.055),transparent 28%),
        #f7f5f2;
}

.hospital-workspace-cover{
    position:relative;
    min-height:260px;
    overflow:hidden;
    background:
        radial-gradient(circle at 82% 30%,rgba(214,161,92,.28),transparent 25%),
        linear-gradient(112deg,#76213f,#4c1028 58%,#2f0c1c);
    background-position:center;
    background-size:cover;
}

.hospital-workspace-cover::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(255,255,255,.04),transparent 48%);
    pointer-events:none;
}

.hospital-workspace-cover>.container{
    position:relative;
    z-index:1;
    min-height:260px;
}

.hospital-cover-mark{
    position:absolute;
    right:4%;
    bottom:24px;
    display:grid;
    place-items:center;
    width:110px;
    height:110px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:28px;
    color:rgba(255,255,255,.16);
    transform:rotate(-8deg);
}

.hospital-cover-mark svg{
    width:58px;
    height:58px;
}

.hospital-workspace-cover.has-image .hospital-cover-mark{
    opacity:.38;
}

.hospital-dashboard-identity,
.hospital-profile-identity{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:24px;
    margin-top:-72px;
    padding:24px 28px;
    border:1px solid rgba(83,54,62,.08);
    border-radius:28px;
    background:rgba(255,255,255,.97);
    box-shadow:0 26px 70px rgba(50,31,38,.13);
}

.hospital-dashboard-logo,
.hospital-profile-logo-wrap{
    position:relative;
    display:grid;
    place-items:center;
    width:122px;
    height:122px;
    overflow:hidden;
    border:5px solid #fff;
    border-radius:24px;
    background:linear-gradient(145deg,#f2e6e3,#fffaf4);
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:2.1rem;
    font-weight:750;
    text-decoration:none;
    box-shadow:0 13px 36px rgba(68,25,41,.16);
}

.hospital-dashboard-logo img,
.hospital-profile-logo-wrap img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.hospital-dashboard-heading .section-tag,
.hospital-profile-title .section-tag{
    margin-bottom:6px;
}

.hospital-dashboard-name-line,
.hospital-profile-name-line{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:11px;
}

.hospital-dashboard-name-line h1,
.hospital-profile-name-line h1{
    margin:0;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:clamp(2rem,3.4vw,3.35rem);
    letter-spacing:-.045em;
    line-height:1.06;
}

.hospital-dashboard-heading>p,
.hospital-profile-title>p{
    display:flex;
    align-items:center;
    gap:6px;
    margin:8px 0 0;
    color:#817378;
    font-size:.8rem;
}

.hospital-dashboard-heading>p svg,
.hospital-profile-title>p svg{
    width:15px;
    height:15px;
    color:#a8733c;
}

.hospital-verification-pill{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:6px 10px;
    border-radius:999px;
    background:#f4e9ed;
    color:var(--burgundy);
    font-size:.6rem;
    font-weight:850;
}

.hospital-verification-pill[data-status="verified"],
.hospital-verification-pill[data-status="approved"]{
    background:#e7f4eb;
    color:#2f704b;
}

.hospital-verification-pill[data-status="reviewing"]{
    background:#fbf1dd;
    color:#98662e;
}

.hospital-verification-pill[data-status="rejected"]{
    background:#f5e6e6;
    color:#a34444;
}

.hospital-dashboard-primary-actions,
.hospital-profile-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:9px;
}

.hospital-dashboard-primary-actions .btn,
.hospital-profile-actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
}

.hospital-dashboard-primary-actions svg,
.hospital-profile-actions svg{
    width:16px;
    height:16px;
}

.hospital-profile-shortcut{
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:40px;
    padding:8px 10px;
    color:var(--burgundy);
    font-size:.69rem;
    font-weight:800;
    text-decoration:none;
}

.hospital-profile-shortcut svg{
    width:15px;
    height:15px;
}

.hospital-dashboard-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-top:24px;
}

.hospital-summary-card{
    display:flex;
    align-items:center;
    gap:13px;
    min-width:0;
    padding:18px;
    border:1px solid #e9e1de;
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 32px rgba(54,39,44,.055);
}

.hospital-summary-card>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:42px;
    height:42px;
    border-radius:13px;
    background:#f4e8eb;
    color:var(--burgundy);
}

.hospital-summary-card>span svg{
    width:19px;
    height:19px;
}

.hospital-summary-card strong,
.hospital-summary-card small{
    display:block;
}

.hospital-summary-card strong{
    color:#4a3a40;
    font-family:"Playfair Display",serif;
    font-size:1.7rem;
    line-height:1;
}

.hospital-summary-card small{
    margin-top:5px;
    color:#8c7f83;
    font-size:.62rem;
    font-weight:700;
    line-height:1.35;
}

.hospital-summary-card.summary-review>span{
    background:#fbf2df;
    color:#a27034;
}

.hospital-summary-card.summary-complete>span{
    background:#e8f3eb;
    color:#397153;
}

.hospital-dashboard-intro{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-top:34px;
    margin-bottom:16px;
}

.hospital-dashboard-intro h2{
    margin:6px 0 5px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:clamp(2rem,3vw,3rem);
}

.hospital-dashboard-intro p{
    margin:0;
    color:#817479;
    font-size:.78rem;
}

.hospital-team-link{
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 14px;
    border:1px solid #eadfdb;
    border-radius:15px;
    background:#fff;
    color:var(--burgundy);
    text-decoration:none;
}

.hospital-team-link>svg{
    width:21px;
    height:21px;
}

.hospital-team-link strong,
.hospital-team-link small{
    display:block;
}

.hospital-team-link strong{
    font-size:.69rem;
}

.hospital-team-link small{
    margin-top:2px;
    color:#96888c;
    font-size:.55rem;
}

.hospital-activity-grid{
    margin-top:0 !important;
    padding-bottom:64px !important;
}

.hospital-workspace-dashboard .hospital-dashboard-card{
    min-height:390px;
    padding:25px;
    border-radius:24px;
}

.hospital-workspace-dashboard .hospital-dashboard-card h2{
    margin:5px 0 0;
    font-size:clamp(1.55rem,2.5vw,2.25rem) !important;
    letter-spacing:-.035em;
}

.hospital-card-new-link{
    display:inline-flex;
    align-items:center;
    gap:4px;
    min-height:34px;
    padding:7px 10px;
    border-radius:10px;
    background:var(--burgundy);
    color:#fff;
    font-size:.64rem;
    font-weight:800;
    text-decoration:none;
}

.hospital-card-new-link svg{
    width:14px;
    height:14px;
}

.hospital-workspace-dashboard .dashboard-simple-table{
    min-width:560px;
    margin-top:12px;
}

.hospital-workspace-dashboard .dashboard-simple-table th{
    padding:11px 9px;
    font-size:.61rem;
}

.hospital-workspace-dashboard .dashboard-simple-table td{
    padding:13px 9px;
    font-size:.69rem;
}

/* Hospital profile */

.hospital-profile-page{
    padding-top:82px;
    padding-bottom:62px;
}

.hospital-profile-cover{
    min-height:280px;
}

.hospital-profile-cover>.container{
    min-height:280px;
}

.hospital-cover-edit{
    position:absolute;
    right:22px;
    top:22px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:10px 13px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:12px;
    background:rgba(49,12,27,.48);
    color:#fff;
    font-size:.66rem;
    font-weight:800;
    text-decoration:none;
    backdrop-filter:blur(8px);
}

.hospital-cover-edit svg{
    width:15px;
    height:15px;
}

.hospital-profile-logo-link{
    text-decoration:none;
}

.hospital-profile-logo-edit{
    position:absolute;
    inset:auto 6px 6px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:6px;
    border-radius:9px;
    background:rgba(58,15,32,.78);
    color:#fff;
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:.52rem;
    font-weight:800;
    opacity:0;
    transition:opacity .2s ease;
}

.hospital-profile-logo-edit svg{
    width:12px;
    height:12px;
}

.hospital-profile-logo-link:hover .hospital-profile-logo-edit,
.hospital-profile-logo-link:focus-visible .hospital-profile-logo-edit{
    opacity:1;
}

.hospital-profile-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 330px;
    gap:20px;
    align-items:start;
    margin-top:24px;
}

.hospital-profile-main,
.hospital-profile-sidebar{
    display:grid;
    gap:18px;
}

.hospital-profile-card,
.hospital-profile-status-card{
    padding:24px;
    border:1px solid #e9e1de;
    border-radius:22px;
    background:#fff;
    box-shadow:0 13px 36px rgba(52,38,43,.06);
}

.hospital-profile-card-heading{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:16px;
}

.hospital-profile-card-heading>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:42px;
    height:42px;
    border-radius:13px;
    background:#f2e7e4;
    color:var(--burgundy);
}

.hospital-profile-card-heading>span svg{
    width:18px;
    height:18px;
}

.hospital-profile-card-heading small,
.hospital-profile-card-heading h2{
    display:block;
}

.hospital-profile-card-heading small{
    margin-bottom:3px;
    color:#ae773b;
    font-size:.55rem;
    font-weight:850;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.hospital-profile-card-heading h2{
    margin:0;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.35rem;
}

.hospital-profile-card-heading.compact{
    align-items:flex-start;
}

.hospital-profile-about,
.hospital-address-summary>p{
    margin:0;
    color:#76696e;
    font-size:.77rem;
    line-height:1.7;
}

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

.hospital-specialty-chip{
    display:inline-flex;
    padding:8px 11px;
    border:1px solid #eadfdb;
    border-radius:999px;
    background:#fbf8f6;
    color:var(--burgundy);
    font-size:.62rem;
    font-weight:750;
}

.hospital-specialty-chip.muted{
    color:#9b8f92;
}

.hospital-capacity-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
}

.hospital-capacity-grid>div{
    padding:14px;
    border:1px solid #eee6e2;
    border-radius:14px;
    background:#fcfaf8;
}

.hospital-capacity-grid small,
.hospital-capacity-grid strong{
    display:block;
}

.hospital-capacity-grid small{
    color:#9e9094;
    font-size:.52rem;
    font-weight:800;
    letter-spacing:.065em;
    text-transform:uppercase;
}

.hospital-capacity-grid strong{
    margin-top:5px;
    color:#4e4145;
    font-size:.72rem;
    overflow-wrap:anywhere;
}

.hospital-capacity-grid a{
    color:var(--burgundy);
}

.hospital-document-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}

.hospital-document-list>a{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:13px;
    border:1px solid #ebe2df;
    border-radius:14px;
    color:#514448;
    text-decoration:none;
}

.hospital-document-list>a>svg{
    width:17px;
    height:17px;
    color:var(--burgundy);
}

.hospital-document-list>a strong,
.hospital-document-list>a small{
    display:block;
}

.hospital-document-list>a strong{
    font-size:.67rem;
}

.hospital-document-list>a small{
    margin-top:3px;
    color:#978a8e;
    font-size:.54rem;
}

.hospital-document-empty{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    gap:9px;
    padding:17px;
    border:1px dashed #dfd4d1;
    border-radius:14px;
    color:#94878b;
    font-size:.65rem;
}

.hospital-document-empty svg{
    width:19px;
    height:19px;
}

.hospital-profile-status-card{
    background:linear-gradient(145deg,#fff,#fbf5ed);
}

.hospital-profile-status-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:#ae773b;
    font-size:.58rem;
    font-weight:850;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.hospital-profile-status-top svg{
    width:17px;
    height:17px;
}

.hospital-profile-status-card h2{
    margin:14px 0 7px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.45rem;
}

.hospital-profile-status-card>p{
    margin:0;
    color:#796c70;
    font-size:.69rem;
    line-height:1.6;
}

.hospital-profile-status-card[data-status="verified"],
.hospital-profile-status-card[data-status="approved"]{
    background:linear-gradient(145deg,#fff,#edf7f0);
}

.hospital-profile-admin-note{
    margin-top:16px;
    padding:13px;
    border-left:3px solid #d6a15c;
    border-radius:0 12px 12px 0;
    background:#fff;
}

.hospital-profile-admin-note small{
    color:#ad763a;
    font-size:.52rem;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.hospital-profile-admin-note p{
    margin:6px 0 0;
    color:#56494d;
    font-size:.66rem;
    line-height:1.55;
}

.hospital-contact-summary dl{
    display:grid;
    gap:12px;
    margin:0;
}

.hospital-contact-summary dl>div{
    padding-bottom:11px;
    border-bottom:1px solid #eee6e3;
}

.hospital-contact-summary dl>div:last-child{
    padding-bottom:0;
    border-bottom:0;
}

.hospital-contact-summary dt{
    color:#9c8e92;
    font-size:.51rem;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.hospital-contact-summary dd{
    margin:4px 0 0;
    color:#4d4044;
    font-size:.68rem;
    font-weight:700;
    overflow-wrap:anywhere;
}

/* Hospital profile editor */

.hospital-profile-editor-page{
    padding:142px 0 70px;
}

.hospital-editor-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:24px;
}

.hospital-editor-heading h1{
    max-width:900px;
    margin:10px 0 8px;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:clamp(2.6rem,5vw,4.8rem);
    letter-spacing:-.055em;
    line-height:1.02;
}

.hospital-editor-heading p{
    max-width:760px;
    margin:0;
    color:#7c6f73;
    line-height:1.65;
}

.hospital-editor-heading .btn{
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
}

.hospital-editor-heading svg{
    width:16px;
    height:16px;
}

.hospital-profile-form{
    display:grid;
    gap:18px;
}

.hospital-editor-card{
    padding:28px;
    border:1px solid #e9e0dd;
    border-radius:24px;
    background:#fff;
    box-shadow:0 15px 40px rgba(50,35,41,.055);
}

.hospital-editor-card-heading{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin-bottom:22px;
}

.hospital-editor-card-heading>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:44px;
    height:44px;
    border-radius:14px;
    background:#f2e7e4;
    color:var(--burgundy);
}

.hospital-editor-card-heading>span svg{
    width:19px;
    height:19px;
}

.hospital-editor-card-heading small{
    display:block;
    margin-bottom:3px;
    color:#ae773b;
    font-size:.55rem;
    font-weight:850;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.hospital-editor-card-heading h2{
    margin:0;
    color:var(--burgundy);
    font-family:"Playfair Display",serif;
    font-size:1.55rem;
}

.hospital-editor-card-heading p{
    margin:5px 0 0;
    color:#8b7e82;
    font-size:.65rem;
}

.hospital-form-grid,
.hospital-upload-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.hospital-form-grid label,
.hospital-upload-field{
    display:grid;
    gap:7px;
    color:#63565a;
    font-size:.65rem;
    font-weight:800;
}

.hospital-form-grid .full-width{
    grid-column:1/-1;
}

.hospital-form-grid input,
.hospital-form-grid select,
.hospital-form-grid textarea{
    width:100%;
    padding:13px 14px;
    border:1px solid #ded3cf;
    border-radius:12px;
    background:#fcfaf8;
    color:#45393d;
    font:inherit;
    font-weight:550;
    outline:none;
}

.hospital-form-grid input:focus,
.hospital-form-grid select:focus,
.hospital-form-grid textarea:focus{
    border-color:rgba(110,24,56,.52);
    box-shadow:0 0 0 3px rgba(110,24,56,.08);
}

.hospital-form-grid textarea{
    min-height:120px;
    resize:vertical;
}

.hospital-upload-field{
    padding:16px;
    border:1px dashed #d8cbc7;
    border-radius:15px;
    background:#fcfaf8;
}

.hospital-upload-field>span{
    color:#57494e;
}

.hospital-upload-field input{
    width:100%;
    color:#76696d;
    font-size:.62rem;
}

.hospital-upload-field small{
    color:#a09296;
    font-size:.53rem;
    font-weight:650;
}

.hospital-editor-submit{
    position:sticky;
    bottom:16px;
    z-index:5;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:15px 17px;
    border:1px solid rgba(110,24,56,.13);
    border-radius:17px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 50px rgba(53,25,36,.14);
    backdrop-filter:blur(12px);
}

.hospital-editor-submit .form-message{
    margin:0;
}

.hospital-editor-submit .btn{
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
}

.hospital-editor-submit svg{
    width:16px;
    height:16px;
}

@media(max-width:1100px){
    .hospital-dashboard-identity,
    .hospital-profile-identity{
        grid-template-columns:auto minmax(0,1fr);
    }

    .hospital-dashboard-primary-actions,
    .hospital-profile-actions{
        grid-column:1/-1;
        justify-content:flex-start;
        padding-left:146px;
    }

    .hospital-dashboard-summary{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .hospital-profile-layout{
        grid-template-columns:1fr;
    }

    .hospital-profile-sidebar{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .hospital-profile-status-card{
        grid-column:1/-1;
    }
}

@media(max-width:720px){
    .hospital-workspace-cover,
    .hospital-workspace-cover>.container,
    .hospital-profile-cover,
    .hospital-profile-cover>.container{
        min-height:205px;
    }

    .hospital-dashboard-identity,
    .hospital-profile-identity{
        grid-template-columns:1fr;
        justify-items:center;
        width:calc(100% - 32px);
        margin-top:-55px;
        padding:20px 16px;
        text-align:center;
    }

    .hospital-dashboard-logo,
    .hospital-profile-logo-wrap{
        width:100px;
        height:100px;
    }

    .hospital-dashboard-name-line,
    .hospital-profile-name-line,
    .hospital-dashboard-heading>p,
    .hospital-profile-title>p{
        justify-content:center;
    }

    .hospital-dashboard-primary-actions,
    .hospital-profile-actions{
        grid-column:auto;
        justify-content:center;
        width:100%;
        padding-left:0;
    }

    .hospital-dashboard-primary-actions .btn,
    .hospital-profile-actions .btn{
        flex:1 1 145px;
    }

    .hospital-profile-shortcut{
        flex:1 1 100%;
        justify-content:center;
    }

    .hospital-dashboard-intro,
    .hospital-editor-heading{
        align-items:stretch;
        flex-direction:column;
    }

    .hospital-team-link{
        align-self:flex-start;
    }

    .hospital-profile-sidebar,
    .hospital-document-list,
    .hospital-form-grid,
    .hospital-upload-grid{
        grid-template-columns:1fr;
    }

    .hospital-form-grid .full-width{
        grid-column:auto;
    }

    .hospital-profile-editor-page{
        padding-top:118px;
    }

    .hospital-editor-card{
        padding:21px 16px;
    }

    .hospital-editor-submit{
        align-items:stretch;
        flex-direction:column;
    }

    .hospital-editor-submit .btn{
        justify-content:center;
        width:100%;
    }
}

@media(max-width:480px){
    .hospital-dashboard-summary{
        grid-template-columns:1fr;
    }

    .hospital-capacity-grid{
        grid-template-columns:1fr;
    }

    .hospital-cover-edit{
        right:14px;
        top:14px;
    }
}

/* Final dashboard density overrides kept after legacy hospital workspace rules. */
.hospital-workspace-dashboard>section{padding-top:0;padding-bottom:0;}
.hospital-workspace-dashboard>.hospital-workspace-cover{padding:0;}
.hospital-workspace-dashboard .hospital-dashboard-summary{
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-top:16px;
    margin-bottom:0;
}
.hospital-workspace-dashboard .hospital-dashboard-intro{margin-top:22px;margin-bottom:12px;}
.hospital-workspace-dashboard .hospital-activity-grid{margin-top:0!important;padding-top:0!important;padding-bottom:52px!important;}
.hospital-workspace-dashboard .hospital-profile-shortcut{
    justify-content:center;
    min-height:48px;
    padding:11px 17px;
    border:1px solid #eadfdb;
    border-radius:12px;
    background:#fff;
    font-size:.76rem;
}
@media(max-width:1100px){.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:720px){
    .hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;}
    .hospital-workspace-dashboard .hospital-dashboard-intro{margin-top:18px;}
}
@media(max-width:480px){.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:1fr;}}

/* Urgent form visual corrections */
.urgent-form-hero-inner,
.urgent-board-hero-inner{
    min-height:360px;
    padding-top:150px;
    padding-bottom:50px;
}

.urgent-form-hero h1,
.urgent-board-hero h1{
    color:#fff!important;
    text-shadow:0 2px 18px rgba(24,4,13,.24);
}

.urgent-form-hero p,
.urgent-board-hero p{
    color:rgba(255,255,255,.88)!important;
}

.urgent-form-hero .urgent-eyebrow,
.urgent-board-hero .urgent-eyebrow{
    color:#fff!important;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.14);
}

.urgent-profile-summary{
    align-items:center!important;
}

.urgent-profile-summary>.urgent-summary-icon{
    display:grid!important;
    place-items:center!important;
    align-self:center;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    line-height:1;
}

.urgent-profile-summary>.urgent-summary-icon svg{
    display:block;
    width:20px;
    height:20px;
    margin:0;
}

.urgent-terms-check{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr);
    align-items:start!important;
    column-gap:12px!important;
    padding:16px 18px!important;
}

.urgent-terms-check>input{
    display:block!important;
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:2px 0 0!important;
    padding:0!important;
    border-radius:4px;
}

.urgent-terms-check>span{
    display:block!important;
    width:auto!important;
    margin:0!important;
    text-align:left;
    line-height:1.6;
}

@media(max-width:800px){
    .urgent-form-hero-inner,
    .urgent-board-hero-inner{
        min-height:330px;
        padding-top:135px;
        padding-bottom:42px;
    }
}

/* Final workspace layout overrides */
.doctor-opportunity-tools{min-width:290px;}
.admin-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:1000px){.admin-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){
    .doctor-opportunity-tools{min-width:0;width:100%;}
    .admin-stats-grid{grid-template-columns:1fr;}
}

/* Request-scoped urgent-duty workspace */
.hospital-urgent-workspace{margin-top:24px;margin-bottom:26px;padding:28px;border:1px solid #eadfdb;border-radius:28px;background:#fff;box-shadow:0 20px 46px rgba(54,24,36,.08)}
.hospital-urgent-workspace-list{display:grid;gap:22px;margin-top:22px}
.hospital-urgent-duty-card{overflow:hidden;border:1px solid #e7dcd8;border-radius:22px;background:#fcfbfa;box-shadow:0 10px 24px rgba(52,26,36,.05)}
.hospital-urgent-duty-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 18px;background:linear-gradient(135deg,#fff,#fbf5f2)}
.hospital-urgent-duty-head>div>small{display:inline-block;margin-left:10px;color:#9a8c91;font-size:.72rem;font-weight:700;letter-spacing:.06em}
.hospital-urgent-duty-head h3{margin:12px 0 7px;color:#681b3a;font-family:'Playfair Display',serif;font-size:1.55rem}
.hospital-urgent-duty-head p{display:flex;align-items:center;gap:7px;margin:0;color:#786d71;font-size:.82rem}
.hospital-urgent-duty-head p svg{width:15px;height:15px;color:#bd8751}
.hospital-duty-status{flex:0 0 auto;padding:8px 12px;border-radius:999px;background:#f2e8ec;color:#6b1d3a;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.hospital-duty-status.cancelled{background:#eee9e8;color:#755f66}
.hospital-duty-status.duty_in_progress{background:#e5f3e9;color:#25643b}
.hospital-duty-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #eee5e2;border-bottom:1px solid #eee5e2;background:#fff}
.hospital-duty-metrics>div{display:grid;gap:5px;padding:15px 18px;border-right:1px solid #eee5e2}
.hospital-duty-metrics>div:last-child{border-right:0}
.hospital-duty-metrics span{color:#9b8e93;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.hospital-duty-metrics strong{color:#3e2931;font-size:.84rem}
.hospital-duty-withdraw-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;border-bottom:1px solid #eadfdb;background:#fff9ee}
.hospital-duty-withdraw-row>span{display:flex;align-items:center;gap:9px;color:#755d3f;font-size:.76rem;font-weight:600}
.hospital-duty-withdraw-row svg{width:17px;height:17px;color:#a67131}
.hospital-withdraw-duty{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d9bfc8;border-radius:10px;background:#fff;color:#7a2343;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}
.hospital-withdraw-duty:hover{background:#7a2343;color:#fff}
.hospital-duty-cancellation-result{display:flex;gap:12px;padding:15px 22px;border-bottom:1px solid #ddd3d0;background:#f4f0ef;color:#6c5960}
.hospital-duty-cancellation-result>svg{flex:0 0 auto;width:20px;height:20px}
.hospital-duty-cancellation-result div{display:grid;gap:3px}
.hospital-duty-cancellation-result span,.hospital-duty-cancellation-result small{font-size:.75rem}
.hospital-duty-applicants-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 12px}
.hospital-duty-applicants-heading h4{margin:0 0 3px;color:#54152f;font-size:1rem}
.hospital-duty-applicants-heading p{margin:0;color:#978a8f;font-size:.74rem}
.hospital-duty-applicants-heading>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#6b1d3a;color:#fff;font-size:.75rem;font-weight:800}
.hospital-duty-applicant-list{display:grid;gap:12px;padding:0 22px 22px}
.hospital-duty-applicant{padding:17px;border:1px solid #e9dedb;border-radius:16px;background:#fff}
.hospital-duty-applicant.unread{border-color:#c98b54;box-shadow:inset 4px 0 #c98b54}
.hospital-duty-applicant-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.hospital-duty-applicant-head>div>span{color:#b07b46;font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.hospital-duty-applicant h4{margin:4px 0 2px;color:#55152f;font-size:1rem}
.hospital-duty-applicant-head p{margin:0;color:#887a80;font-size:.75rem}
.hospital-duty-applicant blockquote{margin:13px 0;padding:11px 13px;border-left:3px solid #c99b62;border-radius:0 8px 8px 0;background:#faf7f3;color:#615259;font-size:.78rem}
.hospital-duty-applicant-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:13px}
.hospital-duty-applicant-actions .btn{min-height:39px;padding:9px 13px;font-size:.72rem}
.hospital-seen-button{padding:8px 10px;border:0;background:transparent;color:#7a2343;font:inherit;font-size:.7rem;font-weight:700;cursor:pointer}
.hospital-doctor-reliability{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:#fff3d7;color:#7d571e;font-size:.63rem;font-weight:800;text-transform:uppercase}
.hospital-doctor-reliability.suspended,.hospital-doctor-reliability.blacklisted{background:#f5dfe5;color:#8a173e}
.hospital-doctor-reliability svg{width:13px;height:13px}
.hospital-applicant-otp{margin-top:15px;padding-top:15px;border-top:1px solid #eee5e2}
.hospital-duty-no-applicants{display:flex;align-items:center;gap:12px;padding:17px;border:1px dashed #ddcfcb;border-radius:14px;color:#8b7e83}
.hospital-duty-no-applicants>svg{width:26px;height:26px;color:#9d6b7c}
.hospital-duty-no-applicants p{display:grid;gap:2px;margin:0;font-size:.75rem}.hospital-duty-no-applicants strong{color:#5d3947;font-size:.82rem}

.hospital-doctor-profile-dialog{width:min(720px,calc(100% - 28px));padding:0;border:0;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(33,10,20,.3)}
.hospital-doctor-profile-dialog::backdrop{background:rgba(28,9,17,.62);backdrop-filter:blur(3px)}
.hospital-doctor-profile-shell{position:relative;padding:28px}
.hospital-doctor-profile-shell>h2{margin:11px 0 5px;color:#621a37;font-family:'Playfair Display',serif;font-size:2rem}
.hospital-doctor-profile-privacy{display:flex;align-items:center;gap:8px;margin:0 0 20px;color:#786c71;font-size:.78rem}.hospital-doctor-profile-privacy svg{width:16px;height:16px;color:#508264}
.hospital-doctor-profile-lead{display:flex;align-items:center;gap:13px;padding:15px;border-radius:15px;background:#f8f3f1}.hospital-doctor-profile-lead>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#6b1d3a;color:#fff}.hospital-doctor-profile-lead h3{margin:0 0 3px;color:#4e2434}.hospital-doctor-profile-lead p{margin:0;color:#8b7a81;font-size:.76rem}
.hospital-doctor-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.hospital-doctor-profile-grid>div{display:grid;gap:4px;padding:13px;border:1px solid #ebe2df;border-radius:12px}.hospital-doctor-profile-grid span,.hospital-doctor-profile-about>span{color:#a09096;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.hospital-doctor-profile-grid strong{color:#46343b;font-size:.79rem}
.hospital-doctor-profile-about{margin-top:13px;padding:14px;border:1px solid #ebe2df;border-radius:12px}.hospital-doctor-profile-about p{margin:6px 0 0;color:#695b61;font-size:.78rem;line-height:1.65}
.hospital-doctor-cv-withheld{display:flex;gap:10px;margin-top:13px;padding:13px;border-radius:12px;background:#fff8e9;color:#755e3f}.hospital-doctor-cv-withheld>svg{flex:0 0 auto;width:20px;height:20px}.hospital-doctor-cv-withheld p{display:grid;gap:2px;margin:0;font-size:.73rem;line-height:1.5}.hospital-doctor-profile-actions{display:flex;justify-content:flex-end;margin-top:18px}

/* Doctor reliability and admin controls */
.doctor-reliability-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:22px;padding:18px 20px;border:1px solid #e7c780;border-radius:18px;background:#fff7df;color:#72501c}
.doctor-reliability-notice>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#d69b3a;color:#fff}.doctor-reliability-notice h2{margin:2px 0 4px;font-size:1rem}.doctor-reliability-notice p{margin:0;font-size:.77rem;line-height:1.55}.doctor-reliability-notice small{font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.doctor-reliability-notice.suspended,.doctor-reliability-notice.blacklisted{border-color:#c97891;background:#fbebef;color:#781c3d}.doctor-reliability-notice.suspended>span,.doctor-reliability-notice.blacklisted>span{background:#871d43}
.urgent-view-only.restricted{color:#8b1c42;background:#f8e7ec}
.admin-urgent-doctor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-urgent-doctor-head>div{display:grid;gap:3px}
.admin-reliability-pill{padding:6px 9px;border-radius:999px;background:#e8f4eb;color:#356846;font-size:.61rem;font-weight:800;text-transform:uppercase}.admin-reliability-pill.warned{background:#fff0cc;color:#785218}.admin-reliability-pill.suspended,.admin-reliability-pill.blacklisted{background:#f5dfe6;color:#861b40}
.admin-reliability-reason{display:block;margin-top:8px;color:#7e6c73;font-size:.7rem}
.admin-urgent-doctor-controls{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.admin-urgent-doctor-controls button{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #dfd2d5;border-radius:9px;background:#fff;color:#6b1d3a;font:inherit;font-size:.66rem;font-weight:700;cursor:pointer}.admin-urgent-doctor-controls button svg{width:14px;height:14px}.admin-urgent-doctor-controls .admin-blacklist-urgent-doctor{border-color:#a9365c;background:#8a1f44;color:#fff}

.admin-urgent-cancellation{display:flex;gap:10px;margin:12px 0;padding:12px 14px;border-radius:11px;background:#f4ecee;color:#781e3e}.admin-urgent-cancellation>svg{flex:0 0 auto;width:18px;height:18px}.admin-urgent-cancellation div{display:grid;gap:3px}.admin-urgent-cancellation span{font-size:.7rem;color:#7b656d}

@media(max-width:980px){
    .hospital-duty-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.hospital-duty-metrics>div{border-bottom:1px solid #eee5e2}
}
@media(max-width:720px){
    .hospital-urgent-workspace{width:calc(100% - 28px);padding:18px;border-radius:20px}
    .hospital-urgent-duty-head,.hospital-duty-withdraw-row,.hospital-duty-applicant-head{align-items:stretch;flex-direction:column}
    .hospital-duty-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
    .hospital-duty-applicant-list{padding:0 14px 14px}.hospital-duty-applicants-heading{padding:17px 14px 10px}
    .hospital-doctor-profile-grid{grid-template-columns:1fr}.hospital-doctor-profile-shell{padding:22px 17px}
    .doctor-reliability-notice{grid-template-columns:auto minmax(0,1fr)}.doctor-reliability-notice .btn{grid-column:1/-1;justify-content:center}
}
@media(max-width:480px){.hospital-duty-metrics{grid-template-columns:1fr}.hospital-duty-applicant-actions .btn,.hospital-withdraw-duty{width:100%;justify-content:center}}

/* Urgent duty terms, cancellation, reminders and archival */
.urgent-terms-check a{color:#6b1d3a;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.urgent-doctor-terms{margin-top:14px!important}
.doctor-cancel-dialog{width:min(760px,calc(100% - 28px))}
.doctor-cancel-policy{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;margin:14px 0;padding:14px 16px;border:1px solid #e7d4ad;border-radius:13px;background:#fff8e8;color:#715a35;font-size:.76rem;line-height:1.6}.doctor-cancel-policy>svg{width:19px;height:19px;margin-top:2px}.doctor-cancel-policy>div{display:grid;gap:3px}
.doctor-cancel-policy strong{display:block;margin-bottom:3px;color:#5d3e17}
.doctor-replacement-fields{margin:16px 0;padding:16px;border:1px solid #e4d7d9;border-radius:16px;background:#faf6f7}
.doctor-replacement-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:14px}.doctor-replacement-heading>svg{flex:0 0 auto;width:21px;height:21px;color:#7a2343}.doctor-replacement-heading div{display:grid;gap:3px}.doctor-replacement-heading strong{color:#5d1835;font-size:.85rem}.doctor-replacement-heading span{color:#85747a;font-size:.7rem;line-height:1.5}
.urgent-replacement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.urgent-replacement-grid .form-group{margin:0}
.doctor-shift-window.cancellation-pending{border-color:#e3c275;background:#fff4d4;color:#71501d}.doctor-shift-window.cancellation-rejected{border-color:#d9a2b3;background:#fbe9ef;color:#7c1c3f}
.doctor-cancel-shift{margin-top:12px}

.hospital-duty-remove-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;border-bottom:1px solid #e1d9d6;background:#f5f2f1;color:#695c61}.hospital-duty-remove-row>span{display:flex;align-items:center;gap:9px;font-size:.74rem;line-height:1.5}.hospital-duty-remove-row svg{flex:0 0 auto;width:17px;height:17px}.hospital-remove-duty{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:9px 12px;border:1px solid #cfc4c0;border-radius:10px;background:#fff;color:#6b1d3a;font:inherit;font-size:.7rem;font-weight:800;cursor:pointer}.hospital-remove-duty:hover{border-color:#6b1d3a;background:#6b1d3a;color:#fff}

.doctor-upcoming-duty-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:22px;margin-bottom:8px;padding:20px 22px;border:1px solid #d8bd87;border-radius:20px;background:linear-gradient(120deg,#fff9ea,#fff 62%);box-shadow:0 13px 30px rgba(88,55,22,.08)}
.doctor-upcoming-duty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#6b1d3a;color:#fff;box-shadow:0 8px 18px rgba(107,29,58,.2)}.doctor-upcoming-duty-icon svg{width:24px;height:24px}
.doctor-upcoming-duty-copy{display:grid;gap:3px}.doctor-upcoming-duty-copy>span{color:#ad783b;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.doctor-upcoming-duty-copy h2{margin:0;color:#5e1936;font-family:'Playfair Display',serif;font-size:1.28rem}.doctor-upcoming-duty-copy p{margin:0;color:#71646a;font-size:.77rem}.doctor-upcoming-duty-copy small{color:#8d622f;font-size:.7rem;font-weight:800}

.admin-urgent-replacement-list{display:grid;gap:14px;margin-bottom:22px}.admin-replacement-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 19px;border:1px solid #e7bd78;border-radius:15px;background:#fff5dc}.admin-replacement-heading>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#8a2948;color:#fff}.admin-replacement-heading>span svg{width:20px;height:20px}.admin-replacement-heading small{color:#a16f2e;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.admin-replacement-heading h3{margin:3px 0;color:#681b3a;font-size:1rem}.admin-replacement-heading p{margin:0;color:#7c6b58;font-size:.7rem}.admin-replacement-heading>strong{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#6b1d3a;color:#fff;font-size:.75rem}
.admin-replacement-card{padding:18px;border:1px solid #e6dad7;border-left:5px solid #be7b40;border-radius:15px;background:#fff;box-shadow:0 8px 20px rgba(55,28,38,.05)}.admin-replacement-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-replacement-card-head small{color:#a07136;font-size:.62rem;font-weight:800;letter-spacing:.06em}.admin-replacement-card-head h4{margin:4px 0;color:#5d1734;font-size:.95rem}.admin-replacement-card-head p{margin:0;color:#8b7d82;font-size:.7rem}.admin-replacement-card-head>span{padding:6px 9px;border-radius:999px;background:#fff0ca;color:#78511a;font-size:.61rem;font-weight:800;text-transform:uppercase}.admin-replacement-card blockquote{margin:14px 0;padding:11px 13px;border-left:3px solid #c79654;background:#faf6ef;color:#6d5b4d;font-size:.76rem;line-height:1.55}
.admin-replacement-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.admin-replacement-contact-grid>div{display:grid;gap:4px;padding:11px;border:1px solid #ebe2df;border-radius:10px;background:#fcfbfa}.admin-replacement-contact-grid span{color:#998c91;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.admin-replacement-contact-grid strong,.admin-replacement-contact-grid a{overflow-wrap:anywhere;color:#4f3942;font-size:.7rem;font-weight:700}.admin-replacement-contact-grid a{color:#772241}
.admin-replacement-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.admin-replacement-actions button{padding:9px 11px;border:1px solid #d9ced0;border-radius:9px;background:#fff;color:#6b1d3a;font:inherit;font-size:.66rem;font-weight:800;cursor:pointer}.admin-replacement-actions button:first-child{border-color:#6b1d3a;background:#6b1d3a;color:#fff}.admin-replacement-actions button.warning{border-color:#d8ad61;background:#fff5dc;color:#714d18}.admin-replacement-actions button.danger{border-color:#8a1f44;background:#8a1f44;color:#fff}

.legal-page-body{background:#f8f6f4;color:#4b3c42}.legal-page-body>header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);box-shadow:0 1px 0 #eee5e2}.urgent-legal-page{padding-bottom:70px}.urgent-legal-hero{padding:150px 0 56px;background:linear-gradient(135deg,#711d3f,#3b101f);color:#fff}.urgent-legal-hero .section-tag{color:#ffe0ad;background:rgba(255,255,255,.1)}.urgent-legal-hero h1{margin:13px 0 10px;color:#fff;font-family:'Playfair Display',serif;font-size:clamp(2.5rem,5vw,4.4rem)}.urgent-legal-hero p{max-width:780px;margin:0;color:rgba(255,255,255,.82);line-height:1.7}.urgent-legal-layout{display:grid;grid-template-columns:290px minmax(0,1fr);align-items:start;gap:28px;margin-top:36px}.urgent-legal-summary{position:sticky;top:112px;overflow:hidden;border:1px solid #e6dad6;border-radius:20px;background:#fff;box-shadow:0 15px 38px rgba(53,25,35,.07)}.urgent-legal-summary>div{padding:22px;background:linear-gradient(145deg,#fff6e5,#fff)}.urgent-legal-summary svg{width:25px;height:25px;color:#8a2749}.urgent-legal-summary h2{margin:10px 0 7px;color:#611936;font-family:'Playfair Display',serif;font-size:1.2rem}.urgent-legal-summary p{margin:0;color:#75676c;font-size:.75rem;line-height:1.65}.urgent-legal-summary nav{display:grid;padding:10px}.urgent-legal-summary nav a{padding:10px 12px;border-radius:9px;color:#6b5960;font-size:.72rem;font-weight:700}.urgent-legal-summary nav a:hover{background:#f5ecef;color:#6b1d3a}.urgent-legal-content{display:grid;gap:16px}.urgent-legal-content>section{padding:24px 26px;border:1px solid #e7ddda;border-radius:19px;background:#fff;box-shadow:0 9px 24px rgba(53,25,35,.04)}.urgent-legal-content h2{margin:0 0 11px;color:#671b39;font-family:'Playfair Display',serif;font-size:1.35rem}.urgent-legal-content p,.urgent-legal-content li{color:#65575d;font-size:.82rem;line-height:1.8}.urgent-legal-content p{margin:0 0 11px}.urgent-legal-content p:last-child{margin-bottom:0}.urgent-legal-content ul{margin:0 0 12px;padding-left:21px}.urgent-legal-content a{color:#782542;font-weight:700;text-decoration:underline}.urgent-legal-framework{border-color:#d9b875!important;background:#fff8e8!important}.urgent-legal-framework>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.urgent-legal-framework>div a{padding:8px 10px;border:1px solid #dfcba3;border-radius:9px;background:#fff;color:#6a4421;font-size:.66rem;text-decoration:none}

@media(max-width:900px){
    .urgent-legal-layout{grid-template-columns:1fr}.urgent-legal-summary{position:static}.urgent-legal-summary nav{display:flex;overflow:auto}.urgent-legal-summary nav a{white-space:nowrap}
    .admin-replacement-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
    .urgent-replacement-grid{grid-template-columns:1fr}.doctor-upcoming-duty-panel{grid-template-columns:auto minmax(0,1fr)}.doctor-upcoming-duty-panel>.btn{grid-column:1/-1;justify-content:center}
    .hospital-duty-remove-row,.admin-replacement-card-head{align-items:stretch;flex-direction:column}.hospital-remove-duty{justify-content:center;width:100%}
    .urgent-legal-hero{padding:122px 0 42px}.urgent-legal-content>section{padding:20px 17px}.admin-replacement-heading{grid-template-columns:auto minmax(0,1fr)}.admin-replacement-heading>strong{grid-column:1/-1;width:100%;height:28px;border-radius:8px}
}
@media(max-width:480px){.admin-replacement-contact-grid{grid-template-columns:1fr}.admin-replacement-actions button{width:100%}.doctor-upcoming-duty-panel{grid-template-columns:1fr;text-align:center}.doctor-upcoming-duty-icon{margin:auto}.doctor-upcoming-duty-panel>.btn{grid-column:auto}.urgent-legal-content h2{font-size:1.18rem}}
/* Permanent-job marketplace */
.permanent-jobs-page,.permanent-post-page{min-height:100vh;background:#f7f5f2}
.permanent-jobs-hero,.permanent-post-hero{padding:150px 0 64px;background:linear-gradient(128deg,#6b1d3a,#35131f);color:#fff}
.permanent-jobs-hero-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.permanent-jobs-hero h1,.permanent-post-hero h1{max-width:780px;margin:14px 0 12px;color:#fff;font-family:'Playfair Display',serif;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05}
.permanent-jobs-hero p,.permanent-post-hero p{max-width:790px;margin:0;color:rgba(255,255,255,.82);line-height:1.7}
.permanent-job-workspace,.doctor-permanent-workspace{margin-top:34px;margin-bottom:62px;padding:28px;border:1px solid #e8dfdc;border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(64,35,44,.07)}
.doctor-permanent-workspace{margin-top:26px}
.permanent-job-workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}
.permanent-job-workspace-heading h2{margin:8px 0 4px;color:#671b39;font-family:'Playfair Display',serif;font-size:clamp(1.7rem,3vw,2.4rem)}
.permanent-job-workspace-heading p{margin:0;color:#86777c;font-size:.82rem}
.permanent-job-filters{display:grid;grid-template-columns:1.35fr 1fr 1fr auto;align-items:end;gap:12px;margin-bottom:22px;padding:15px;border:1px solid #eadfdb;border-radius:16px;background:#faf8f6}
.permanent-job-filters label{display:grid;gap:6px}.permanent-job-filters label>span{color:#87797e;font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.permanent-job-filters input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #ded3d0;border-radius:10px;background:#fff;color:#42353a;font:inherit;font-size:.78rem;outline:none}
.permanent-job-filters input:focus{border-color:#772241;box-shadow:0 0 0 3px rgba(119,34,65,.08)}
.permanent-job-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.permanent-job-card{display:flex;flex-direction:column;gap:15px;padding:20px;border:1px solid #e9dfdc;border-radius:18px;background:linear-gradient(145deg,#fff,#fdfbf9);box-shadow:0 8px 22px rgba(58,29,39,.04)}
.permanent-job-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.permanent-job-card-head span{color:#ad783b;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.permanent-job-card-head h3{margin:5px 0;color:#641a38;font-family:'Playfair Display',serif;font-size:1.22rem}.permanent-job-card-head p{display:flex;align-items:center;gap:6px;margin:0;color:#7c6d72;font-size:.72rem}.permanent-job-card-head p svg{width:14px;height:14px;color:#b17a3d}.permanent-job-card-head>small{color:#988b8f;font-size:.63rem;white-space:nowrap}
.permanent-job-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.permanent-job-facts>div{display:grid;gap:4px;padding:10px 11px;border:1px solid #eee6e3;border-radius:10px;background:#fff}.permanent-job-facts span{color:#9a8d91;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.permanent-job-facts strong{color:#4f3b43;font-size:.71rem}
.permanent-job-description{display:-webkit-box;overflow:hidden;margin:0;color:#716369;font-size:.75rem;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.permanent-job-card-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:14px;border-top:1px solid #eee6e3}.permanent-job-card-foot>span{display:flex;align-items:flex-start;gap:6px;max-width:56%;color:#9a8b90;font-size:.6rem;line-height:1.5}.permanent-job-card-foot>span svg{flex:0 0 auto;width:14px;height:14px;color:#7b9e85}.permanent-job-card-foot .btn{min-height:40px;padding:9px 12px;font-size:.68rem}.permanent-job-card-foot .btn:disabled{background:#e8e1e3;color:#775e68;cursor:default}
.permanent-job-empty{grid-column:1/-1;padding:34px;border:1px dashed #d9cdca;border-radius:16px;background:#faf8f6;color:#807277;text-align:center}.permanent-job-empty>svg{width:30px;height:30px;color:#8a2b4b}.permanent-job-empty h3{margin:9px 0 4px;color:#631a37}.permanent-job-empty p{margin:0;font-size:.78rem}

.permanent-post-shell{margin-top:-28px;margin-bottom:68px}.permanent-job-form,.permanent-job-success{max-width:1040px;margin:auto;padding:30px;border:1px solid #e7ddda;border-radius:24px;background:#fff;box-shadow:0 20px 48px rgba(58,29,39,.08)}
.permanent-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.permanent-form-heading h2{margin:8px 0 4px;color:#671b39;font-family:'Playfair Display',serif;font-size:2rem}.permanent-form-heading p{margin:0;color:#87787d;font-size:.78rem}.permanent-fee-pill{display:grid;place-items:center;min-width:82px;min-height:48px;padding:8px 15px;border-radius:999px;background:#6b1d3a;color:#fff;font-weight:800}
.permanent-payment-panel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:15px;margin-top:20px;padding:18px;border:1px solid #e6c889;border-radius:16px;background:#fff8e7}.permanent-payment-panel>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#6b1d3a;color:#fff}.permanent-payment-panel small{color:#9d6b30;font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.permanent-payment-panel h3{margin:4px 0;color:#5d1a35;font-size:1.08rem}.permanent-payment-panel p{margin:0 0 12px;color:#6f6055;font-size:.74rem;line-height:1.6}.permanent-payment-panel label{display:block;margin-bottom:6px;color:#4e3a42;font-size:.72rem;font-weight:700}.permanent-payment-panel input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #d9c49c;border-radius:10px;background:#fff;font:inherit}
.permanent-job-success{display:grid;justify-items:center;gap:10px;padding:48px;text-align:center}.permanent-job-success>svg{width:54px;height:54px;color:#59906a}.permanent-job-success h2{margin:4px 0;color:#651a38;font-family:'Playfair Display',serif;font-size:2rem}.permanent-job-success p{max-width:680px;margin:0 0 10px;color:#75676c;line-height:1.65}

.standard-urgent-routing{display:grid;gap:16px;margin:18px 0;padding:18px;border:1px solid #dfbe7c;border-radius:16px;background:#fff8e8}.standard-urgent-routing-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px}.standard-urgent-routing-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#6b1d3a;color:#fff}.standard-urgent-routing-head small{color:#a36c2f;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.standard-urgent-routing-head h3{margin:3px 0;color:#641a38;font-size:1rem}.standard-urgent-routing-head p{margin:0;color:#77675c;font-size:.72rem}.standard-urgent-terms{margin:0;background:#fff}
.admin-permanent-table td>small{display:block;margin-top:6px;color:#8d7e83;font-size:.62rem;line-height:1.5}.admin-permanent-table select,.admin-permanent-table textarea{width:100%;padding:8px;border:1px solid #dfd4d1;border-radius:8px;background:#fff;font:inherit;font-size:.68rem}.admin-permanent-table textarea{min-width:150px;min-height:68px;resize:vertical}.admin-permanent-table .btn{min-width:130px;padding:9px;font-size:.64rem}.admin-permanent-live{color:#36734d!important;font-weight:800}

@media(max-width:900px){.permanent-job-list{grid-template-columns:1fr}.permanent-job-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.permanent-job-workspace-heading,.permanent-jobs-hero-inner{align-items:flex-start;flex-direction:column}.permanent-job-workspace-heading .btn{width:100%;justify-content:center}}
@media(max-width:640px){.permanent-jobs-hero,.permanent-post-hero{padding:122px 0 48px}.permanent-job-workspace,.doctor-permanent-workspace,.permanent-job-form{padding:18px;border-radius:18px}.permanent-job-filters{grid-template-columns:1fr}.permanent-job-facts{grid-template-columns:1fr}.permanent-job-card-foot{align-items:stretch;flex-direction:column}.permanent-job-card-foot>span{max-width:none}.permanent-job-card-foot .btn{width:100%;justify-content:center}.permanent-form-heading{flex-direction:column}.permanent-payment-panel{grid-template-columns:1fr}.permanent-post-shell{margin-top:18px}}

/* Hospital and admin permanent-listing applicant workspaces */
.summary-permanent>span{background:#eee7f5;color:#653776}
.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.hospital-permanent-workspace{margin-top:24px;margin-bottom:24px;padding:26px;border:1px solid #e6dcda;border-radius:24px;background:#fff;box-shadow:0 14px 36px rgba(61,30,40,.06)}
.hospital-permanent-workspace.has-alerts{border-color:#bb7d42;box-shadow:0 16px 40px rgba(133,79,31,.12)}
.hospital-permanent-workspace-list{display:grid;gap:16px;margin-top:20px}
.hospital-permanent-listing{overflow:hidden;border:1px solid #e7ddda;border-radius:18px;background:#fcfbfa}
.hospital-permanent-listing.has-unread{border-color:#b27a3d;box-shadow:0 9px 24px rgba(119,75,30,.09)}
.hospital-permanent-listing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:19px 21px;border-bottom:1px solid #eee5e2;background:#fff}
.hospital-permanent-listing-head small{color:#a6753c;font-size:.61rem;font-weight:800;letter-spacing:.07em}.hospital-permanent-listing-head h3{margin:5px 0 3px;color:#631a38;font-family:'Playfair Display',serif;font-size:1.22rem}.hospital-permanent-listing-head p{margin:0;color:#83757a;font-size:.72rem}
.permanent-listing-state{padding:7px 10px;border-radius:999px;background:#eee9ea;color:#715c64;font-size:.61rem;font-weight:800;white-space:nowrap}.permanent-listing-state.state-live{background:#e5f2e9;color:#35704a}.permanent-listing-state.state-pending_payment{background:#fff0cc;color:#7b561f}.permanent-listing-state.state-rejected{background:#f7e3e8;color:#8a2345}.permanent-listing-state.state-expired,.permanent-listing-state.state-closed{background:#ece9e8;color:#695f62}
.hospital-permanent-listing-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #eee5e2}.hospital-permanent-listing-metrics>div{display:grid;gap:4px;padding:13px 20px;border-right:1px solid #eee5e2}.hospital-permanent-listing-metrics>div:last-child{border-right:0}.hospital-permanent-listing-metrics span{color:#9a8b90;font-size:.57rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.hospital-permanent-listing-metrics strong{color:#4e3b43;font-size:.73rem}
.hospital-permanent-admin-note{margin:14px 20px;padding:12px 14px;border-left:3px solid #b98142;background:#fff7e9;color:#75624c;font-size:.73rem;line-height:1.55}.hospital-permanent-admin-note strong{color:#6b1d3a}
.hospital-permanent-applicants{padding:0 20px}.hospital-permanent-applicants>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;color:#6b1d3a;font-size:.75rem;font-weight:800;cursor:pointer;list-style:none}.hospital-permanent-applicants>summary::-webkit-details-marker{display:none}.hospital-permanent-applicants>summary svg{width:17px;height:17px}.hospital-permanent-applicants[open]>summary svg{transform:rotate(180deg)}
.permanent-applicant-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 0 18px}.permanent-applicant-card{padding:16px;border:1px solid #e6dcda;border-radius:14px;background:#fff}.permanent-applicant-card.is-unread{border-left:5px solid #9b6230;background:#fffdf8}.permanent-applicant-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.permanent-applicant-head small{color:#ac763a;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.permanent-applicant-head h4{margin:4px 0 2px;color:#5f1936;font-size:.93rem}.permanent-applicant-head p{margin:0;color:#85757b;font-size:.67rem}.permanent-applicant-head>span{padding:5px 8px;border-radius:999px;background:#f0e8eb;color:#6e2440;font-size:.56rem;font-weight:800}
.permanent-applicant-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.permanent-applicant-facts>div{display:grid;gap:3px;padding:9px;border:1px solid #eee6e3;border-radius:9px;background:#fcfbfa}.permanent-applicant-facts span{color:#9b8e92;font-size:.52rem;font-weight:800;text-transform:uppercase}.permanent-applicant-facts strong{overflow-wrap:anywhere;color:#55434a;font-size:.64rem}.permanent-applicant-about{margin:11px 0 0;color:#6d5f64;font-size:.68rem;line-height:1.55}.permanent-applicant-card blockquote{margin:11px 0;padding:10px 12px;border-left:3px solid #c99656;background:#faf6ef;color:#6a584b;font-size:.69rem;line-height:1.55}.permanent-applicant-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#918489;font-size:.57rem}.permanent-applicant-foot span{display:flex;align-items:center;gap:5px}.permanent-applicant-foot svg{width:13px;height:13px;color:#668f72}
.permanent-applicant-empty{grid-column:1/-1;margin:0;padding:20px;border:1px dashed #d9cecb;border-radius:12px;color:#85767b;text-align:center;font-size:.72rem}.hospital-permanent-ack{display:flex;align-items:center;justify-content:center;gap:7px;width:calc(100% - 40px);margin:0 20px 18px;padding:10px;border:1px solid #6b1d3a;border-radius:10px;background:#6b1d3a;color:#fff;font:inherit;font-size:.68rem;font-weight:800;cursor:pointer}.hospital-permanent-ack svg{width:15px;height:15px}.hospital-permanent-ack:disabled{opacity:.6}

.admin-permanent-applicants{min-width:280px}.admin-permanent-applicants>summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none}.admin-permanent-applicants>summary::-webkit-details-marker{display:none}.admin-permanent-applicants>summary>span{padding:4px 7px;border-radius:999px;background:#8a2445;color:#fff;font-size:.55rem}.admin-permanent-applicants>summary svg{width:14px;height:14px}.admin-permanent-applicants>div{display:grid;gap:9px;margin-top:10px}.admin-permanent-applicant{padding:12px;border:1px solid #dfd4d1;border-radius:11px;background:#fff}.admin-permanent-applicant.is-unread{border-left:4px solid #ae7138;background:#fffaf1}.admin-permanent-applicant-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.admin-permanent-applicant-head>div{display:grid;gap:2px}.admin-permanent-applicant-head small{color:#a36e34;font-size:.5rem;font-weight:800;text-transform:uppercase}.admin-permanent-applicant-head strong{color:#5e1936;font-size:.72rem}.admin-permanent-applicant-head span{color:#8a7b80;font-size:.58rem}.admin-permanent-applicant-head em{padding:4px 6px;border-radius:999px;background:#f0e8eb;color:#702341;font-size:.5rem;font-style:normal;font-weight:800}.admin-permanent-applicant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:9px}.admin-permanent-applicant-grid .admin-detail-row{padding:7px;border:1px solid #eee6e3;border-radius:7px}.admin-permanent-applicant-grid .admin-detail-row span{font-size:.47rem}.admin-permanent-applicant-grid .admin-detail-row strong{font-size:.57rem}.admin-permanent-applicant>p{margin:8px 0 0;color:#6e6065;font-size:.58rem;line-height:1.5}.admin-permanent-applicant blockquote{margin:8px 0;padding:8px;border-left:2px solid #bd8247;background:#faf6ef;color:#69584d;font-size:.58rem;line-height:1.5}.admin-permanent-applicant-foot{display:flex;justify-content:space-between;gap:8px;color:#918489;font-size:.5rem}.admin-permanent-applicant-foot span{display:flex;align-items:center;gap:4px}.admin-permanent-applicant-foot svg{width:11px;height:11px}.admin-ack-permanent{margin-top:8px;padding:7px 9px;border:1px solid #6b1d3a;border-radius:8px;background:#6b1d3a;color:#fff;font:inherit;font-size:.57rem;font-weight:800;cursor:pointer}.admin-permanent-no-applicants{margin:0;color:#8c7e83;font-size:.62rem}

@media(max-width:1100px){.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.hospital-permanent-listing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hospital-permanent-listing-metrics>div:nth-child(2){border-right:0}.permanent-applicant-list{grid-template-columns:1fr}}
@media(max-width:720px){.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.hospital-permanent-workspace{width:calc(100% - 28px);padding:18px;border-radius:19px}.hospital-permanent-listing-head{align-items:stretch;flex-direction:column}.hospital-permanent-listing-metrics{grid-template-columns:1fr}.hospital-permanent-listing-metrics>div{border-right:0}.permanent-applicant-facts{grid-template-columns:1fr}.permanent-applicant-foot{align-items:flex-start;flex-direction:column}.admin-permanent-applicant-grid{grid-template-columns:1fr}}
@media(max-width:480px){.hospital-workspace-dashboard .hospital-dashboard-summary{grid-template-columns:1fr}}

/* Global navigation options remain visually prominent across every page. */
header .nav-links a,
header .nav-dropdown-toggle,
header .nav-right a,
header .nav-right button{
    font-weight:700;
}

/* ==================================================
   STREAMLINED DASHBOARD WORKSPACES + DISPLAY MODES
   ================================================== */

.doctor-dashboard-workspace-panel[hidden],
.hospital-dashboard-workspace-panel[hidden],
.doctor-dashboard-workspace-panel.hidden,
.hospital-dashboard-workspace-panel.hidden{
    display:none!important;
}

.dashboard-workspace-switcher{
    position:relative;
    z-index:6;
    display:flex;
    align-items:stretch;
    gap:12px;
    margin-top:22px;
    margin-bottom:18px;
    padding:11px;
    border:1px solid #e7ddda;
    border-radius:20px;
    background:rgba(255,255,255,.96);
    box-shadow:0 14px 38px rgba(61,30,40,.07);
}

.dashboard-workspace-buttons{
    display:grid;
    flex:1;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
}

.dashboard-workspace-button{
    position:relative;
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
    min-height:62px;
    padding:10px 13px;
    border:1px solid transparent;
    border-radius:14px;
    background:#f8f5f3;
    color:#6c5960;
    font:inherit;
    text-align:left;
    cursor:pointer;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}

.dashboard-workspace-button>svg{
    flex:0 0 auto;
    width:21px;
    height:21px;
}

.dashboard-workspace-button>span{
    display:grid;
    min-width:0;
    gap:2px;
}

.dashboard-workspace-button strong{
    overflow:hidden;
    color:inherit;
    font-size:.76rem;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.dashboard-workspace-button small{
    overflow:hidden;
    color:#9a8b90;
    font-size:.6rem;
    font-weight:600;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.dashboard-workspace-button>b{
    display:grid;
    place-items:center;
    min-width:22px;
    height:22px;
    margin-left:auto;
    padding:0 6px;
    border-radius:999px;
    background:#fff;
    color:#6b1d3a;
    font-size:.62rem;
}

.dashboard-workspace-button:hover{
    border-color:#d9c8cd;
    background:#fff;
    color:#681b39;
    transform:translateY(-1px);
}

.dashboard-workspace-button.is-active{
    border-color:#6b1d3a;
    background:#6b1d3a;
    color:#fff;
    box-shadow:0 9px 20px rgba(107,29,58,.17);
}

.dashboard-workspace-button.is-active small{color:rgba(255,255,255,.72)}

.dashboard-density-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:128px;
    min-height:44px;
    padding:10px 12px;
    border:1px solid #e0d6d3;
    border-radius:13px;
    background:#fff;
    color:#6b1d3a;
    font:inherit;
    font-size:.66rem;
    font-weight:800;
    cursor:pointer;
}

.dashboard-density-toggle svg{width:16px;height:16px}
.dashboard-density-toggle[aria-pressed="false"]{background:#f6f1ef;color:#725e66}

.dashboard-view-toggle{
    display:inline-flex;
    align-items:center;
    gap:3px;
    padding:3px;
    border:1px solid #e4d9d6;
    border-radius:11px;
    background:#f7f4f2;
}

.dashboard-view-toggle button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    min-height:32px;
    padding:7px 10px;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#817178;
    font:inherit;
    font-size:.62rem;
    font-weight:800;
    cursor:pointer;
}

.dashboard-view-toggle button svg{width:14px;height:14px}
.dashboard-view-toggle button.is-active{background:#fff;color:#681b39;box-shadow:0 4px 12px rgba(61,30,40,.08)}

.doctor-urgent-dashboard-workspace{
    margin-top:0;
    margin-bottom:26px;
    padding:26px;
    border:1px solid #e7ddda;
    border-radius:24px;
    background:#fff;
    box-shadow:0 18px 45px rgba(64,35,44,.07);
}

.doctor-urgent-workspace-heading,
.hospital-workspace-heading-actions,
.permanent-workspace-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.doctor-urgent-workspace-heading>div:first-child h2{
    margin:8px 0 5px;
    color:#671b39;
    font-family:'Playfair Display',serif;
    font-size:clamp(1.7rem,3vw,2.35rem);
}

.doctor-urgent-workspace-heading>div:first-child p,
.doctor-urgent-empty-note p{margin:0;color:#85767b;font-size:.76rem;line-height:1.55}
.doctor-urgent-workspace-heading .doctor-urgent-duty-cta{width:min(340px,42%);min-width:290px}
.doctor-urgent-empty-note{display:flex;align-items:center;gap:9px;margin-top:16px;padding:12px 14px;border-radius:12px;background:#f8f5f3}
.doctor-urgent-empty-note svg{flex:0 0 auto;width:18px;height:18px;color:#5d8b69}

/* Doctor opportunity views */
.doctor-opportunity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.doctor-opportunity-list{display:grid;grid-template-columns:1fr;gap:12px}
.doctor-opportunity-list .doctor-opportunity-card{
    display:grid;
    grid-template-columns:minmax(240px,1.05fr) minmax(280px,1fr) minmax(170px,.58fr);
    grid-template-areas:"top meta footer" "tags meta footer";
    gap:10px 18px;
    min-height:0;
    padding:17px 18px;
}
.doctor-opportunity-list .doctor-opportunity-card-top{grid-area:top}
.doctor-opportunity-list .doctor-match-tags{grid-area:tags;margin:0}
.doctor-opportunity-list .doctor-opportunity-meta{grid-area:meta;align-self:stretch;margin:0}
.doctor-opportunity-list .doctor-opportunity-card-footer{
    grid-area:footer;
    align-self:stretch;
    align-items:stretch;
    justify-content:center;
    flex-direction:column;
    gap:10px;
    margin:0;
    padding:0 0 0 17px;
    border-top:0;
    border-left:1px solid #eee5e2;
}
.doctor-opportunity-list .doctor-opportunity-card-footer>span{max-width:none}
.doctor-opportunity-list .doctor-opportunity-card-footer .btn{width:100%;justify-content:center}

.permanent-job-grid-view{grid-template-columns:repeat(2,minmax(0,1fr))}
.permanent-job-list-view{grid-template-columns:1fr}
.permanent-job-list-view .permanent-job-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1.15fr) minmax(180px,.65fr);gap:14px 18px}
.permanent-job-list-view .permanent-job-card-head{grid-column:1}
.permanent-job-list-view .permanent-job-facts{grid-column:2;grid-row:1/3;align-self:start}
.permanent-job-list-view .permanent-job-description{grid-column:1}
.permanent-job-list-view .permanent-job-card-foot{grid-column:3;grid-row:1/3;align-items:stretch;justify-content:center;flex-direction:column;margin:0;padding:0 0 0 17px;border-top:0;border-left:1px solid #eee6e3}
.permanent-job-list-view .permanent-job-card-foot>span{max-width:none}

/* Hospital workspace views */
.hospital-workspace-heading-actions{justify-content:flex-end;flex-wrap:wrap}
.hospital-urgent-workspace-list.is-grid-view,
.hospital-permanent-workspace-list.is-grid-view{grid-template-columns:repeat(2,minmax(0,1fr))}
.hospital-urgent-workspace-list.is-list-view,
.hospital-permanent-workspace-list.is-list-view{grid-template-columns:1fr}
.hospital-urgent-workspace-list.is-grid-view>.urgent-shift-empty,
.hospital-permanent-workspace-list.is-grid-view>.urgent-shift-empty{grid-column:1/-1}

#hospitalRegularRequestGrid.is-grid-view{grid-template-columns:1fr}
#hospitalRegularRequestGrid.is-grid-view .dashboard-table-wrap{overflow:visible}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table,
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table tbody{display:block;min-width:0}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table thead{display:none}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table tr{display:grid;gap:6px;padding:12px;border:1px solid #e8dfdc;border-radius:12px;background:#fff}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:3px 0;border:0;text-align:right}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table td::before{content:attr(data-label);color:#9a8a90;font-size:.55rem;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.05em}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table td[colspan]{display:block;grid-column:1/-1;padding:15px;text-align:center}
#hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table td[colspan]::before{display:none}
#hospitalRegularRequestGrid.is-list-view{grid-template-columns:1fr}

/* Compact urgent-duty status and board views */
.urgent-live-status-panel{
    position:relative;
    z-index:8;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    margin-top:116px;
    padding:18px 20px;
    border:1px solid #e5d8d5;
    border-left:5px solid #6b1d3a;
    border-radius:18px;
    background:linear-gradient(135deg,#fff,#faf5f2);
    box-shadow:0 14px 36px rgba(61,30,40,.08);
}
.urgent-live-status-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#6b1d3a;color:#fff;box-shadow:0 8px 18px rgba(107,29,58,.18)}
.urgent-live-status-icon svg{width:21px;height:21px}
.urgent-live-status-panel small{color:#b37b3e;font-size:.59rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.urgent-live-status-panel h1{margin:3px 0 2px;color:#641a38;font-family:'Playfair Display',serif;font-size:1.35rem;line-height:1.2}
.urgent-live-status-panel p{margin:0;color:#7b6c71;font-size:.7rem;line-height:1.5}
.urgent-live-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}
.urgent-live-status-actions .btn{min-height:42px;padding:9px 13px;font-size:.68rem}
.urgent-board-page{padding-top:0}
.urgent-board-shell{margin-top:20px}
.urgent-board-filters{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px}
.urgent-board-filters label{min-width:150px;flex:1 1 150px}
.urgent-board-filters input,
.urgent-board-filters select{width:100%;min-height:42px;padding:9px 11px;border:1px solid #ded3d0;border-radius:10px;background:#fff;color:#4e3d44;font:inherit;font-size:.7rem;outline:none}
.urgent-board-filters input:focus,
.urgent-board-filters select:focus{border-color:#75213f;box-shadow:0 0 0 3px rgba(117,33,63,.08)}
.urgent-requirement-list{display:grid;grid-template-columns:1fr;gap:12px}
.urgent-requirement-list .urgent-listing-card{
    display:grid;
    grid-template-columns:minmax(230px,1fr) minmax(290px,1.15fr) minmax(170px,.62fr);
    grid-template-areas:"head details rate" "title details rate" "location details action" "notes notes action";
    gap:8px 18px;
    padding:18px;
}
.urgent-requirement-list .urgent-listing-top{grid-area:head}
.urgent-requirement-list .urgent-listing-card>h3{grid-area:title;margin:0}
.urgent-requirement-list .urgent-listing-location{grid-area:location}
.urgent-requirement-list .urgent-listing-details{grid-area:details;align-self:stretch;margin:0}
.urgent-requirement-list .urgent-listing-notes{grid-area:notes;margin:0}
.urgent-requirement-list .urgent-listing-rate{grid-area:rate;align-self:stretch;margin:0}
.urgent-requirement-list .urgent-listing-action{grid-area:action;align-self:end;width:100%;justify-content:center}

/* Keep account warnings visible above shift content, without negative overlap. */
.doctor-reliability-notice:not(.hidden){position:relative;z-index:20;margin-top:18px;margin-bottom:14px}
.doctor-shift-panel{position:relative;z-index:2;margin-top:14px!important}

/* Login columns start together and retain matching visual weight. */
@media(min-width:993px){
    .login-layout{align-items:start}
    .login-card-shell,.login-visual-card{min-height:720px}
    .login-card-shell{display:flex;flex-direction:column;justify-content:flex-start}
}

/* A native compact desktop density: similar information density to ~70% zoom. */
@media(min-width:901px){
    .dashboard-density-compact .doctor-home-dashboard-page>.container,
    .dashboard-density-compact .hospital-workspace-dashboard>.container,
    .dashboard-density-compact .urgent-board-page>.container{max-width:1080px}
    .dashboard-density-compact .doctor-dashboard-identity,
    .dashboard-density-compact .hospital-dashboard-identity{padding:18px 22px}
    .dashboard-density-compact .doctor-dashboard-avatar{width:86px;height:86px}
    .dashboard-density-compact .doctor-dashboard-name{font-size:2rem}
    .dashboard-density-compact .hospital-dashboard-summary{gap:10px;margin-top:16px}
    .dashboard-density-compact .hospital-summary-card{min-height:72px;padding:12px 14px}
    .dashboard-density-compact .dashboard-workspace-switcher{margin-top:15px;margin-bottom:14px;padding:8px}
    .dashboard-density-compact .dashboard-workspace-button{min-height:52px;padding:8px 10px}
    .dashboard-density-compact .doctor-opportunity-workspace,
    .dashboard-density-compact .doctor-permanent-workspace,
    .dashboard-density-compact .doctor-urgent-dashboard-workspace,
    .dashboard-density-compact .hospital-permanent-workspace,
    .dashboard-density-compact .hospital-urgent-workspace{padding:20px;border-radius:19px}
    .dashboard-density-compact .doctor-opportunity-heading h2,
    .dashboard-density-compact .permanent-job-workspace-heading h2,
    .dashboard-density-compact .hospital-urgent-interest-heading h2{font-size:1.75rem}
    .dashboard-density-compact .doctor-opportunity-card,
    .dashboard-density-compact .permanent-job-card{padding:15px}
    .dashboard-density-compact .doctor-opportunity-meta>div,
    .dashboard-density-compact .permanent-job-facts>div{padding:8px 9px}
    .dashboard-density-compact .urgent-live-status-panel{margin-top:104px;padding:14px 17px}
    .dashboard-density-compact .urgent-board-shell,
    .dashboard-density-compact .urgent-shift-panel{padding:20px;border-radius:19px}
    .dashboard-density-compact .urgent-listing-card{padding:15px}
}

@media(max-width:1100px){
    .doctor-opportunity-list .doctor-opportunity-card,
    .permanent-job-list-view .permanent-job-card,
    .urgent-requirement-list .urgent-listing-card{display:flex;flex-direction:column}
    .doctor-opportunity-list .doctor-opportunity-card-footer,
    .permanent-job-list-view .permanent-job-card-foot{width:100%;padding:13px 0 0;border-top:1px solid #eee5e2;border-left:0}
    .hospital-urgent-workspace-list.is-grid-view,
    .hospital-permanent-workspace-list.is-grid-view{grid-template-columns:1fr}
}

@media(max-width:900px){
    .dashboard-density-toggle{display:none}
    .dashboard-workspace-switcher{flex-direction:column}
    .doctor-urgent-workspace-heading{align-items:stretch;flex-direction:column}
    .doctor-urgent-workspace-heading .doctor-urgent-duty-cta{width:100%;min-width:0}
    .urgent-live-status-panel{margin-top:96px}
    .urgent-live-status-panel{grid-template-columns:auto minmax(0,1fr)}
    .urgent-live-status-actions{grid-column:1/-1;justify-content:stretch}
    .urgent-live-status-actions .btn{width:100%;justify-content:center}
    .urgent-requirement-grid{grid-template-columns:1fr}
    #hospitalRegularRequestGrid.is-grid-view .dashboard-simple-table tbody{grid-template-columns:1fr}
}

@media(max-width:720px){
    .dashboard-workspace-switcher{width:calc(100% - 28px);padding:8px;border-radius:16px}
    .dashboard-workspace-buttons{grid-template-columns:1fr}
    .dashboard-workspace-button{min-height:52px}
    .dashboard-workspace-button strong,.dashboard-workspace-button small{white-space:normal}
    .doctor-opportunity-workspace,
    .doctor-urgent-dashboard-workspace,
    .doctor-permanent-workspace{width:calc(100% - 28px);padding:18px;border-radius:18px}
    .doctor-opportunity-tools{align-items:stretch}
    .dashboard-view-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
    .dashboard-view-toggle button{width:100%}
    .hospital-workspace-heading-actions,.permanent-workspace-actions{align-items:stretch;flex-direction:column;width:100%}
    .hospital-workspace-heading-actions .btn,.permanent-workspace-actions .btn{width:100%;justify-content:center}
    .urgent-live-status-panel{width:calc(100% - 28px);margin-top:90px;padding:15px}
    .urgent-live-status-panel{grid-template-columns:1fr;text-align:center}
    .urgent-live-status-icon{margin:auto}
    .urgent-live-status-actions{grid-column:auto;flex-direction:column}
    .urgent-board-toolbar{align-items:stretch;flex-direction:column}
    .urgent-board-filters{width:100%}
    .urgent-board-filters label{flex-basis:100%}
    .doctor-reliability-notice:not(.hidden){width:calc(100% - 28px);margin-bottom:14px}
    .doctor-shift-panel{margin-top:14px!important}
}
