@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#07172a;--navy2:#10243c;--ink:#14253a;--muted:#637388;--teal:#02ac83;--mint:#e3f8f1;--stroke:#dfe7ef;--page:#f4f7fb;--white:#fff;--gold:#f3b847;--red:#d94b55;--shadow:0 10px 32px rgba(15,42,70,.06)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);font-family:'DM Sans',system-ui,sans-serif;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}.layout{display:flex;min-height:100vh}.sidebar{width:255px;flex:0 0 255px;background:var(--navy);color:#dae5f1;min-height:100vh;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:20}.logo{display:flex;align-items:center;gap:12px;padding:29px 22px 25px;color:#fff;border-bottom:1px solid #ffffff18}.logo-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#04b78f,#057dd0);display:grid;place-items:center;font-size:22px;font-weight:800}.logo strong{font:800 25px 'Manrope',sans-serif;letter-spacing:-1.5px}.logo small{display:block;font-size:9px;letter-spacing:1.2px;color:#a5c1d3;text-transform:uppercase;margin-top:-2px}.section-caption{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#728ba6;margin:26px 22px 9px}.nav{padding:0 12px}.nav button{width:100%;display:flex;align-items:center;gap:12px;padding:12px 13px;border:0;background:transparent;color:#b6c7d7;text-align:left;border-radius:9px;margin:3px 0;font-size:13px;font-weight:600}.nav button:hover{background:#ffffff11;color:#fff}.nav button.active{background:#11ba9220;color:#72f2cf;box-shadow:inset 3px 0 0 #31c9a3}.nav .ic{width:23px;text-align:center;font-size:17px}.sidebar-bottom{padding:23px 20px;color:#8196ac;font-size:11px;line-height:1.6}.main{min-width:0;flex:1}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:#fff;border-bottom:1px solid var(--stroke);gap:18px;position:sticky;top:0;z-index:10}.top-left{display:flex;align-items:center;gap:12px}.top-left h1{font-size:18px;margin:0;font-weight:800;letter-spacing:-.5px}.top-left p{margin:3px 0 0;font-size:11px;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:9px}.select,.input,textarea{border:1px solid var(--stroke);padding:11px 13px;background:#fff;border-radius:10px;color:var(--ink);outline:none;max-width:100%}.input:focus,.select:focus,textarea:focus{border-color:#4cba9f;box-shadow:0 0 0 3px #04b98f17}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;border:1px solid var(--stroke);background:white;padding:10px 15px;font-weight:700;font-size:12px;color:var(--ink);min-height:40px}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--teal);border-color:var(--teal);color:white}.btn.dark{background:#102b44;color:white;border-color:#102b44}.btn.danger{color:var(--red)}.btn.sm{padding:7px 11px;min-height:32px;font-size:11px}.btn.ghost{background:transparent}.content{padding:32px 35px 64px;max-width:1620px;margin:auto}.hero{background:linear-gradient(112deg,#08283e,#074b5b 65%,#087463);border-radius:18px;color:white;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden;position:relative}.hero:after{content:'◉';position:absolute;right:42px;top:-87px;font-size:260px;font-weight:800;color:#ffffff0d;pointer-events:none}.hero h2{font:800 28px/1.2 'Manrope',sans-serif;letter-spacing:-1px;margin:0 0 10px}.hero p{font-size:13px;color:#c9e7e5;max-width:570px;margin:0;line-height:1.7}.hero .eyebrow{color:#6ef4d2;font-size:11px;letter-spacing:2px;font-weight:800;margin:0 0 9px}.hero .btn{position:relative;z-index:1}.notice{background:#fffaf0;border:1px solid #f4ddb0;color:#8a6323;border-radius:11px;padding:11px 15px;font-size:12px;margin:20px 0 0;line-height:1.5}.section-title{display:flex;align-items:center;justify-content:space-between;margin:27px 0 14px;gap:12px}.section-title h3{margin:0;font-size:16px;font-weight:800;letter-spacing:-.25px}.section-title p{margin:4px 0 0;font-size:12px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:22px}.stat{background:#fff;border:1px solid var(--stroke);border-radius:14px;padding:20px;box-shadow:var(--shadow)}.stat .symbol{height:37px;width:37px;background:#e4f8f1;border-radius:11px;display:grid;place-items:center;color:#008665;font-size:18px;margin-bottom:18px}.stat strong{font:800 27px 'Manrope',sans-serif;letter-spacing:-1px}.stat label{display:block;color:var(--muted);font-size:12px;margin-top:4px}.stat .delta{color:#049c73;font-size:10px;margin-top:12px;font-weight:800}.columns{display:grid;grid-template-columns:1.55fr 1fr;gap:17px}.card{background:#fff;border:1px solid var(--stroke);border-radius:15px;box-shadow:var(--shadow);padding:21px;min-width:0}.card h3{font-size:15px;margin:0 0 5px;font-weight:800}.card .hint{color:var(--muted);font-size:12px;margin:0 0 20px}.actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick{border:1px solid var(--stroke);border-radius:12px;background:#fcfdff;text-align:left;padding:18px 14px;min-height:112px}.quick:hover{border-color:#80cdb9;background:#f2fbf8}.quick .qicon{font-size:22px;display:block;margin-bottom:10px}.quick strong{font-size:12px;display:block}.quick small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.pill{display:inline-block;padding:5px 9px;border-radius:99px;background:#e6f7f0;color:#0b946d;font-weight:800;font-size:10px;white-space:nowrap}.pill.yellow{background:#fff4d8;color:#a07312}.pill.red{background:#ffeaed;color:#bd3440}.pill.blue{background:#eaf0ff;color:#4766ae}.tablewrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:12px;min-width:600px}.data-table th{text-align:left;background:#f7f9fc;color:#64758a;text-transform:uppercase;letter-spacing:.5px;font-size:10px;padding:13px 11px}.data-table td{padding:14px 11px;border-bottom:1px solid #edf0f4;vertical-align:middle}.data-table tr:last-child td{border:0}.data-table tr:hover td{background:#fbfdfe}.avatar{width:32px;height:32px;border-radius:50%;background:#ddeeea;display:inline-grid;place-items:center;font-weight:800;color:#177b65;margin-right:8px}.field{display:flex;flex-direction:column;gap:7px}.field label{color:#48586a;font-size:11px;font-weight:800}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.formgrid .full{grid-column:1/-1}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:20px 0}.toolbar .input{width:290px}.empty{text-align:center;padding:35px;color:var(--muted)}.empty .big{font-size:38px;margin-bottom:10px}.empty strong{display:block;color:var(--ink);font-size:15px}.empty p{font-size:12px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{background:white;border:1px solid var(--stroke);padding:15px;border-radius:13px;position:relative}.step .n{display:inline-grid;place-items:center;height:28px;width:28px;background:#e4f8f1;color:#008866;border-radius:50%;font-size:11px;font-weight:800;margin-bottom:11px}.step strong{display:block;font-size:12px}.step p{font-size:11px;color:var(--muted);margin-bottom:0;line-height:1.5}.audit-list{max-height:380px;overflow:auto}.audit{padding:12px 0;border-bottom:1px solid var(--stroke);display:flex;gap:12px}.audit .dot{height:9px;width:9px;border-radius:50%;background:var(--teal);margin-top:5px;flex:0 0 9px}.audit strong{font-size:12px}.audit p{color:var(--muted);font-size:11px;margin:4px 0}.aud-date{color:#8794a5;font-size:10px}.country-card{border:1px solid var(--stroke);background:white;border-radius:14px;padding:23px;cursor:pointer;text-align:left;min-height:170px}.country-card:hover{border-color:#43ba9c;transform:translateY(-1px)}.country-card strong{display:block;font-size:18px;margin:16px 0 7px}.country-card span{color:var(--muted);font-size:12px}.country-card .flag{font-size:30px}.countries{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.modal-cover{position:fixed;inset:0;background:#07172ab5;display:grid;place-items:center;z-index:50;padding:16px}.modal{background:white;border-radius:18px;padding:26px;width:min(580px,100%);max-height:88vh;overflow:auto;box-shadow:0 18px 80px #001a3670}.modal h3{margin:0 0 8px;font-size:19px}.modal .intro{font-size:12px;color:var(--muted);margin-bottom:22px}.modal footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;flex-wrap:wrap}.toast{position:fixed;bottom:22px;right:23px;z-index:70;background:#0c2d3f;color:#fff;border-radius:10px;padding:13px 17px;font-size:13px;box-shadow:0 8px 40px #07172a40;max-width:370px}.barbox{display:flex;align-items:flex-end;gap:14px;height:180px;padding:20px 10px 4px;border-bottom:1px solid var(--stroke)}.bar-item{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;height:100%;font-size:10px;color:var(--muted)}.bar{width:min(45px,75%);border-radius:6px 6px 0 0;background:linear-gradient(180deg,#13c4a1,#087a8b);min-height:4px}.banner{text-align:center;font-size:11px;color:#8592a3;padding:25px}.menu-toggle{display:none}.tabbar{display:flex;gap:8px;flex-wrap:wrap}.tab{border:1px solid var(--stroke);background:white;padding:9px 13px;border-radius:8px;font-size:12px;font-weight:700;color:#617287}.tab.active{background:#e5f8f2;color:#008766;border-color:#b4e7d7}.subtle{font-size:12px;color:var(--muted);line-height:1.6}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.summary>div{background:#f6f9fc;border-radius:10px;padding:15px}.summary strong{font-size:17px;display:block}.summary small{font-size:11px;color:var(--muted)}.public-hero{background:linear-gradient(90deg,#052d3b,#00765e);color:white;border-radius:14px;padding:37px}.public-hero h2{font-size:27px;margin:5px 0}.public-hero p{color:#dcfff2;font-size:13px}.mobile-overlay{display:none}@media(max-width:1150px){.stats{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}.topbar{padding:0 23px}.content{padding:25px 23px}}@media(max-width:800px){.sidebar{position:fixed;left:0;top:0;transform:translateX(-100%);transition:transform .2s;width:255px}.sidebar.open{transform:translateX(0)}.mobile-overlay.open{display:block;background:#0009;position:fixed;inset:0;z-index:19}.menu-toggle{display:inline-flex}.top-left h1{font-size:14px}.topbar{height:64px;padding:0 15px}.top-actions{gap:5px}.top-actions .select{max-width:138px;padding:8px;font-size:11px}.content{padding:18px 15px}.hero{padding:26px 22px}.hero h2{font-size:22px}.hero .btn{display:none}.countries{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.stats{gap:9px}.stat{padding:15px}.stat strong{font-size:22px}.actions-grid{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:1fr}.formgrid .full{grid-column:1}.summary{grid-template-columns:1fr}.section-title h3{font-size:14px}.top-left p{display:none}.top-actions .select{max-width:100px}.top-actions .btn{padding:8px}.hero:after{display:none}.steps{grid-template-columns:1fr}}


/* ================================================
   FOOT_FRONTEND_PATCH_V1_1
   HEADER / COUNTRY SELECTOR / HERO ONLY
   ================================================ */

.topbar {
    min-height: 82px;
    height: auto;
    padding-top: 13px;
    padding-bottom: 13px;
    gap: 18px;
}

.top-left {
    flex: 0 1 auto;
    min-width: 0;
}

.top-left h1 {
    font-size: 19px;
    line-height: 1.3;
    font-weight: 800;
}

.top-left p {
    line-height: 1.5;
    margin-top: 4px;
}

.top-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    flex-wrap: nowrap;
    min-width: 0;
}

.foot-country-switch {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px;
    background: #f3f6fa;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    min-width: 0;
}

.foot-country-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 9px 11px;
    white-space: nowrap;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #526479;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}

.foot-country-btn:hover {
    background: #e5f4f0;
    color: #006c5a;
}

.foot-country-btn.selected {
    background: #ffffff;
    border-color: #9cddd0;
    color: #007c68;
    box-shadow: 0 1px 5px rgba(0,0,0,.06);
}

.foot-country-btn:focus-visible {
    outline: 3px solid #14b8a6;
    outline-offset: 2px;
}

.foot-flag {
    font-size: 16px;
    line-height: 1;
}

.hero {
    align-items: center;
}

.foot-hero-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    flex: 1 1 auto;
}

.foot-hero-content .eyebrow {
    margin: 0 0 13px;
    line-height: 1.5;
}

.foot-hero-content h2 {
    display: block;
    margin: 0 0 12px;
    line-height: 1.25;
}

.foot-hero-content p {
    display: block;
    max-width: 650px;
    margin: 0;
    line-height: 1.75;
}

@media (max-width: 1280px) {
    .topbar {
        flex-wrap: wrap;
        align-items: center;
    }

    .top-actions {
        flex: 1 1 auto;
        justify-content: flex-end;
    }
}

@media (max-width: 800px) {
    .topbar {
        min-height: 70px;
        padding: 12px 15px;
        gap: 12px;
    }

    .top-left h1 {
        font-size: 16px;
    }

    .top-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .foot-country-switch {
        flex: 1 1 auto;
        overflow-x: auto;
        max-width: 100%;
        scrollbar-width: thin;
    }

    .foot-country-btn {
        font-size: 11px;
        padding: 8px;
    }

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

    .foot-hero-content h2 {
        font-size: 23px;
    }
}

@media (max-width: 520px) {
    .top-left p {
        display: block;
        font-size: 10px;
    }

    .top-actions {
        flex-wrap: wrap;
    }

    .foot-country-switch {
        width: 100%;
        flex: 1 1 100%;
    }

    .foot-country-btn {
        flex: 1 0 auto;
    }

    .foot-hero-content h2 {
        font-size: 21px;
    }

    .foot-hero-content p {
        font-size: 12px;
    }
}

/* END FOOT_FRONTEND_PATCH_V1_1 */


/* ==================================================
   FOOT_VERTICAL_HEADER_V1_2
   Strictly vertical, left-aligned dashboard controls
   ================================================== */

.topbar {
    height: auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 14px;
    padding: 20px 35px;
    position: relative;
}

.top-left {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 12px;
}

.top-left h1 {
    margin: 0;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 800;
}

.top-left p {
    display: block;
    margin: 5px 0 0;
    font-size: 12px;
    line-height: 1.5;
}

.top-actions {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 9px;
}

.foot-country-column {
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 9px;
}

.foot-country-option {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    padding: 9px 14px;
    min-height: 39px;
    border: 1px solid #dce5ee;
    border-radius: 9px;
    background: #ffffff;
    color: #243850;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}

.foot-country-option:hover {
    background: #eefaf6;
    border-color: #72cbb4;
}

.foot-country-option.selected {
    background: #e5f8f1;
    border-color: #22b88c;
    color: #007c65;
}

.foot-country-option:focus-visible {
    outline: 3px solid #14b8a6;
    outline-offset: 2px;
}

.foot-country-flag {
    font-size: 17px;
    line-height: 1;
}

.top-actions > [data-language] {
    align-self: flex-start;
    margin: 0;
    min-width: 46px;
}

/* Keep identical stacking on smaller screens. */

@media (max-width: 1150px) {
    .topbar {
        height: auto;
        padding: 18px 23px;
    }
}

@media (max-width: 800px) {
    .topbar {
        height: auto;
        min-height: 0;
        padding: 16px 15px;
        flex-direction: column;
        align-items: flex-start;
    }

    .top-actions {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
    }

    .top-left p {
        display: block;
    }
}

@media (max-width: 520px) {
    .topbar {
        height: auto;
        gap: 12px;
    }

    .top-left h1 {
        font-size: 18px;
    }

    .top-left p {
        display: block;
        font-size: 11px;
    }

    .foot-country-option {
        font-size: 12px;
        padding: 8px 12px;
    }

    .top-actions > [data-language] {
        padding: 8px 12px;
    }
}

/* END FOOT_VERTICAL_HEADER_V1_2 */
