/* ═══════════════════════════════════════════════════════
   LAYOUT — Agerpix v2 Design System
   Base layout, resets, and utility classes
   ═══════════════════════════════════════════════════════ */

* {
    box-sizing: border-box;
}

html {
    width: 100%;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
}

body {
    font-size: 16px;
    font-family: var(--font);
    width: 100%;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    -webkit-text-size-adjust: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    overflow: hidden;
    color: var(--color-text, #111827);
    margin: 0;
    padding: 0;
    border: 0;
    background-color: var(--color-bg, #f0f2f5);
}

.app,
.main {
    width: 100%;
    min-width: 100%;
    height: 100%;
    min-height: 100%;
}

.pickadate_container {
    font-family: var(--font);
}

.leaflet-control-attribution.leaflet-control {
    display: none !important;
}

.wrapper {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
}

.map {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
}

/* ── Utility classes ── */
.display_none,
.tmp_display_none {
    display: none !important;
}

.table {
    display: table;
    width: 100%;
}
.trow {
    display: table-row;
}
.tcell {
    display: table-cell;
    vertical-align: middle;
}
.text_centered {
    text-align: center;
}
.text_valigned {
    top: 50%;
    transform: translateY(-50%);
    position: relative;
}
.no_border {
    border: 0 !important;
}
.no_mrg_btn {
    margin-bottom: 0 !important;
}
.cpointer {
    cursor: pointer;
}

/* ── Responsive font scaling ── */
@media screen and (max-width: 1500px) {
    body { font-size: 15px; }
}
@media screen and (max-width: 1200px) {
    body { font-size: 14px; }
}
@media screen and (max-width: 700px) {
    body { font-size: 13px; }
}
