/* ==========================================================================
   hidrologi.net — Modern v2.7 Public Data
   Rain Gauge / TRMM / Rainfall Analysis
   ========================================================================== */

.mv27-public-data{
    background:#f5fafe;
    color:#294b66;
}

.mv27-main{
    min-height:55vh;
}

.mv27-hero{
    position:relative;
    overflow:hidden;
    padding:52px 0 48px;
    color:#fff;
    background:
        radial-gradient(circle at 86% 15%,rgba(61,192,229,.22),transparent 27%),
        radial-gradient(circle at 12% 100%,rgba(34,165,133,.16),transparent 25%),
        linear-gradient(135deg,#07385f 0%,#07599d 58%,#0b7582 100%);
}

.mv27-hero::after{
    content:"";
    position:absolute;
    right:-120px;
    bottom:-190px;
    width:390px;
    height:390px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    box-shadow:
        0 0 0 52px rgba(255,255,255,.022),
        0 0 0 104px rgba(255,255,255,.014);
}

.mv27-hero .mv2-container{
    position:relative;
    z-index:2;
}

.mv27-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#bce8f2;
    font-size:9px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.mv27-kicker::before{
    content:"";
    width:22px;
    height:2px;
    border-radius:999px;
    background:#f58a25;
}

.mv27-hero h1{
    max-width:880px;
    margin:11px 0 0;
    color:#fff;
    font-size:38px;
    line-height:1.08;
    letter-spacing:-1px;
}

.mv27-hero p{
    max-width:760px;
    margin:12px 0 0;
    color:#dbeaf3;
    font-size:12px;
    line-height:1.65;
}

.mv27-breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
    margin-top:16px;
    color:#bdd5e4;
    font-size:8.5px;
}

.mv27-breadcrumb a{
    color:#fff;
}

.mv27-breadcrumb span{
    opacity:.6;
}

.mv27-section{
    padding:38px 0;
}

.mv27-section.is-white{
    background:#fff;
}

.mv27-section.is-soft{
    background:#f5fafe;
}

.mv27-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:end;
    margin-bottom:18px;
}

.mv27-toolbar-copy h2{
    margin:0;
    color:#082a55;
    font-size:20px;
}

.mv27-toolbar-copy p{
    margin:6px 0 0;
    max-width:720px;
    color:#60798f;
    font-size:10px;
    line-height:1.55;
}

.mv27-filter{
    display:grid;
    grid-template-columns:190px 220px auto;
    gap:8px;
    align-items:end;
    padding:13px;
    border:1px solid #dce8f1;
    border-radius:12px;
    background:#fff;
    box-shadow:0 7px 20px rgba(25,77,117,.045);
}

.mv27-filter label{
    display:block;
}

.mv27-filter label span{
    display:block;
    margin-bottom:5px;
    color:#526f87;
    font-size:8.5px;
    font-weight:800;
}

.mv27-filter select,
.mv27-filter input{
    width:100%;
    height:39px;
    padding:0 10px;
    border:1px solid #d6e3ed;
    border-radius:8px;
    background:#fbfdff;
    color:#294b66;
    outline:0;
    font:inherit;
    font-size:9px;
}

.mv27-button,
.mv27-filter button{
    min-height:39px;
    padding:0 15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:0;
    border-radius:8px;
    color:#fff;
    background:linear-gradient(180deg,#1688ec,#0871d7);
    font:inherit;
    font-size:9px;
    font-weight:900;
    cursor:pointer;
}

.mv27-button.is-light{
    border:1px solid #d8e5ef;
    color:#47657d;
    background:#fff;
}

.mv27-card{
    border:1px solid #dfe9f1;
    border-radius:13px;
    background:#fff;
    box-shadow:0 7px 22px rgba(25,77,117,.045);
}

.mv27-card-header{
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
    padding:16px 18px 0;
}

.mv27-card-header h2,
.mv27-card-header h3{
    margin:0;
    color:#082a55;
}

.mv27-card-header h2{
    font-size:18px;
}

.mv27-card-header h3{
    font-size:14px;
}

.mv27-card-body{
    padding:18px;
}

.mv27-table-wrap{
    overflow:auto;
    border:1px solid #e1eaf1;
    border-radius:11px;
    background:#fff;
}

.mv27-table{
    width:100%;
    min-width:820px;
    border-collapse:collapse;
    font-size:8.7px;
}

.mv27-table th,
.mv27-table td{
    padding:9px 10px;
    border-bottom:1px solid #e8eef3;
    text-align:left;
    vertical-align:middle;
}

.mv27-table th{
    position:sticky;
    top:0;
    z-index:1;
    color:#234963;
    background:#edf7ff;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.025em;
    white-space:nowrap;
}

.mv27-table tbody tr:hover{
    background:#f9fcfe;
}

.mv27-table td.is-number,
.mv27-table th.is-number{
    text-align:right;
    font-variant-numeric:tabular-nums;
}

.mv27-table td.is-center,
.mv27-table th.is-center{
    text-align:center;
}

.mv27-table a{
    color:#0871ca;
    font-weight:900;
}

.mv27-table tfoot td{
    color:#fff;
    background:#07385f;
    font-weight:800;
}

.mv27-pagination{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:5px;
    margin-top:18px;
}

.mv27-pagination a,
.mv27-pagination span{
    min-width:32px;
    height:32px;
    padding:0 9px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d9e5ee;
    border-radius:8px;
    background:#fff;
    color:#567188;
    font-size:8.5px;
    font-weight:800;
}

.mv27-pagination a:hover,
.mv27-pagination .is-active{
    border-color:#8fc7f1;
    background:#0871ca;
    color:#fff;
}

.mv27-two-col{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);
    gap:16px;
    align-items:start;
}

.mv27-split{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.mv27-info-list{
    display:grid;
    gap:0;
}

.mv27-info-row{
    display:grid;
    grid-template-columns:170px minmax(0,1fr);
    gap:12px;
    padding:9px 0;
    border-bottom:1px solid #ebf0f4;
}

.mv27-info-row:last-child{
    border-bottom:0;
}

.mv27-info-row span{
    color:#708698;
    font-size:9px;
}

.mv27-info-row strong{
    min-width:0;
    color:#294b66;
    font-size:9.5px;
    font-weight:800;
    word-break:break-word;
}

.mv27-map{
    height:370px;
    overflow:hidden;
    border:1px solid #d8e5ef;
    border-radius:11px;
    background:#edf5fa;
}

.mv27-stat-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:16px;
}

.mv27-stat{
    padding:15px;
    border:1px solid #e0eaf2;
    border-radius:11px;
    background:#fff;
}

.mv27-stat small{
    display:block;
    color:#71889a;
    font-size:8px;
}

.mv27-stat strong{
    display:block;
    margin-top:4px;
    color:#082a55;
    font-size:18px;
    line-height:1.15;
}

.mv27-dataset-nav{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:16px;
}

.mv27-dataset-nav a{
    min-height:32px;
    padding:0 11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d8e5ef;
    border-radius:999px;
    background:#fff;
    color:#507088;
    font-size:8px;
    font-weight:900;
}

.mv27-dataset-nav a:hover{
    border-color:#93c9ef;
    color:#0871ca;
    background:#edf7ff;
}

.mv27-near-list{
    list-style:none;
    padding:0;
    margin:0;
}

.mv27-near-list li{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    padding:10px 0;
    border-bottom:1px solid #e9eff4;
}

.mv27-near-list li:last-child{
    border-bottom:0;
}

.mv27-near-list a{
    color:#0871ca;
    font-size:9.5px;
    font-weight:900;
}

.mv27-near-list small{
    display:block;
    margin-top:3px;
    color:#71879a;
    font-size:8px;
    line-height:1.4;
}

.mv27-near-distance{
    white-space:nowrap;
    color:#244a66;
    font-size:9px;
    font-weight:900;
}

.mv27-copy{
    color:#536f87;
    font-size:10px;
    line-height:1.72;
}

.mv27-copy p{
    margin:0 0 10px;
}

.mv27-highlight{
    padding:18px;
    border-radius:12px;
    background:
        radial-gradient(circle at 100% 0%,rgba(38,165,139,.13),transparent 30%),
        linear-gradient(135deg,#eef8ff,#f2fbf7);
    border:1px solid #d9eaf5;
}

.mv27-highlight h2,
.mv27-highlight h3{
    margin:0;
    color:#082a55;
}

.mv27-highlight h2{
    font-size:18px;
}

.mv27-highlight p{
    margin:9px 0 0;
    color:#557189;
    font-size:10px;
    line-height:1.65;
}

.mv27-source{
    margin-top:9px;
    color:#8192a0;
    font-size:8px;
}

.mv27-source a{
    color:#0871ca;
    font-weight:800;
}

.mv27-chart{
    padding:16px;
    border:1px solid #e1eaf1;
    border-radius:12px;
    background:#fff;
}

.mv27-chart canvas{
    width:100%!important;
    min-height:240px;
    max-height:380px;
}

.mv27-empty{
    padding:34px 22px;
    border:1px dashed #cadbe7;
    border-radius:13px;
    background:#fff;
    text-align:center;
}

.mv27-empty h2{
    margin:0;
    color:#153c5b;
    font-size:18px;
}

.mv27-empty p{
    margin:8px auto 16px;
    max-width:560px;
    color:#6a8295;
    font-size:10px;
    line-height:1.6;
}

/* ----------------------------------------------------------------------
   Compatibility bridge for legacy public-data markup.
   This lets the existing analysis code keep its hydrology logic while
   receiving the Modern v2.7 visual system.
   ---------------------------------------------------------------------- */

.mv27-public-data .wrapper,
.mv27-public-data .section{
    padding:38px 0;
    background:#f5fafe;
}

.mv27-public-data .wrapper.bg-soft-primary{
    padding:50px 0 46px;
    color:#fff;
    background:
        radial-gradient(circle at 88% 16%,rgba(61,192,229,.22),transparent 27%),
        linear-gradient(135deg,#07385f,#07599d 58%,#0b7582);
}

.mv27-public-data .wrapper.bg-soft-primary h1,
.mv27-public-data .wrapper.bg-soft-primary h2,
.mv27-public-data .wrapper.bg-soft-primary p{
    color:#fff;
}

.mv27-public-data .container{
    width:min(1120px,calc(100% - 32px));
    margin-left:auto;
    margin-right:auto;
}

.mv27-public-data .row{
    display:flex;
    flex-wrap:wrap;
    margin-left:-8px;
    margin-right:-8px;
}

.mv27-public-data [class*="col-"]{
    min-width:0;
    padding-left:8px;
    padding-right:8px;
    width:100%;
}

@media(min-width:768px){
    .mv27-public-data .col-md-3{width:25%}
    .mv27-public-data .col-md-6{width:50%}
    .mv27-public-data .col-md-9{width:75%}
}

@media(min-width:992px){
    .mv27-public-data .col-lg-4{width:33.333%}
    .mv27-public-data .col-lg-6{width:50%}
    .mv27-public-data .col-lg-8{width:66.666%}
    .mv27-public-data .col-xl-3{width:25%}
    .mv27-public-data .col-xl-4{width:33.333%}
    .mv27-public-data .col-xl-6{width:50%}
    .mv27-public-data .col-xl-7{width:58.333%}
    .mv27-public-data .col-xl-8{width:66.666%}
    .mv27-public-data .col-xl-12{width:100%}
    .mv27-public-data .col-xxl-4{width:33.333%}
    .mv27-public-data .col-xxl-8{width:66.666%}
}

.mv27-public-data .mx-auto{
    margin-left:auto;
    margin-right:auto;
}

.mv27-public-data .text-center{text-align:center}
.mv27-public-data .text-start{text-align:left}
.mv27-public-data .text-end{text-align:right}
.mv27-public-data .text-muted{color:#71879a!important}
.mv27-public-data .text-primary{color:#0871ca!important}
.mv27-public-data .text-success{color:#168769!important}
.mv27-public-data .fw-semibold{font-weight:800}
.mv27-public-data .fw-bold{font-weight:900}
.mv27-public-data .d-block{display:block}
.mv27-public-data .d-grid{display:grid}
.mv27-public-data .d-flex{display:flex}
.mv27-public-data .flex-fill{flex:1 1 auto}
.mv27-public-data .align-items-center{align-items:center}
.mv27-public-data .justify-content-center{justify-content:center}
.mv27-public-data .justify-content-between{justify-content:space-between}
.mv27-public-data .gap-2{gap:8px}
.mv27-public-data .gap-3{gap:12px}
.mv27-public-data .h-100{height:100%}
.mv27-public-data .mb-0{margin-bottom:0}
.mv27-public-data .mb-1{margin-bottom:4px}
.mv27-public-data .mb-2{margin-bottom:8px}
.mv27-public-data .mb-3{margin-bottom:12px}
.mv27-public-data .mb-4{margin-bottom:16px}
.mv27-public-data .mb-5{margin-bottom:20px}
.mv27-public-data .mb-6{margin-bottom:24px}
.mv27-public-data .mt-2{margin-top:8px}
.mv27-public-data .mt-3{margin-top:12px}
.mv27-public-data .mt-4{margin-top:16px}
.mv27-public-data .mt-5{margin-top:20px}
.mv27-public-data .py-10{padding-top:38px;padding-bottom:38px}
.mv27-public-data .p-3{padding:12px}
.mv27-public-data .p-4{padding:16px}
.mv27-public-data .rounded{border-radius:10px}
.mv27-public-data .rounded-pill{border-radius:999px}

.mv27-public-data h1,
.mv27-public-data h2,
.mv27-public-data h3,
.mv27-public-data h4,
.mv27-public-data h5{
    color:#082a55;
}

.mv27-public-data .display-1,
.mv27-public-data .display-3{
    font-size:34px;
    line-height:1.08;
    letter-spacing:-.8px;
}

.mv27-public-data .lead{
    font-size:12px;
    line-height:1.65;
}

.mv27-public-data .card{
    border:1px solid #dfe9f1;
    border-radius:13px;
    background:#fff;
    box-shadow:0 7px 22px rgba(25,77,117,.045);
}

.mv27-public-data .card-body{
    padding:18px;
}

.mv27-public-data .card-header{
    padding:14px 18px;
    border-bottom:1px solid #e8eef3;
}

.mv27-public-data .table-responsive{
    overflow:auto;
    border:1px solid #e1eaf1;
    border-radius:10px;
    background:#fff;
}

.mv27-public-data .table{
    width:100%;
    border-collapse:collapse;
    font-size:8.6px;
}

.mv27-public-data .table th,
.mv27-public-data .table td{
    padding:8px 9px;
    border-bottom:1px solid #e8eef3;
    vertical-align:middle;
}

.mv27-public-data .table-primary th,
.mv27-public-data .table thead th{
    color:#244a65;
    background:#edf7ff;
    font-weight:900;
}

.mv27-public-data .table-dark td,
.mv27-public-data .table-dark th,
.mv27-public-data .table tfoot.table-dark td{
    color:#fff;
    background:#07385f;
}

.mv27-public-data .table-light th{
    background:#f5f9fc;
}

.mv27-public-data .table-success td,
.mv27-public-data .table-success th{
    background:#eef9f3;
}

.mv27-public-data .table-info td,
.mv27-public-data .table-info th{
    background:#eef8ff;
}

.mv27-public-data .table-warning td,
.mv27-public-data .table-warning th{
    background:#fff8e8;
}

.mv27-public-data .btn{
    min-height:34px;
    padding:0 11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    border-radius:8px;
    font:inherit;
    font-size:8px;
    font-weight:900;
    cursor:pointer;
}

.mv27-public-data .btn-primary{
    color:#fff;
    background:#0871ca;
}

.mv27-public-data .btn-dark{
    color:#fff;
    background:#07385f;
}

.mv27-public-data .btn-warning{
    color:#714313;
    background:#ffd88a;
}

.mv27-public-data .btn-outline-primary,
.mv27-public-data .btn-outline-info,
.mv27-public-data .btn-outline-warning,
.mv27-public-data .btn-outline-secondary,
.mv27-public-data .btn-outline-success{
    border-color:#d6e3ed;
    color:#0871ca;
    background:#fff;
}

.mv27-public-data .btn-list{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:6px;
}

.mv27-public-data .alert{
    padding:11px 13px;
    border:1px solid #dbe7ef;
    border-radius:9px;
    background:#fff;
    color:#4d6a80;
    font-size:9px;
    line-height:1.55;
}

.mv27-public-data .alert-success{
    border-color:#cce8d9;
    background:#f1faf5;
    color:#176d55;
}

.mv27-public-data .alert-warning{
    border-color:#efdcae;
    background:#fff9e9;
    color:#83651d;
}

.mv27-public-data .alert-info{
    border-color:#cfe5f6;
    background:#eef8ff;
    color:#275f89;
}

.mv27-public-data .badge{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:0 7px;
    border-radius:999px;
    font-size:7.5px;
    font-weight:900;
}

.mv27-public-data .bg-success{background:#168769;color:#fff}
.mv27-public-data .bg-warning{background:#ffd88a;color:#6d4614}
.mv27-public-data .bg-danger{background:#c94c55;color:#fff}

.mv27-public-data .breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    list-style:none;
    padding:0;
    margin:0;
    font-size:8px;
}

.mv27-public-data .breadcrumb-item + .breadcrumb-item::before{
    content:"›";
    margin-right:6px;
    opacity:.5;
}

.mv27-public-data .form-control{
    width:100%;
    min-height:39px;
    padding:0 10px;
    border:1px solid #d7e4ed;
    border-radius:8px;
    background:#fff;
    color:#294b66;
    font:inherit;
    font-size:9px;
}

.mv27-public-data .pagination{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:5px;
    list-style:none;
    padding:0;
}

.mv27-public-data .page-link{
    min-width:31px;
    height:31px;
    padding:0 8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #dae6ef;
    border-radius:7px;
    background:#fff;
    color:#567188;
    font-size:8px;
}

.mv27-public-data .page-item.active .page-link{
    color:#fff;
    background:#0871ca;
    border-color:#0871ca;
}

.mv27-public-data .analytics-activity{
    list-style:none;
    padding:0;
    margin:0;
}

.mv27-public-data .analytics-activity li{
    padding:10px 0;
    border-bottom:1px solid #e8eef3;
}

.mv27-public-data .analytics-activity li:last-child{
    border-bottom:0;
}

.mv27-public-data blockquote{
    margin:0;
    padding:16px;
    border-left:3px solid #0871ca;
    border-radius:0 10px 10px 0;
    background:#eef8ff;
    color:#4f6d83;
    font-size:9.5px;
    line-height:1.65;
}

.mv27-public-data .sticky-summary{
    position:sticky;
    top:82px;
}

.mv27-public-data .chart-wrap{
    position:relative;
    min-height:320px;
}

.mv27-public-data canvas{
    max-width:100%;
}

/* Override legacy inline blue map border. */
.mv27-public-data #map,
.mv27-public-data .hhmt-leaflet-map{
    border:1px solid #d7e4ed!important;
    border-radius:11px!important;
    box-shadow:none!important;
}

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

    .mv27-filter{
        grid-template-columns:1fr 1fr auto;
    }

    .mv27-two-col,
    .mv27-split{
        grid-template-columns:1fr;
    }

    .mv27-stat-grid{
        grid-template-columns:1fr 1fr;
    }

    .mv27-public-data .sticky-summary{
        position:static;
    }
}

@media(max-width:620px){
    .mv27-hero{
        padding:42px 0 38px;
    }

    .mv27-hero h1{
        font-size:30px;
    }

    .mv27-section{
        padding:28px 0;
    }

    .mv27-filter{
        grid-template-columns:1fr;
    }

    .mv27-filter button{
        width:100%;
    }

    .mv27-stat-grid{
        grid-template-columns:1fr 1fr;
    }

    .mv27-stat strong{
        font-size:15px;
    }

    .mv27-info-row{
        grid-template-columns:1fr;
        gap:3px;
    }

    .mv27-map{
        height:315px;
    }

    .mv27-public-data .display-1,
    .mv27-public-data .display-3{
        font-size:29px;
    }

    .mv27-public-data .container{
        width:min(100% - 22px,1120px);
    }

    .mv27-public-data [class*="col-"]{
        width:100%!important;
    }

    .mv27-public-data .row{
        margin-left:-5px;
        margin-right:-5px;
    }

    .mv27-public-data [class*="col-"]{
        padding-left:5px;
        padding-right:5px;
    }
}


/* ==========================================================================
   Modern v2.7.2 runtime compatibility hotfix
   ========================================================================== */

/* Legacy pages used Bootstrap spacing/layout classes from Sandbox.
   These compatibility rules make them independent of the old theme. */
.mv27-public-data .wrapper > .container,
.mv27-public-data .section > .container{
    padding-left:0!important;
    padding-right:0!important;
}

.mv27-public-data .pt-10{padding-top:38px!important}
.mv27-public-data .pb-10{padding-bottom:38px!important}
.mv27-public-data .pb-12{padding-bottom:46px!important}
.mv27-public-data .pt-14{padding-top:52px!important}
.mv27-public-data .pb-14{padding-bottom:52px!important}
.mv27-public-data .pt-16{padding-top:58px!important}
.mv27-public-data .position-relative{position:relative}
.mv27-public-data .overflow-hidden{overflow:hidden}
.mv27-public-data .text-nowrap{white-space:nowrap}
.mv27-public-data .w-100{width:100%}
.mv27-public-data .small{font-size:8.5px}
.mv27-public-data .fs-13{font-size:8.5px}
.mv27-public-data .fs-15{font-size:10px}
.mv27-public-data .fs-5{font-size:15px}
.mv27-public-data .h3{font-size:18px}
.mv27-public-data .h4{font-size:15px}
.mv27-public-data .h5{font-size:13px}
.mv27-public-data .h6{font-size:10px}

.mv27-public-data .form-control:focus{
    outline:0;
    border-color:#62aeea;
    box-shadow:0 0 0 3px rgba(61,158,231,.10);
}

.mv27-public-data .table-striped tbody tr:nth-child(even){
    background:#f9fcfe;
}

.mv27-public-data .table-hover tbody tr:hover{
    background:#f2f8fd;
}

.mv27-public-data .table-bordered th,
.mv27-public-data .table-bordered td{
    border-right:1px solid #e8eef3;
}

.mv27-public-data .table-bordered th:last-child,
.mv27-public-data .table-bordered td:last-child{
    border-right:0;
}

.mv27-public-data .custom-card{
    margin-bottom:16px;
}

.mv27-public-data .custom-card .card-title h5{
    margin:0;
}

.mv27-public-data .avatar{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
}

.mv27-public-data .bg-primary-transparent{
    color:#0871ca;
    background:#edf7ff;
}

.mv27-public-data .link-primary{
    color:#0871ca;
    font-weight:800;
}

.mv27-public-data .pagination-style-1{
    margin-top:16px;
}

.mv27-public-data .blockquote{
    border-left:3px solid #0871ca;
    background:#eef8ff;
}

/* Header hero from legacy pages. */
.mv27-public-data .wrapper.bg-soft-primary{
    position:relative;
    overflow:hidden;
}

.mv27-public-data .wrapper.bg-soft-primary::after{
    content:"";
    position:absolute;
    right:-110px;
    bottom:-180px;
    width:380px;
    height:380px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    box-shadow:
        0 0 0 50px rgba(255,255,255,.02),
        0 0 0 100px rgba(255,255,255,.012);
}

.mv27-public-data .wrapper.bg-soft-primary > .container{
    position:relative;
    z-index:1;
}

@media(max-width:767px){
    .mv27-public-data .d-none{
        display:none!important;
    }

    .mv27-public-data .table-responsive{
        -webkit-overflow-scrolling:touch;
    }

    .mv27-public-data .btn-list{
        gap:5px;
    }

    .mv27-public-data .btn{
        min-height:32px;
        font-size:7.8px;
    }
}


/* ==========================================================================
   Modern v2.7.3 — Public Data typography & visual refinement
   Goal: improve readability without changing any hydrology/database logic.
   ========================================================================== */

.mv27-public-data{
    font-size:14px;
    line-height:1.55;
}

/* Hero ------------------------------------------------------------------ */
.mv27-public-data .mv27-hero h1,
.mv27-public-data .wrapper.bg-soft-primary .display-1,
.mv27-public-data .wrapper.bg-soft-primary .display-3{
    font-size:clamp(32px,3vw,44px);
    line-height:1.08;
    letter-spacing:-.8px;
}

.mv27-public-data .mv27-hero p,
.mv27-public-data .wrapper.bg-soft-primary p,
.mv27-public-data .lead{
    font-size:14px;
    line-height:1.65;
}

.mv27-public-data .mv27-kicker{
    font-size:11px;
}

.mv27-public-data .mv27-breadcrumb,
.mv27-public-data .breadcrumb{
    font-size:11px;
}

/* General copy ---------------------------------------------------------- */
.mv27-public-data p,
.mv27-public-data .mv27-copy{
    font-size:14px;
    line-height:1.7;
}

.mv27-public-data .text-muted{
    font-size:13px;
    line-height:1.6;
}

.mv27-public-data .small,
.mv27-public-data .fs-13{
    font-size:12px!important;
    line-height:1.5;
}

.mv27-public-data .fs-15{
    font-size:14px!important;
    line-height:1.65;
}

.mv27-public-data .h3{
    font-size:22px!important;
}

.mv27-public-data .h4{
    font-size:19px!important;
}

.mv27-public-data .h5{
    font-size:16px!important;
}

.mv27-public-data .h6{
    font-size:14px!important;
}

/* Cards ----------------------------------------------------------------- */
.mv27-public-data .card,
.mv27-public-data .mv27-card{
    border-radius:14px;
    box-shadow:0 8px 24px rgba(25,77,117,.06);
}

.mv27-public-data .card-body,
.mv27-public-data .mv27-card-body{
    padding:22px;
}

.mv27-public-data .card-header,
.mv27-public-data .mv27-card-header{
    padding:17px 22px;
}

.mv27-public-data .card-title h5,
.mv27-public-data .mv27-card-header h2{
    font-size:20px;
    line-height:1.25;
}

.mv27-public-data .mv27-card-header h3{
    font-size:17px;
    line-height:1.25;
}

/* Information rows ------------------------------------------------------ */
.mv27-public-data .mv27-info-row{
    grid-template-columns:190px minmax(0,1fr);
    padding:11px 0;
}

.mv27-public-data .mv27-info-row span{
    font-size:12px;
}

.mv27-public-data .mv27-info-row strong{
    font-size:13px;
    line-height:1.5;
}

/* Statistics ------------------------------------------------------------ */
.mv27-public-data .mv27-stat{
    padding:18px;
}

.mv27-public-data .mv27-stat small{
    font-size:11px;
}

.mv27-public-data .mv27-stat strong{
    margin-top:5px;
    font-size:22px;
}

/* Forms ----------------------------------------------------------------- */
.mv27-public-data .mv27-filter{
    padding:15px;
}

.mv27-public-data .mv27-filter label span{
    font-size:11px;
}

.mv27-public-data .form-control,
.mv27-public-data .mv27-filter select,
.mv27-public-data .mv27-filter input{
    min-height:42px;
    font-size:13px;
}

.mv27-public-data .mv27-filter button,
.mv27-public-data .mv27-button,
.mv27-public-data .btn{
    min-height:38px;
    padding-left:14px;
    padding-right:14px;
    font-size:12px;
}

/* Tables ---------------------------------------------------------------- */
.mv27-public-data .table,
.mv27-public-data .mv27-table{
    font-size:12px;
    line-height:1.45;
}

.mv27-public-data .table th,
.mv27-public-data .table td,
.mv27-public-data .mv27-table th,
.mv27-public-data .mv27-table td{
    padding:10px 11px;
}

.mv27-public-data .table th,
.mv27-public-data .mv27-table th{
    font-size:11px;
    line-height:1.35;
    letter-spacing:.015em;
}

.mv27-public-data .table td,
.mv27-public-data .mv27-table td{
    font-size:12px;
}

.mv27-public-data .table a,
.mv27-public-data .mv27-table a{
    font-size:12px;
}

.mv27-public-data .mv27-source{
    font-size:11px;
    line-height:1.5;
}

/* Buttons/navigation ---------------------------------------------------- */
.mv27-public-data .mv27-dataset-nav{
    gap:7px;
}

.mv27-public-data .mv27-dataset-nav a{
    min-height:36px;
    padding:0 13px;
    font-size:11px;
}

.mv27-public-data .page-link,
.mv27-public-data .mv27-pagination a,
.mv27-public-data .mv27-pagination span{
    min-width:34px;
    height:34px;
    font-size:11px;
}

.mv27-public-data .badge{
    min-height:24px;
    padding:0 8px;
    font-size:10px;
}

/* Nearby items ---------------------------------------------------------- */
.mv27-public-data .mv27-near-list a{
    font-size:13px;
}

.mv27-public-data .mv27-near-list small{
    font-size:11px;
    line-height:1.45;
}

.mv27-public-data .mv27-near-distance{
    font-size:12px;
}

/* Alerts / notes / blockquotes ----------------------------------------- */
.mv27-public-data .alert{
    padding:13px 15px;
    font-size:12px;
    line-height:1.6;
}

.mv27-public-data blockquote,
.mv27-public-data .blockquote{
    padding:18px;
    font-size:13px;
    line-height:1.7;
}

.mv27-public-data .sni-note,
.mv27-public-data .stepbox{
    font-size:12px;
    line-height:1.65;
}

/* Legacy analytics list ------------------------------------------------- */
.mv27-public-data .analytics-activity li{
    padding:12px 0;
}

.mv27-public-data .analytics-activity .fw-semibold,
.mv27-public-data .analytics-activity .d-block{
    font-size:13px;
}

.mv27-public-data .analytics-activity .text-muted{
    font-size:11px!important;
}

/* Toolbar --------------------------------------------------------------- */
.mv27-public-data .mv27-toolbar-copy h2{
    font-size:23px;
}

.mv27-public-data .mv27-toolbar-copy p{
    font-size:13px;
    line-height:1.6;
}

/* Highlight / empty states --------------------------------------------- */
.mv27-public-data .mv27-highlight h2{
    font-size:21px;
}

.mv27-public-data .mv27-highlight p{
    font-size:13px;
    line-height:1.7;
}

.mv27-public-data .mv27-empty h2{
    font-size:21px;
}

.mv27-public-data .mv27-empty p{
    font-size:13px;
}

/* HHMT specific --------------------------------------------------------- */
.mv27-public-data .hhmt-label{
    font-size:12px!important;
}

.mv27-public-data .hhmt-stat{
    font-size:22px!important;
}

.mv27-public-data .hhmt-badge{
    font-size:10px!important;
    line-height:1.3!important;
    padding:5px 8px!important;
}

.mv27-public-data .hhmt-section-title{
    font-size:22px;
    line-height:1.25;
}

.mv27-public-data .number-cell,
.mv27-public-data .center-cell{
    font-size:12px;
}

/* Desktop breathing room ------------------------------------------------ */
@media(min-width:901px){
    .mv27-public-data .wrapper,
    .mv27-public-data .section,
    .mv27-public-data .mv27-section{
        padding-top:44px;
        padding-bottom:44px;
    }
}

/* Tablet ---------------------------------------------------------------- */
@media(max-width:900px){
    .mv27-public-data{
        font-size:13.5px;
    }

    .mv27-public-data .mv27-info-row{
        grid-template-columns:165px minmax(0,1fr);
    }

    .mv27-public-data .table,
    .mv27-public-data .mv27-table{
        font-size:11.5px;
    }
}

/* Mobile ---------------------------------------------------------------- */
@media(max-width:620px){
    .mv27-public-data{
        font-size:13px;
    }

    .mv27-public-data .mv27-hero p,
    .mv27-public-data .wrapper.bg-soft-primary p,
    .mv27-public-data p,
    .mv27-public-data .lead{
        font-size:13px;
    }

    .mv27-public-data .card-body,
    .mv27-public-data .mv27-card-body{
        padding:17px;
    }

    .mv27-public-data .card-header,
    .mv27-public-data .mv27-card-header{
        padding:14px 17px;
    }

    .mv27-public-data .mv27-info-row{
        grid-template-columns:1fr;
        gap:3px;
    }

    .mv27-public-data .mv27-info-row span{
        font-size:11px;
    }

    .mv27-public-data .mv27-info-row strong{
        font-size:12.5px;
    }

    .mv27-public-data .mv27-stat small{
        font-size:10.5px;
    }

    .mv27-public-data .mv27-stat strong{
        font-size:18px;
    }

    .mv27-public-data .table,
    .mv27-public-data .mv27-table{
        font-size:11px;
    }

    .mv27-public-data .table th,
    .mv27-public-data .mv27-table th{
        font-size:10px;
    }

    .mv27-public-data .table td,
    .mv27-public-data .mv27-table td{
        font-size:11px;
    }

    .mv27-public-data .btn,
    .mv27-public-data .mv27-button,
    .mv27-public-data .mv27-dataset-nav a{
        font-size:11px;
    }

    .mv27-public-data .small,
    .mv27-public-data .fs-13{
        font-size:11px!important;
    }

    .mv27-public-data .fs-15{
        font-size:13px!important;
    }
}
