/* =========================================================
   HISHEB - Global Design System
   ========================================================= */

:root {
    --color-primary: #166534;
    --color-primary-dark: #14532d;
    --color-primary-soft: #ecfdf5;

    --color-accent: #f59e0b;
    --color-accent-soft: #fffbeb;

    --color-text: #17201a;
    --color-text-soft: #5d675f;

    --color-background: #f7f9f7;
    --color-surface: #ffffff;
    --color-border: #dfe5df;

    --shadow-card: 0 12px 35px rgba(20, 40, 25, 0.08);
    --shadow-soft: 0 5px 18px rgba(20, 40, 25, 0.06);

    --radius-large: 22px;
    --radius-medium: 14px;
    --radius-small: 10px;

    --container: 1130px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--color-background);
    color: var(--color-text);

    font-family:
        "Anek Bangla",
        "Nirmala UI",
        "Segoe UI",
        Arial,
        sans-serif;

    line-height: 1.6;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

button,
input {
    font: inherit;
}

button {
    cursor: pointer;
}

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

.site-header {
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid var(--color-border);

    position: sticky;
    top: 0;
    z-index: 100;

    backdrop-filter: blur(12px);
}

.header-inner {
    width: min(100% - 40px, var(--container));
    min-height: 72px;
    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.brand {
    display: flex;
    align-items: center;
    gap: 11px;

    font-size: 1.55rem;
    font-weight: 700;
    letter-spacing: -0.02em;

    color: var(--color-primary);
}

.brand-mark {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    border-radius: 11px;
    background: var(--color-primary);
    color: white;

    font-size: 1.25rem;
    font-weight: 700;
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 8px;
}

.main-nav a {
    padding: 8px 13px;
    border-radius: 9px;

    color: var(--color-text-soft);
    font-size: 0.95rem;
    font-weight: 600;
}

.main-nav a:hover {
    background: var(--color-primary-soft);
    color: var(--color-primary);
}

.main-nav-dropdown {
    position: relative;
}

.main-nav-dropdown-toggle {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 0;
    background: transparent;
    color: var(--color-text-soft);
    font: inherit;
    font-size: 0.95rem;
    font-weight: 600;
    padding: 8px 13px;
    border-radius: 9px;
}

.main-nav-dropdown-toggle:hover,
.main-nav-dropdown-toggle.active,
.main-nav-dropdown-toggle:focus-visible {
    background: var(--color-primary-soft);
    color: var(--color-primary);
    outline: none;
}

.main-nav-dropdown-chevron {
    display: inline-block;
    font-size: 0.9em;
    line-height: 1;
    transform: translateY(-1px);
    transition: transform 0.16s ease;
}

.main-nav-dropdown.is-open .main-nav-dropdown-chevron {
    transform: rotate(180deg) translateY(1px);
}

.main-nav-dropdown-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 155px;
    padding: 6px;
    border: 1px solid var(--color-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(30, 55, 40, 0.12);
    z-index: 120;
}

.main-nav-dropdown-menu a {
    display: block;
    padding: 9px 12px;
    border-radius: 8px;
    color: var(--color-text-soft);
    font-size: 0.94rem;
    font-weight: 600;
    white-space: nowrap;
}

.main-nav-dropdown-menu a:hover,
.main-nav-dropdown-menu a.active,
.main-nav-dropdown-menu a:focus-visible {
    background: var(--color-primary-soft);
    color: var(--color-primary);
    outline: none;
}

main {
    min-height: calc(100vh - 73px);
}

.hero {
    width: min(100% - 40px, var(--container));
    min-height: calc(100vh - 73px);

    margin: 0 auto;
    padding: 48px 0 70px;

    display: flex;
    align-items: center;
}

.hero-grid {
    width: 100%;

    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);

    gap: 34px;
    align-items: stretch;
}

.hero-content {
    padding: clamp(20px, 4vw, 62px) 0;

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

.eyebrow {
    display: inline-flex;
    width: fit-content;

    margin-bottom: 16px;
    padding: 6px 11px;

    border-radius: 999px;
    background: var(--color-primary-soft);

    color: var(--color-primary);
    font-size: 0.85rem;
    font-weight: 700;
}

.hero h1 {
    margin: 0;
    max-width: 760px;

    font-size: clamp(2.3rem, 4vw, 3.8rem);
    line-height: 1.12;
    letter-spacing: -0.018em;
}

.hero h1 span {
    color: var(--color-primary);
}

.hero-description {
    max-width: 680px;
    margin: 22px 0 30px;

    color: var(--color-text-soft);
    font-size: clamp(1rem, 1.5vw, 1.2rem);
}

.search-box {
    max-width: 620px;

    display: flex;
    align-items: center;

    padding: 7px;

    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 14px;

    box-shadow: var(--shadow-soft);
}

.search-box input {
    flex: 1;
    min-width: 0;

    padding: 13px 15px;

    border: 0;
    outline: 0;

    background: transparent;
    color: var(--color-text);
}

.search-box button {
    padding: 12px 19px;

    border: 0;
    border-radius: 9px;

    background: var(--color-primary);
    color: white;

    font-weight: 700;
}

.search-box button:hover {
    background: var(--color-primary-dark);
}

.category-links {
    margin-top: 26px;

    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.category-links a {
    padding: 7px 12px;

    background: white;
    border: 1px solid var(--color-border);
    border-radius: 999px;

    color: var(--color-text-soft);
    font-size: 0.88rem;
    font-weight: 600;
}

.category-links a:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

.calculator-card {
    align-self: center;

    padding: clamp(24px, 3vw, 38px);

    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-large);

    box-shadow: var(--shadow-card);
}

.calculator-heading {
    margin-bottom: 25px;
}

.calculator-heading h2 {
    margin: 0 0 5px;

    font-size: clamp(1.35rem, 2vw, 1.75rem);
    line-height: 1.25;
}

.calculator-heading p {
    margin: 0;
    color: var(--color-text-soft);
    font-size: 0.93rem;
}

.form-group {
    margin-bottom: 18px;
}

.form-group label {
    display: block;
    margin-bottom: 7px;

    font-size: 0.92rem;
    font-weight: 700;
}

.form-group input {
    width: 100%;

    padding: 13px 14px;

    border: 1px solid #cfd7d0;
    border-radius: var(--radius-small);

    background: #fff;
    color: var(--color-text);

    outline: none;

    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}

.form-group input:focus {
    border-color: var(--color-primary);

    box-shadow:
        0 0 0 3px rgba(22, 101, 52, 0.11);
}

.result-box {
    margin-top: 24px;
    padding: 22px;

    border: 1px solid #cce8d6;
    border-radius: var(--radius-medium);

    background: var(--color-primary-soft);
}

.result-label {
    margin: 0 0 4px;

    color: var(--color-text-soft);
    font-size: 0.88rem;
}

.result-value {
    margin: 0;

    color: var(--color-primary);

    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 700;
    line-height: 1.2;
}

.calculator-actions {
    margin-top: 18px;

    display: flex;
    gap: 10px;
}

.btn-primary,
.btn-secondary {
    padding: 11px 16px;

    border-radius: var(--radius-small);

    font-weight: 700;
}

.btn-primary {
    flex: 1;

    border: 0;
    background: var(--color-primary);
    color: white;
}

.btn-primary:hover {
    background: var(--color-primary-dark);
}

.btn-secondary {
    border: 1px solid var(--color-border);
    background: white;
    color: var(--color-text-soft);
}

.btn-secondary:hover {
    border-color: #b7c2b9;
}

.popular-section {
    width: min(100% - 40px, var(--container));

    margin: 0 auto;
    padding: 30px 0 80px;
}

.section-heading {
    margin-bottom: 22px;
}

.section-heading h2 {
    margin: 0;
    font-size: clamp(1.5rem, 3vw, 2.1rem);
}

.section-heading p {
    margin: 6px 0 0;
    color: var(--color-text-soft);
}

.calculator-links {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.calculator-link {
    padding: 22px;

    background: white;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-medium);

    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        border-color 0.18s ease;
}

.calculator-link:hover {
    transform: translateY(-3px);

    border-color: #c7d9cb;
    box-shadow: var(--shadow-soft);
}

.calculator-link-icon {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    margin-bottom: 13px;

    border-radius: 11px;
    background: var(--color-primary-soft);

    color: var(--color-primary);
    font-weight: 700;
}

.calculator-link h3 {
    margin: 0 0 4px;
    font-size: 1.02rem;
}

.calculator-link p {
    margin: 0;

    color: var(--color-text-soft);
    font-size: 0.86rem;
}

.site-footer {
    border-top: 1px solid var(--color-border);
    background: white;
}

.footer-inner {
    width: min(100% - 40px, var(--container));

    margin: 0 auto;
    padding: 28px 0;

    display: flex;
    justify-content: space-between;
    gap: 20px;

    color: var(--color-text-soft);
    font-size: 0.86rem;
}

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

    .hero {
        min-height: auto;
        padding-top: 35px;
    }

    .hero-content {
        padding: 10px 0;
    }

    .calculator-card {
        max-width: 760px;
        width: 100%;
        justify-self: center;
    }

    .calculator-links {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 700px) {
    .header-inner {
        width: min(100% - 24px, var(--container));
        min-height: 64px;
    }

    .main-nav {
        display: none;
    }

    .brand {
        font-size: 1.35rem;
    }

    .hero,
    .popular-section {
        width: min(100% - 24px, var(--container));
    }

    .hero {
        padding-top: 25px;
        padding-bottom: 50px;
    }

    .hero h1 {
        font-size: clamp(2.15rem, 11vw, 3rem);
    }

    .search-box {
        flex-direction: column;
        align-items: stretch;
    }

    .search-box button {
        width: 100%;
    }

    .calculator-card {
        padding: 22px;
    }

    .calculator-links {
        grid-template-columns: 1fr;
    }

    .footer-inner {
        width: min(100% - 24px, var(--container));

        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before {
        transition: none !important;
    }
}

/* =========================================================
   HISHEB v0.4.2 - Calculator Page
   ========================================================= */

/* v1.8.52 - Central site width: 1130px and compact desktop calculator panel. */

.container { width: min(100% - 40px, var(--container)); margin: 0 auto; }
.logo { display: inline-flex; align-items: center; gap: 8px; color: var(--color-primary); font-size: 1.55rem; font-weight: 700; letter-spacing: -0.02em; }
.logo span { color: var(--color-primary); }

.calc-page { padding: 38px 0 80px; }
.calc-container { max-width: var(--container); }
.calc-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-bottom:30px; color:#66736a; font-size:1rem; }
.calc-breadcrumb a { color:#526259; }
.calc-breadcrumb a:hover { color:var(--color-primary); }

.calc-layout { width:min(100%,var(--container)); display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,400px); gap:50px; align-items:start; }
.calc-information { padding:6px 0 12px; }
.calc-information h1 { max-width:720px; margin:0 0 18px; color:var(--color-text); font-size:clamp(2.15rem,4vw,3.2rem); line-height:1.15; letter-spacing:-0.025em; }
.calc-lead { max-width:760px; margin:0 0 42px; color:#536158; font-size:1.18rem; line-height:1.82; }
.calc-information h2 { margin:42px 0 12px; color:var(--color-text); font-size:clamp(1.35rem,2.2vw,1.7rem); line-height:1.3; }
.calc-information p { max-width:760px; margin:0; color:#4e5b53; font-size:1.06rem; line-height:1.85; }
.dps-diagram { display:block; width:100%; max-width:760px; height:auto; margin:8px 0 30px; color:#707a73; }
.fdr-diagram { display:block; width:100%; max-width:760px; height:auto; margin:8px 0 30px; color:#707a73; }

.calculator-panel { position:sticky; top:96px; padding:28px 28px 24px; background:#fff; border:1px solid #dfe6e0; border-radius:18px; box-shadow:0 16px 42px rgba(20,40,25,.09); }
.calculator-panel-heading { margin-bottom:23px; }
.calculator-kicker { margin-bottom:5px; color:var(--color-primary); font-size:.9rem; font-weight:700; }
.calculator-panel-heading h2 { margin:0 0 4px; color:var(--color-text); font-size:1.4rem; line-height:1.3; }
.calculator-panel-heading p { margin:0; color:#66736a; font-size:.94rem; line-height:1.55; }

.calc-field { margin-bottom:17px; }
.calc-field label { display:block; margin-bottom:7px; color:#26332b; font-size:.94rem; font-weight:600; }
.calc-row { display:grid; grid-template-columns:minmax(0,1fr) 154px; gap:10px; }
.fraction-input-grid { display:grid; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); align-items:center; gap:8px; }
.fraction-line { text-align:center; font-size:1.15rem; font-weight:600; color:#68756c; }

.calc-input,.calc-select { width:100%; height:48px; min-height:48px; max-height:48px; box-sizing:border-box; border:1px solid #cbd5ce; border-radius:10px; background:#fff; padding:8px 12px; color:#172033; font:inherit; font-size:.95rem; }
.calc-input:focus,.calc-select:focus { outline:3px solid rgba(22,101,52,.12); border-color:var(--color-primary); }
.calc-note { margin-top:8px; color:#68756c; font-size:.88rem; line-height:1.55; }
.calc-actions { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; margin-top:7px; }
.calc-button { min-height:46px; border:0; border-radius:10px; padding:8px 17px; font:inherit; font-size:.95rem; font-weight:600; cursor:pointer; }
.calc-button.primary { background:var(--color-primary); color:#fff; }
.calc-button.primary:hover { background:var(--color-primary-dark); }
.calc-button.secondary { border:1px solid #d6ded8; background:#fff; color:#4d5a51; }
.calc-button.secondary:hover { background:#f7faf8; }
.calc-error { min-height:1.5em; margin-top:8px; color:#b42318; font-size:.89rem; }

.calc-result { margin-top:14px; padding:19px; border:1px solid #cce5d3; border-radius:13px; background:var(--color-primary-soft); }
.calc-result-label { margin-bottom:4px; color:#4f6255; font-size:.9rem; }
.calc-result-main { color:var(--color-primary-dark); font-size:clamp(1.5rem,3.5vw,2rem); font-weight:700; line-height:1.25; }
.calc-result-list { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:15px; }
.calc-result-item { padding:9px 10px; border:1px solid rgba(22,101,52,.09); border-radius:9px; background:rgba(255,255,255,.76); }
.calc-result-item strong { display:block; color:#172033; font-size:1rem; line-height:1.35; }
.calc-result-item span { display:block; margin-top:2px; color:#66736a; font-size:.84rem; }

.unit-table { width:100%; max-width:760px; margin-top:20px; border-collapse:collapse; font-size:1rem; }
.unit-table th,.unit-table td { padding:12px 10px; border-bottom:1px solid #e1e7e2; text-align:left; }
.unit-table th { color:#334139; font-weight:600; background:#f8faf8; }
.unit-table td { color:#4e5b53; }
.source-note { max-width:760px; margin-top:25px; padding:18px 20px; border-left:3px solid #8bb99a; background:#f4f8f5; color:#526057; font-size:.98rem; line-height:1.75; }
.source-note strong { color:#314238; }
.source-note span { display:block; margin-top:8px; color:#68756c; font-size:.9rem; }

.info-card { background:#fff; border:1px solid #e1e7e2; border-radius:18px; padding:30px 32px; }
.faq { margin-top:58px; }
.faq h2,.related h2 { margin:0 0 16px; color:var(--color-text); font-size:1.55rem; }
.faq details { border-top:1px solid #e3e8e4; padding:16px 0; }
.faq details:last-child { border-bottom:1px solid #e3e8e4; }
.faq summary { cursor:pointer; color:#27342c; font-size:1.02rem; font-weight:600; }
.faq p { max-width:800px; margin:10px 0 0; color:#59665e; font-size:1rem; line-height:1.75; }
.related { margin-top:48px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.related-card { padding:18px; border:1px solid #e1e7e2; border-radius:14px; background:#fff; color:#29372f; font-size:1rem; font-weight:600; }
.related-card:hover { border-color:#b9d0bf; background:#fbfdfb; }

@media (max-width:1000px) { .calc-layout { grid-template-columns:minmax(0,1fr) minmax(330px,390px); gap:28px; } .calculator-panel { padding:25px 25px 21px; } }
@media (max-width:820px) { .calc-layout { grid-template-columns:1fr; } .calculator-panel { position:static; order:-1; } .calc-information { padding-top:4px; } }
@media (max-width:560px) { .container { width:min(100% - 24px,var(--container)); } .calc-page { padding-top:25px; padding-bottom:55px; } .calc-breadcrumb { margin-bottom:22px; font-size:.92rem; } .calc-information h1 { font-size:clamp(1.85rem,8vw,2.35rem); } .calc-lead { margin-bottom:30px; font-size:1.08rem; } .calc-information h2 { margin-top:34px; } .calculator-panel,.info-card { padding:21px; border-radius:15px; } .calculator-panel { padding-bottom:18px; } .calc-row { grid-template-columns:1fr; } .fraction-input-grid { grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr); gap:5px; } .calc-actions { grid-template-columns:1fr; } .calc-result-list,.related-grid { grid-template-columns:1fr; } }

/* =========================================================
   HISHEB v0.4.4 - Typography + SEO terminology refinement
   ========================================================= */

body {
    font-family: "Anek Bangla", "Nirmala UI", "Segoe UI", Arial, sans-serif;
    line-height: 1.62;
}

.header-inner { min-height: 64px; }
.brand, .logo { font-size: 1.28rem; }
.logo-mark { width: 32px; height: 32px; border-radius: 9px; font-size: 1.05rem; }
.main-nav a { font-size: .92rem; padding: 7px 11px; }
.main-nav-dropdown-toggle { font-size: .92rem; padding: 7px 11px; }
.main-nav-dropdown-menu a { font-size: .92rem; padding: 8px 11px; }

/* Calculator page typography: slightly smaller headings, same readable body scale. */
.calc-information h1 {
    font-size: clamp(1.9rem, 3vw, 2.5rem);
    line-height: 1.18;
    margin-bottom: 14px;
}
.calc-information h2 {
    font-size: clamp(1.22rem, 1.75vw, 1.46rem);
    line-height: 1.34;
    margin-top: 36px;
}
.calc-lead { font-size: 1.12rem; line-height: 1.78; }
.calc-information p { font-size: 1.02rem; line-height: 1.8; }
.faq h2, .related h2 { font-size: 1.45rem; }
.faq summary { font-size: 1rem; }

/* Category /jomi */
.category-page { padding: 34px 0 70px; }
.category-container { max-width: var(--container); }
.category-hero {
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);
    gap:48px;
    align-items:center;
    padding: 26px 0 54px;
}
.category-hero-copy { max-width: 700px; }
.section-kicker, .category-action-kicker {
    color:var(--color-primary);
    font-size:.9rem;
    font-weight:700;
    margin-bottom:5px;
}
.category-hero h1 {
    margin:0 0 12px;
    font-size:clamp(2.05rem,3.35vw,2.7rem);
    line-height:1.16;
    letter-spacing:-.02em;
}
.category-hero-copy p {
    margin:0;
    max-width:650px;
    color:#536158;
    font-size:1.12rem;
    line-height:1.8;
}
.category-hero-action {
    padding:28px 30px;
    background:#fff;
    border:1px solid #dfe6e0;
    border-radius:18px;
    box-shadow:0 14px 34px rgba(20,40,25,.075);
}
.category-hero-action h2 { margin:0 0 5px; font-size:1.48rem; line-height:1.3; }
.category-hero-action p { margin:0 0 20px; color:#66736a; font-size:1rem; line-height:1.65; }
.category-action-button { display:flex; justify-content:space-between; align-items:center; text-decoration:none; min-height:48px; }
.category-section { padding: 12px 0 22px; }
.category-section-heading { margin-bottom:18px; }
.category-section-heading h2 { margin:0 0 4px; font-size:1.44rem; line-height:1.34; }
.category-section-heading p { margin:0; color:#68756c; font-size:1rem; }
.category-units-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.unit-card {
    min-height:108px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    padding:18px;
    background:#fff;
    border:1px solid #e0e7e1;
    border-radius:14px;
}
.unit-card strong { color:#26352c; font-size:1.04rem; }
.unit-card span { color:#66736a; font-size:.94rem; }
.category-note-section { padding-top:6px; }
.category-source-note { max-width:none; margin-top:0; }
.planned-tools { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.planned-tool {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px 18px;
    border:1px solid #e0e7e1;
    border-radius:13px;
    background:#fff;
}
.planned-tool span { color:#34443a; font-size:1rem; font-weight:600; }
.planned-tool small { color:#7a867e; font-size:.86rem; }
.footer-links { display:flex; gap:18px; }
.footer-links a:hover { color:var(--color-primary); }

@media (max-width: 900px) {
    .category-hero { grid-template-columns:1fr; gap:28px; padding-bottom:40px; }
    .category-hero-action { max-width:620px; }
    .category-units-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 620px) {
    .category-page { padding-top:25px; }
    .category-hero { padding-top:12px; }
    .category-hero h1 { font-size:clamp(1.9rem,8vw,2.4rem); }
    .category-hero-copy p { font-size:1.05rem; }
    .category-hero-action { padding:22px; }
    .category-units-grid, .planned-tools { grid-template-columns:1fr; }
    .unit-card { min-height:88px; }
}

/* =========================================================
   HISHEB v0.4.5 - Category layout refinement
   ========================================================= */
.category-intro {
    max-width: var(--container);
    padding: 22px 0 34px;
}
.category-intro h1 {
    margin: 0 0 10px;
    color: var(--color-text);
    font-size: clamp(1.8rem, 2.8vw, 2.35rem);
    line-height: 1.18;
    letter-spacing: -0.02em;
}
.category-intro p {
    max-width: 850px;
    margin: 0;
    color: #536158;
    font-size: 1.08rem;
    line-height: 1.78;
}
.category-tools {
    max-width: var(--container);
    padding: 0 0 72px;
}
.category-tool-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.category-tool-card {
    width: 100%;
    min-height: 104px;
    display: grid;
    grid-template-columns: 48px minmax(0,1fr) auto;
    align-items: center;
    gap: 17px;
    padding: 18px 20px;
    background: #fff;
    border: 1px solid #dfe6e0;
    border-radius: 15px;
    color: inherit;
    box-shadow: 0 5px 18px rgba(20,40,25,.035);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.category-tool-card[href]:hover {
    transform: translateY(-2px);
    border-color: #b9d0bf;
    box-shadow: 0 10px 25px rgba(20,40,25,.07);
}
.category-tool-card.featured {
    border-color: #b9d8c1;
    box-shadow: 0 8px 24px rgba(20,40,25,.055);
}
.category-tool-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--color-primary-soft);
    color: var(--color-primary);
    font-size: 1.35rem;
    font-weight: 700;
}
.category-tool-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.category-tool-content strong {
    color: #223128;
    font-size: 1.12rem;
    line-height: 1.35;
}
.category-tool-content span {
    color: #68756c;
    font-size: .96rem;
    line-height: 1.6;
}
.category-tool-arrow {
    color: var(--color-primary);
    font-size: 1.35rem;
    font-weight: 600;
    padding-left: 8px;
}
.category-tool-status {
    white-space: nowrap;
    padding: 5px 9px;
    border-radius: 999px;
    background: #f4f7f4;
    color: #748078;
    font-size: .82rem;
    font-weight: 600;
}
.category-page .category-section {
    max-width: 1120px;
}
.category-page .category-section-heading h2 {
    font-size: 1.38rem;
}
.category-page .category-section-heading p {
    font-size: .98rem;
}

/* Keep the main calculator page compact rather than blog-like. */
.calc-information h1 {
    font-size: clamp(1.8rem, 2.8vw, 2.35rem);
    line-height: 1.18;
}
.calc-information h2 {
    font-size: clamp(1.2rem, 1.65vw, 1.42rem);
}

@media (max-width: 620px) {
    .category-intro { padding-top: 12px; padding-bottom: 28px; }
    .category-intro h1 { font-size: 1.9rem; }
    .category-intro p { font-size: 1.02rem; }
    .category-tools { padding-bottom: 25px; }
    .category-tool-card {
        grid-template-columns: 42px minmax(0,1fr) auto;
        gap: 12px;
        padding: 15px;
    }
    .category-tool-icon { width: 42px; height: 42px; }
    .category-tool-content strong { font-size: 1.02rem; }
    .category-tool-content span { font-size: .9rem; }
    .category-tool-arrow { font-size: 1.15rem; }
}


/* =========================================================
   HISHEB v0.4.8 - Heading scale refinement
   All primary H1 headings use a compact 24px scale.
   ========================================================= */
.hero h1,
.category-intro h1,
.category-page .category-section-heading h1,
.category-hero h1,
.calc-information h1 {
    font-size: 24px;
    line-height: 1.3;
    letter-spacing: -0.012em;
}

.category-intro .category-count {
    margin: 0;
    color: #68756c;
    font-size: 1rem;
    line-height: 1.5;
}

.category-section-heading h1 {
    margin: 0 0 4px;
    color: var(--color-text);
    font-weight: 700;
}


/* =========================================================
   HISHEB v0.4.9 - Final heading hierarchy refinement
   ========================================================= */
.hero h1,
.category-intro h1,
.calc-information h1 {
    font-size: 24px;
    line-height: 1.3;
    letter-spacing: -0.012em;
}

.calc-information h2 {
    font-size: 20px;
    line-height: 1.4;
}

.category-intro {
    padding-bottom: 26px;
}

.category-intro .category-count {
    max-width: 850px;
    margin: 0;
    color: #536158;
    font-size: 1rem;
    line-height: 1.65;
}

.category-tools {
    padding-top: 0;
}


/* =========================================================
   HISHEB v0.5.0 - Land price calculator content
   ========================================================= */
.formula-box {
    margin: 20px 0 24px;
    padding: 16px 18px;
    border-left: 3px solid var(--color-primary);
    background: #f5f8f5;
    color: #334238;
    border-radius: 0 10px 10px 0;
}
.formula-box strong {
    display: block;
    margin-bottom: 5px;
    color: #1d3024;
}
.formula-box div {
    font-size: 1.03rem;
}
.price-equivalent-note {
    margin-top: -4px;
    padding: 9px 0 13px;
    color: #68756c;
    font-size: .92rem;
    line-height: 1.55;
}
.price-result-list .calc-result-item strong {
    font-size: 1rem;
}
@media (max-width: 620px) {
    .formula-box {
        margin-top: 16px;
        padding: 14px 15px;
    }
}


/* HISHEB v0.6.0 - Stable page heading hierarchy */
/* Homepage hero is the only intentionally large H1. Other page H1s stay at 24px. */
.hero h1 {
    font-size: clamp(2.3rem, 4vw, 3.8rem);
    line-height: 1.15;
    letter-spacing: -0.025em;
}
.category-intro h1,
.category-hero h1,
.calc-information h1 {
    font-size: 24px !important;
    line-height: 1.3;
    letter-spacing: -0.012em;
}
@media (max-width:560px) {
    .category-intro h1,
    .category-hero h1,
    .calc-information h1 { font-size: 24px !important; }
}
.calculator-kicker { display:none; }
.calculator-panel-heading h2 { font-size:20px; line-height:1.4; }


/* =========================================================
   HISHEB v0.6.1 - Final heading and calculator visual rules
   ========================================================= */
.hero h1 {
    font-size: clamp(2.7rem, 5vw, 4.5rem);
    line-height: 1.12;
    letter-spacing: -0.025em;
}
.category-intro h1,
.category-hero h1,
.calc-information h1 {
    font-size: 24px !important;
    line-height: 1.3;
    letter-spacing: -0.012em;
}
.calculator-kicker { display: none !important; }
.calculator-panel-heading h2 {
    font-size: 20px;
    line-height: 1.4;
}
.land-shape-visual {
    margin: 20px 0 24px;
    padding: 18px;
    border: 1px solid #e1e7e2;
    border-radius: 14px;
    background: #f8faf8;
}
.land-shape-visual svg {
    display:block;
    width:100%;
    max-width:520px;
    height:auto;
    margin:0 auto;
}
.land-shape-visual text {
    font-family:"Anek Bangla", "Nirmala UI", "Segoe UI", Arial, sans-serif;
    fill:#405046;
    font-size:16px;
}
.land-shape-note {
    margin-top:10px;
    color:#68756c;
    font-size:.9rem;
    line-height:1.6;
    text-align:center;
}
.area-result-highlight {
    margin-top:18px;
    padding:14px 16px;
    border-radius:12px;
    background:#f2f7f3;
    border:1px solid #d9e8dc;
}
.area-result-highlight strong {
    display:block;
    color:#173c25;
    font-size:1.35rem;
    line-height:1.35;
}
.area-result-highlight span {
    display:block;
    margin-top:3px;
    color:#68756c;
    font-size:.9rem;
}
.area-field-note {
    margin-top:7px;
    color:#68756c;
    font-size:.9rem;
}
@media (max-width:560px) {
    .hero h1 { font-size: clamp(2.55rem, 12vw, 3.4rem); }
    .category-intro h1,
    .category-hero h1,
    .calc-information h1 { font-size:24px !important; }
}


/* v0.7.0 - Multi-shape land-area calculator */
.calc-information h1 {
    font-size: 24px !important;
    line-height: 1.3;
    letter-spacing: -0.012em;
}

.shape-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
}

.shape-choice {
    min-height: 76px;
    padding: 8px 6px;
    border: 1px solid #d7dfd9;
    border-radius: 11px;
    background: #fff;
    color: #425047;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    font: inherit;
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
}

.shape-choice:hover,
.shape-choice[aria-checked="true"] {
    border-color: var(--color-primary);
    background: var(--color-primary-soft);
    color: var(--color-primary-dark);
}

.shape-choice-icon {
    display: block;
    min-height: 28px;
    font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", sans-serif;
    font-size: 1.45rem;
    line-height: 1;
}

.shape-select-fallback {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    clip-path: inset(50%);
    border: 0;
    padding: 0;
    margin: -1px;
}

.shape-diagram-panel {
    margin: 18px 0 20px;
    padding: 12px 12px 13px;
    border: 1px solid #e1e7e2;
    border-radius: 14px;
    background: #f8faf8;
}

.shape-diagram {
    width: 100%;
    min-height: 190px;
    display: grid;
    place-items: center;
}

.shape-diagram svg {
    display: block;
    width: 100%;
    max-width: 460px;
    height: auto;
}

.shape-diagram .diagram-text,
.shape-diagram .diagram-formula {
    font-family: "Anek Bangla", "Nirmala UI", "Segoe UI", Arial, sans-serif;
    fill: #405046;
    font-size: 15px;
}

.shape-diagram .diagram-formula {
    fill: #285b39;
    font-weight: 600;
    font-size: 14px;
}

.shape-formula {
    margin-top: 8px;
    padding-top: 9px;
    border-top: 1px solid #e1e7e2;
    color: #536158;
    font-size: .9rem;
    line-height: 1.5;
    text-align: center;
}

.land-area-guide {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 26px 0 4px;
}

.land-area-guide-item {
    padding: 14px;
    border: 1px solid #e1e7e2;
    border-radius: 12px;
    background: #fafcfb;
}

.land-area-guide-item strong {
    display: block;
    margin-bottom: 3px;
    color: #26332b;
    font-size: .94rem;
}

.land-area-guide-item span {
    display: block;
    color: #66736a;
    font-size: .88rem;
    line-height: 1.55;
}

.result-formula-used {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid rgba(22,101,52,.12);
    color: #536158;
    font-size: .9rem;
    line-height: 1.55;
}

@media (max-width: 900px) {
    .shape-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .land-area-guide {
        grid-template-columns: 1fr;
    }
}

/* HISHEB v0.8.0 - Construction calculator */
.field-optional {
    color:#77837b;
    font-size:.88em;
    font-weight:400;
}
.construction-note {
    margin-top:18px;
    color:#66736a;
    font-size:.92rem;
    line-height:1.65;
}

@media (max-width: 560px) {
    .shape-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .shape-choice {
        min-height: 70px;
        font-size: .74rem;
    }

    .shape-diagram {
        min-height: 165px;
    }

    .shape-diagram .diagram-text,
    .shape-diagram .diagram-formula {
        font-size: 13px;
    }
}

/* HISHEB v0.9.0 - Brick calculator */
.brick-diagram-panel { margin:0 0 36px; padding:18px 20px 14px; border:1px solid #dfe7e1; border-radius:16px; background:#f8fbf9; color:#3d5145; }
.brick-diagram { display:block; width:100%; height:auto; }
.brick-diagram .diagram-text { fill:currentColor; font-family:"Anek Bangla",sans-serif; font-size:14px; }
.brick-diagram .diagram-caption { fill:#68756c; font-family:"Anek Bangla",sans-serif; font-size:12px; }
.calc-subrow { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; }
.calc-subrow.three { grid-template-columns:1fr 1fr 1fr; margin-top:0; }
.calc-subfield label { display:block; margin:0 0 6px; color:#68756c; font-size:.82rem; font-weight:500; }
.calc-input:disabled { opacity:.55; background:#f2f5f3; cursor:not-allowed; }
.calc-unit-static { display:flex; align-items:center; justify-content:center; width:100%; height:48px; min-height:48px; max-height:48px; box-sizing:border-box; padding:8px 14px; border:1px solid #cbd5ce; border-radius:10px; background:#f6f8f7; color:#526259; font:inherit; font-size:.95rem; }
.calc-divider { height:1px; margin:25px 0 22px; background:#e2e8e3; }
@media (max-width:560px) { .brick-diagram-panel { padding:12px 10px 10px; margin-bottom:28px; } .calc-subrow,.calc-subrow.three { grid-template-columns:1fr; } }


/* HISHEB v1.2.7 - Rod calculator 2×2 input layout */

.calc-form-section-title { margin:0 0 12px; font-size:18px; line-height:1.35; font-weight:600; color:var(--color-text); }
.optional-label { font-size:.86em; font-weight:400; color:#758079; }

/* v1.2.8 - paint calculator */
.paint-diagram-panel { border:1px solid var(--border,#dfe7e2); border-radius:18px; padding:22px 20px 16px; background:#fbfdfb; margin:18px 0 30px; overflow:hidden; }
.paint-diagram { display:block; width:100%; height:auto; color:#3e5a4b; }
.paint-diagram .diagram-text { font-size:15px; fill:currentColor; }
.paint-diagram .diagram-label { font-size:17px; font-weight:600; fill:currentColor; }
.paint-diagram .diagram-caption { font-size:11px; fill:currentColor; opacity:.68; }
.paint-input-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px 12px; }
.paint-opening-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px 12px; }
/* Paint form rows need their own compact two-column control sizing. The global .calc-row
   uses a 154px unit column, which is too wide when each field already sits in a 2-column grid. */
.paint-row { grid-template-columns:minmax(0,1fr) 92px; gap:8px; }
.paint-row-static { grid-template-columns:minmax(0,1fr) 72px; }
.paint-row .calc-input, .paint-row .calc-select, .paint-row .calc-unit-static { min-width:0; box-sizing:border-box; }
.paint-price-note { margin-top:6px; }
.paint-unit-help { font-size:13px; color:#6f7c75; margin-top:6px; }
.paint-source-table { width:100%; border-collapse:collapse; margin:16px 0 8px; font-size:15px; }
.paint-source-table th,.paint-source-table td { border:1px solid var(--border,#dfe7e2); padding:9px 11px; text-align:left; }
.paint-source-table th { font-weight:600; background:#f5f8f6; }
@media (max-width:700px) { .paint-input-grid,.paint-opening-grid { grid-template-columns:1fr; } .paint-diagram-panel { padding:14px 10px 10px; } }
@media (max-width:560px) { .paint-row, .paint-row-static { grid-template-columns:minmax(0,1fr) 92px; } .paint-row-static { grid-template-columns:minmax(0,1fr) 72px; } }

.rod-entry .calc-subrow.three {
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 12px;
}
.rod-entry .calc-subfield .calc-input,
.rod-entry .calc-subfield .calc-select {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}
.rod-entry .calc-subfield .calc-select {
    overflow: hidden;
    text-overflow: ellipsis;
}
@media (max-width:560px) {
    .rod-entry .calc-subrow.three { grid-template-columns: 1fr; }
}

/* =========================================================
   HISHEB v0.9.2 - Related calculator cards
   Consistent, subtle depth and clearer navigation affordance.
   ========================================================= */
.related {
    margin-top: 52px;
    padding: 26px;
    background: #fbfdfb;
    border: 1px solid #e0e8e2;
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(34, 58, 43, 0.07);
}
.related h2 {
    margin: 0 0 6px;
}
.related-intro {
    margin: 0 0 18px;
    color: #68756c;
    font-size: .98rem;
    line-height: 1.65;
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.related-card {
    display: block;
    padding: 18px 19px;
    border: 1px solid #dbe5de;
    border-radius: 14px;
    background: #fff;
    color: #29372f;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 3px 10px rgba(34, 58, 43, 0.045);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.related-card span {
    display: block;
    margin-top: 5px;
    color: #6a766e;
    font-size: .88rem;
    font-weight: 400;
    line-height: 1.5;
}
.related-card:hover {
    transform: translateY(-2px);
    border-color: #b9d0bf;
    background: #fff;
    box-shadow: 0 8px 18px rgba(34, 58, 43, 0.09);
}
.related-card:focus-visible {
    outline: 3px solid rgba(45, 122, 72, 0.22);
    outline-offset: 2px;
}
@media (max-width: 820px) {
    .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .related { padding: 21px; border-radius: 15px; }
    .related-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   HISHEB v0.9.3 - Site-wide navigation & footer polish
   ========================================================= */
:root {
    --color-mint-panel: #effaf3;
    --color-mint-border: #d2e8d8;
    --color-mint-deep: #dcefe2;
    --shadow-related: 0 10px 28px rgba(22, 101, 52, 0.07);
    --shadow-related-card: 0 4px 14px rgba(34, 58, 43, 0.055);
}

/* Related calculators: useful, calm and visibly distinct from the FAQ. */
.related {
    margin-top: 52px;
    padding: 27px 28px 29px;
    background: linear-gradient(180deg, var(--color-mint-panel) 0%, #f7fcf8 100%);
    border: 1px solid var(--color-mint-border);
    border-radius: 19px;
    box-shadow: var(--shadow-related);
}
.related-heading-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
}
.related-eyebrow {
    display: block;
    margin-bottom: 1px;
    color: var(--color-primary);
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.4;
}
.related h2 {
    margin: 0;
    color: var(--color-text);
    font-size: 1.45rem;
    line-height: 1.35;
}
.related-all-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 3px;
    color: var(--color-primary);
    font-size: .94rem;
    font-weight: 600;
    white-space: nowrap;
}
.related-all-link span {
    font-size: 1.05em;
    transition: transform .18s ease;
}
.related-all-link:hover span {
    transform: translateX(3px);
}
.related-all-link:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .2);
    outline-offset: 4px;
    border-radius: 5px;
}
.related-intro {
    margin: 5px 0 19px;
    color: #68756c;
    font-size: .98rem;
    line-height: 1.65;
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.related-card {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px 16px 16px 14px;
    border: 1px solid #d9e6dd;
    border-radius: 15px;
    background: rgba(255, 255, 255, .92);
    color: var(--color-text);
    text-decoration: none;
    box-shadow: var(--shadow-related-card);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.related-card-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #d4ebda;
    border-radius: 13px;
    background: #e5f5e9;
    color: var(--color-primary);
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1;
}
.related-card-content {
    min-width: 0;
    flex: 1 1 auto;
}
.related-card-content > strong {
    display: block;
    color: #24332a;
    font-size: .99rem;
    font-weight: 700;
    line-height: 1.4;
}
.related-card-content > span {
    display: block;
    margin-top: 3px;
    color: #6a766e;
    font-size: .84rem;
    font-weight: 400;
    line-height: 1.48;
}
.related-card-arrow {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e7f5eb;
    color: var(--color-primary);
    font-size: 1.08rem;
    line-height: 1;
    transition: transform .18s ease, background-color .18s ease;
}
.related-card:hover {
    transform: translateY(-3px);
    border-color: #b9d8c1;
    background: #fff;
    box-shadow: 0 10px 22px rgba(34, 58, 43, .10);
}
.related-card:hover .related-card-arrow {
    transform: translateX(2px);
    background: #dff1e4;
}
.related-card:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .22);
    outline-offset: 2px;
}

/* Shared footer: one structure and one visual language across the site. */
.site-footer {
    margin-top: 72px;
    border-top: 1px solid #dfe8e1;
    background: #fff;
}
.footer-inner {
    width: min(100% - 40px, var(--container));
    margin: 0 auto;
    padding: 46px 0 40px;
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) repeat(3, minmax(135px, .72fr));
    gap: 48px;
}
.footer-brand {
    max-width: 390px;
}
.footer-logo {
    display: inline-flex;
    align-items: center;
    color: var(--color-primary);
    font-size: 2.05rem;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -.025em;
}
.footer-logo-image {
    display: block;
    width: auto;
    height: 36px;
    max-width: min(210px, 100%);
    object-fit: contain;
}
.footer-tagline {
    margin: 8px 0 7px;
    color: #2e4035;
    font-size: 1rem;
    font-weight: 600;
}
.footer-description {
    margin: 0;
    color: #6a766e;
    font-size: .92rem;
    line-height: 1.7;
}
.footer-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.footer-column h2 {
    margin: 3px 0 12px;
    color: #25342b;
    font-size: 1.03rem;
    line-height: 1.4;
}
.footer-column a,
.footer-menu-placeholder {
    padding: 3px 0;
    color: #68756c;
    font-size: .92rem;
    line-height: 1.55;
}
.footer-column a {
    transition: color .15s ease, transform .15s ease;
}
.footer-column a:hover {
    color: var(--color-primary);
    transform: translateX(2px);
}
.footer-menu-placeholder {
    cursor: default;
}
.footer-column a:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .18);
    outline-offset: 3px;
    border-radius: 4px;
}
.footer-bottom {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px max(20px, calc((100% - var(--container)) / 2));
    border-top: 1px solid #e1e9e3;
    background: #eff9f2;
    color: #68756c;
    font-size: .83rem;
}
.footer-bottom div:last-child {
    color: var(--color-primary);
    font-weight: 500;
}

@media (max-width: 820px) {
    .related-heading-row { gap: 15px; }
    .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .footer-inner {
        grid-template-columns: 1.2fr 1fr 1fr;
        gap: 28px;
    }
    .footer-brand { grid-column: 1 / -1; max-width: 620px; }
}

@media (max-width: 560px) {
    .related {
        margin-top: 42px;
        padding: 22px 18px 20px;
        border-radius: 16px;
    }
    .related-heading-row { flex-direction: column; gap: 8px; }
    .related-all-link { margin-top: 0; }
    .related-intro { margin-bottom: 15px; font-size: .92rem; }
    .related-grid { grid-template-columns: 1fr; gap: 10px; }
    .related-card { padding: 14px 13px; }
    .related-card-icon { flex-basis: 40px; width: 40px; height: 40px; }
    .related-card-arrow { flex-basis: 32px; width: 32px; height: 32px; }
    .site-footer { margin-top: 55px; }
    .footer-inner {
        width: min(100% - 32px, var(--container));
        grid-template-columns: 1fr 1fr;
        gap: 28px 22px;
        padding: 34px 0 30px;
    }
    .footer-brand { grid-column: 1 / -1; }
    .footer-logo { font-size: 1.85rem; }
    .footer-logo-image { height: 32px; max-width: min(190px, 100%); }
    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 13px 16px;
        font-size: .79rem;
    }
}


/* =========================================================
   HISHEB v0.9.5 - Related calculator visual system
   Clean mint panel, concise cards, reliable inline SVG icons.
   ========================================================= */
.related {
    margin-top: 52px;
    padding: 27px 28px 29px;
    background: #effaf3;
    border: 1px solid #d2e8d8;
    border-radius: 19px;
    box-shadow: 0 10px 28px rgba(22, 101, 52, 0.07);
}
.related-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}
.related h2 {
    margin: 0;
    color: var(--color-text);
    font-size: 1.45rem;
    line-height: 1.35;
}
.related-intro {
    margin: 6px 0 20px;
    color: #68756c;
    font-size: .98rem;
    line-height: 1.6;
}
.related-all-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-primary);
    font-size: .94rem;
    font-weight: 600;
    white-space: nowrap;
}
.related-all-link span {
    font-size: 1.05em;
    transition: transform .18s ease;
}
.related-all-link:hover span { transform: translateX(3px); }
.related-all-link:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .2);
    outline-offset: 4px;
    border-radius: 5px;
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.related-card {
    min-width: 0;
    min-height: 84px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 16px 16px 14px;
    border: 1px solid #d9e6dd;
    border-radius: 15px;
    background: #fff;
    color: var(--color-text);
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(34, 58, 43, 0.055);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.related-card-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid #d2ead8;
    border-radius: 13px;
    background: #e3f4e8;
    color: var(--color-primary);
}
.related-icon-svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.related-icon-svg rect { fill: none; }
.related-card-content {
    min-width: 0;
    flex: 1 1 auto;
}
.related-card-content > strong {
    display: block;
    color: #24332a;
    font-size: .99rem;
    font-weight: 700;
    line-height: 1.4;
}
.related-card-arrow {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e4f4e9;
    color: var(--color-primary);
    font-size: 1.08rem;
    line-height: 1;
    transition: transform .18s ease, background-color .18s ease;
}
.related-card:hover {
    transform: translateY(-3px);
    border-color: #b9d8c1;
    box-shadow: 0 10px 22px rgba(34, 58, 43, .10);
}
.related-card:hover .related-card-arrow {
    transform: translateX(2px);
    background: #dff1e4;
}
.related-card:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .22);
    outline-offset: 2px;
}
@media (max-width: 820px) {
    .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .related {
        margin-top: 42px;
        padding: 22px 18px 20px;
        border-radius: 16px;
    }
    .related-heading-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }
    .related-intro { margin-bottom: 15px; font-size: .92rem; }
    .related-grid { grid-template-columns: 1fr; gap: 10px; }
    .related-card { min-height: 78px; padding: 14px 13px; }
    .related-card-icon { flex-basis: 42px; width: 42px; height: 42px; }
    .related-icon-svg { width: 24px; height: 24px; }
    .related-card-arrow { flex-basis: 32px; width: 32px; height: 32px; }
}

/* v0.9.4 - shared footer geometry remains identical across current pages. */
.site-footer { margin-top: 72px; }
.footer-inner { width: min(100% - 40px, var(--container)); }
@media (max-width: 560px) {
    .site-footer { margin-top: 55px; }
    .footer-inner { width: min(100% - 32px, var(--container)); }
}


/* =========================================================
   HISHEB v0.9.5 - Header logo + related icon alignment
   ========================================================= */
/* Use the homepage brand treatment consistently across every page. */
.site-header .brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--color-primary);
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.02em;
    white-space: nowrap;
}
.site-header .brand-mark {
    width: auto;
    height: auto;
    display: inline;
    border-radius: 0;
    background: transparent;
    color: var(--color-primary);
    font-size: inherit;
    font-weight: 700;
    line-height: 1;
}
.site-header .brand-logo-image {
    display: block;
    width: auto;
    height: 34px;
    max-width: min(200px, 40vw);
    object-fit: contain;
}
.site-header .brand > span:last-child {
    color: var(--color-primary);
}

/* Related-card icons are fixed-size flex/grid boxes; SVGs are block-level
   so font baseline/line-height can never pull them upward. */
.related-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    line-height: 0;
}
.related-icon-svg,
.related-arrow-svg,
.related-all-arrow-svg {
    display: block;
    overflow: visible;
}
.related-icon-svg {
    width: 26px;
    height: 26px;
}
.related-card-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    line-height: 0;
}
.related-arrow-svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.related-all-link > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    line-height: 0;
}
.related-all-arrow-svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.related-all-link:hover .related-all-arrow-svg {
    transform: translateX(2px);
}
@media (max-width: 560px) {
    .site-header .brand {
        font-size: 1.28rem;
        gap: 9px;
    }
    .related-card-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }
    .related-icon-svg {
        width: 24px;
        height: 24px;
    }
    .related-card-arrow {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }
    .related-arrow-svg {
        width: 17px;
        height: 17px;
    }
}

/* =========================================================
   HISHEB v0.9.6 - Related icon centring + calculator/footer spacing
   ========================================================= */
/* The legacy .related-card span rule has higher specificity than the
   class-only icon rules. Explicitly target these span elements so their
   grid centring and zero top margin always win. */
.related-card > span.related-card-icon {
    display: grid;
    place-items: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    margin: 0;
    padding: 0;
    line-height: 0;
    align-self: center;
}
.related-card > span.related-card-arrow {
    display: grid;
    place-items: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    margin: 0;
    padding: 0;
    line-height: 0;
    align-self: center;
}
.related-card-icon .related-icon-svg,
.related-card-arrow .related-arrow-svg {
    display: block;
    margin: 0;
    padding: 0;
    align-self: center;
    justify-self: center;
}
/* Keep the compact mobile geometry while preserving true centring. */
@media (max-width: 560px) {
    .related-card > span.related-card-icon {
        flex-basis: 40px;
        width: 40px;
        height: 40px;
    }
    .related-card > span.related-card-arrow {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }
}
/* Reduce the large vertical gap between the related-calculator section and
   the shared footer on calculator pages without changing homepage spacing. */
.calc-page + .site-footer {
    margin-top: 42px;
}
@media (max-width: 560px) {
    .calc-page + .site-footer {
        margin-top: 32px;
    }
}

/* =========================================================
   HISHEB v1.0.0 - Concrete quantity calculator visual
   ========================================================= */
.concrete-diagram-panel { margin:0 0 36px; padding:18px 20px 14px; border:1px solid #dfe7e1; border-radius:16px; background:#f8fbf9; color:#3d5145; }
.concrete-diagram { display:block; width:100%; height:auto; }
.concrete-diagram .concrete-shape line,
.concrete-diagram .concrete-shape path { fill:none; stroke:currentColor; stroke-width:1.5; }
.concrete-diagram .diagram-text { fill:currentColor; font-family:"Anek Bangla",sans-serif; font-size:14px; }
.concrete-diagram .diagram-label { fill:#314238; font-family:"Anek Bangla",sans-serif; font-size:16px; font-weight:600; }
.concrete-diagram .diagram-caption { fill:#68756c; font-family:"Anek Bangla",sans-serif; font-size:12px; }
@media (max-width:560px) { .concrete-diagram-panel { padding:12px 10px 10px; margin-bottom:28px; } }

/* =========================================================
   HISHEB v1.1.0 - Tile quantity calculator visual
   ========================================================= */
.tile-diagram-panel { margin:0 0 36px; padding:18px 20px 14px; border:1px solid #dfe7e1; border-radius:16px; background:#f8fbf9; color:#3d5145; }
.tile-diagram { display:block; width:100%; height:auto; }
.tile-diagram .diagram-text { fill:currentColor; font-family:"Anek Bangla",sans-serif; font-size:14px; }
.tile-diagram .diagram-label { fill:#314238; font-family:"Anek Bangla",sans-serif; font-size:16px; font-weight:600; }
.tile-diagram .diagram-caption { fill:#68756c; font-family:"Anek Bangla",sans-serif; font-size:12px; }
@media (max-width:560px) { .tile-diagram-panel { padding:12px 10px 10px; margin-bottom:28px; } }

/* =========================================================
   HISHEB v1.7.12 - Usage-based discovery on homepage
   ========================================================= */
.home-popular-section {
    padding-top: 0;
    padding-bottom: 72px;
}
.popular-empty {
    padding: 22px 24px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-medium);
    background: #f8fbf9;
    color: var(--color-text-soft);
    font-size: .98rem;
    line-height: 1.7;
}
.category-chart-section {
    width: min(100% - 40px, var(--container));
    margin: 0 auto;
    padding: 8px 0 72px;
}
.category-chart {
    display: grid;
    gap: 12px;
}
.category-chart-row {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr) 55px;
    align-items: center;
    gap: 14px;
    min-height: 48px;
    padding: 7px 10px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: inherit;
    transition: background .18s ease, border-color .18s ease;
}
.category-chart-row:hover {
    background: #f7fbf8;
    border-color: var(--color-border);
}
.category-chart-label {
    color: var(--color-text);
    font-weight: 600;
}
.category-chart-track {
    display: block;
    height: 14px;
    overflow: hidden;
    border-radius: 999px;
    background: #edf3ee;
}
.category-chart-bar {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--color-primary);
}
.category-chart-count {
    color: var(--color-text-soft);
    font-size: .94rem;
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 700px) {
    .category-chart-section {
        width: min(100% - 24px, var(--container));
        padding-bottom: 50px;
    }
    .category-chart-row {
        grid-template-columns: 92px minmax(0, 1fr) 42px;
        gap: 9px;
        padding-left: 6px;
        padding-right: 6px;
    }
    .category-chart-count {
        font-size: .88rem;
    }
}

/* HISHEB v1.1.4 - functional calculator search */
.search-box{position:relative}.calculator-search-results{margin-top:8px;width:100%;max-width:560px;background:#fff;border:1px solid #dbe6df;border-radius:12px;box-shadow:0 10px 28px rgba(25,70,40,.10);overflow:hidden;z-index:20}.calculator-search-results a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px;color:var(--color-text);text-decoration:none;border-bottom:1px solid #edf2ee}.calculator-search-results a:last-child{border-bottom:0}.calculator-search-results a:hover,.calculator-search-results a:focus-visible{background:#f1f8f3;outline:none}.calculator-search-results strong{font-size:1rem}.calculator-search-results span{color:#6d7971;font-size:.9rem;white-space:nowrap}.search-no-results{padding:13px 15px;color:#6d7971}

/* HISHEB v1.1.5 - search result state */
.calculator-search-results[hidden] { display:none; }
.hero-content { position:relative; z-index:3; }
.calculator-search-results { position:relative; z-index:30; }

/* HISHEB v1.1.8 - native search clear control and simplified search UI */
.search-box {
    position: relative;
    max-width: 620px;
}
.search-input-wrap {
    position: relative;
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
}
.search-input-wrap input {
    width: 100%;
}
.calculator-search-results {
    margin-top: 8px;
    width: 100%;
    max-width: 620px;
    background: #fff;
    border: 1px solid #dbe6df;
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(25,70,40,.10);
    overflow: hidden;
}
.calculator-search-results a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 15px;
    color: var(--color-text);
    text-decoration: none;
    border-bottom: 1px solid #edf2ee;
}
.calculator-search-results a:last-child { border-bottom: 0; }
.calculator-search-results a:hover,
.calculator-search-results a:focus-visible,
.calculator-search-results a.is-active {
    background: #f1f8f3;
    outline: none;
}
.calculator-search-results strong { font-size: 1rem; }
.search-result-category {
    flex: 0 0 auto;
    color: #718077;
    font-size: .86rem;
    white-space: nowrap;
}
.search-no-results {
    padding: 13px 15px;
    color: #66736a;
}
.search-no-results strong { color: var(--color-text); }
.search-no-results span { display: block; font-size: .86rem; margin-top: 2px; }
.calculator-search-results[hidden] { display: none; }
.hero-content { position: relative; z-index: 3; }
.calculator-search-results { position: relative; z-index: 30; }

/* Optional homepage section introductions leave no paragraph box when empty. */
.section-heading p:empty { display: none; }

@media (max-width: 700px) {
    .search-box { max-width: none; }
    .calculator-search-results { max-width: none; }
    .search-result-category { font-size: .82rem; }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* =========================================================
   HISHEB v1.2.4 - Unified header search with button
   Only affects the shared header search.
   ========================================================= */
.header-search {
    flex: 0 1 330px;
    width: min(330px, 100%);
    max-width: 330px;
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
}
.header-search .search-input-wrap {
    flex: 1 1 auto;
    min-width: 0;
}
.header-search input[type="search"] {
    display: block;
    width: 100%;
    height: 38px;
    padding: 6px 12px;
    border: 1px solid #d5e1d9;
    border-radius: 10px;
    background: #fff;
    color: var(--color-text);
    font: inherit;
    font-size: .91rem;
    outline: none;
    box-sizing: border-box;
}
.header-search input[type="search"]:focus {
    border-color: #9fc4aa;
    box-shadow: 0 0 0 3px rgba(22,101,52,.08);
}
.header-search button {
    flex: 0 0 auto;
    height: 38px;
    padding: 6px 14px;
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    background: var(--color-primary);
    color: #fff;
    font: inherit;
    font-size: .90rem;
    font-weight: 600;
    cursor: pointer;
}
.header-search button:hover {
    background: var(--color-primary-dark);
}
.header-search .calculator-search-results {
    position: absolute;
    top: calc(100% + 7px);
    left: 0;
    width: 100%;
    max-width: none;
    margin-top: 0;
    z-index: 120;
}
.header-search .calculator-search-results a {
    padding: 11px 13px;
}
.header-search .calculator-search-results strong {
    font-size: .94rem;
}
.header-search .search-result-category {
    font-size: .82rem;
}

@media (max-width: 1000px) {
    .header-search { flex-basis: 280px; max-width: 280px; }
}
@media (max-width: 700px) {
    .header-inner { gap: 10px; }
    .header-search {
        flex: 1 1 auto;
        width: auto;
        max-width: none;
        margin-left: auto;
    }
    .header-search input[type="search"],
    .header-search button { height: 36px; }
    .header-search button { padding-left: 11px; padding-right: 11px; }
}
@media (max-width: 430px) {
    .header-search { max-width: 210px; }
    .header-search { gap: 5px; }
    .header-search input[type="search"] { font-size: .84rem; padding-left: 9px; padding-right: 9px; }
    .header-search button { font-size: .83rem; padding-left: 9px; padding-right: 9px; }
}

/* HISHEB v1.3.0 - GPA calculator */
.gpa-scale-card{border:1px solid var(--border,#dfe7e2);border-radius:16px;padding:18px 20px 14px;background:#f8fbf9;margin:18px 0 30px}.gpa-scale-card h2{margin:0 0 12px;font-size:20px}.gpa-scale-table{width:100%;border-collapse:collapse;font-size:15px}.gpa-scale-table th,.gpa-scale-table td{border:1px solid var(--border,#dfe7e2);padding:8px 10px;text-align:left}.gpa-scale-table th{font-weight:600;background:#f1f6f3}.gpa-entries{display:grid;gap:12px}.gpa-entry{border:1px solid var(--border,#dfe7e2);border-radius:14px;padding:14px;background:#fbfdfb}.gpa-entry-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.gpa-entry-title{font-weight:600;color:#28352d}.gpa-remove{border:0;background:transparent;color:#68756c;cursor:pointer;font:inherit;padding:4px 2px}.gpa-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gpa-optional{min-height:48px;border:1px solid var(--border,#dfe7e2);border-radius:10px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#4e5c54;font-size:.9rem;cursor:pointer;box-sizing:border-box}.gpa-optional input{width:18px;height:18px;margin:0;accent-color:#176c3a}.gpa-help-note{margin:-2px 0 14px;color:#6b786f;font-size:.88rem;line-height:1.6}.gpa-status{margin:8px 0 14px;font-weight:600}.gpa-status.pass{color:#176c3a}.gpa-status.fail{color:#9b3b32}@media(max-width:560px){.gpa-entry-grid{grid-template-columns:1fr}.gpa-scale-table{font-size:14px}}

/* =========================================================
   HISHEB v1.4.0 - Homepage focus + progressive calculator grid
   ========================================================= */
.home-hero-single {
    grid-template-columns: minmax(0, 920px);
    justify-content: center;
}
.home-hero-single .hero-content {
    align-items: center;
    text-align: center;
    padding: clamp(26px, 5vw, 72px) 0 clamp(34px, 6vw, 82px);
}
.home-hero-single .hero h1,
.home-hero-single .hero-description {
    max-width: 900px;
}
.home-hero-single .hero-description {
    margin-left: auto;
    margin-right: auto;
}
.home-hero-single .category-links {
    justify-content: center;
}
.home-calculators-section {
    width: min(100% - 40px, var(--container));
    margin: 0 auto;
    padding: 0 0 72px;
}
.home-calculators-heading {
    margin-bottom: 22px;
}
.home-calculators-heading h2 {
    font-size: clamp(1.5rem, 3vw, 2.1rem);
}
.home-calculators-total {
    margin: 5px 0 0;
    color: var(--color-text-soft);
    font-size: 0.9rem;
    line-height: 1.5;
}
.home-calculators-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.category-calculator-grid {
    width: 100%;
}
.home-calculator-card {
    min-width: 0;
    min-height: 156px;
    padding: 20px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    position: relative;
    overflow: hidden;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-medium);
    color: inherit;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.home-calculator-card:hover {
    transform: translateY(-3px);
    border-color: #c7d9cb;
    box-shadow: var(--shadow-soft);
}
.home-calculator-card:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .22);
    outline-offset: 2px;
}
.home-calculator-card-icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--color-primary-soft);
    color: var(--color-primary);
}
.home-calculator-card-icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.home-calculator-card-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding-right: 20px;
}
.home-calculator-card-category {
    margin-bottom: 4px;
    color: var(--color-text-soft);
    font-size: .8rem;
    font-weight: 600;
}
.home-calculator-card-body strong {
    color: var(--color-text);
    font-size: 1.04rem;
    line-height: 1.38;
}
.home-calculator-card-description {
    margin-top: 7px;
    color: var(--color-text-soft);
    font-size: .84rem;
    line-height: 1.5;
}
.home-calculator-card-arrow {
    position: absolute;
    right: 15px;
    bottom: 14px;
    width: 25px;
    height: 25px;
    display: grid;
    place-items: center;
    color: var(--color-primary);
}
.home-calculator-card-arrow svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .18s ease;
}
.home-calculator-card:hover .home-calculator-card-arrow svg {
    transform: translateX(2px);
}
.home-calculators-more-wrap {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}
.home-calculators-more {
    min-height: 46px;
    padding: 9px 20px;
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    background: var(--color-surface);
    color: var(--color-primary);
    font-weight: 700;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.home-calculators-more:hover {
    background: var(--color-primary);
    color: #fff;
}
.home-calculators-more:focus-visible {
    outline: 3px solid rgba(45, 122, 72, .22);
    outline-offset: 2px;
}
.home-calculators-more-count {
    color: var(--color-text-soft);
    font-size: .84rem;
}
.home-calculators-grid .home-calculator-card[hidden] {
    display: none;
}

@media (max-width: 1000px) {
    .home-calculators-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .home-hero-single .hero-content {
        padding-top: 16px;
    }
    .home-calculators-section {
        width: min(100% - 24px, var(--container));
        padding-bottom: 52px;
    }
    .home-calculators-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 11px;
    }
    .home-calculator-card {
        min-height: 138px;
        padding: 16px;
        gap: 10px;
    }
    .home-calculator-card-icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
        border-radius: 10px;
    }
    .home-calculator-card-icon svg {
        width: 21px;
        height: 21px;
    }
    .home-calculator-card-body strong {
        font-size: .96rem;
    }
    .home-calculator-card-description {
        display: none;
    }
    .home-calculator-card-arrow {
        right: 9px;
        bottom: 8px;
    }
}

@media (max-width: 430px) {
    .home-calculators-grid {
        grid-template-columns: 1fr;
    }
    .home-calculator-card {
        min-height: 88px;
        align-items: center;
        padding: 13px 15px;
    }
    .home-calculator-card-body {
        padding-right: 24px;
    }
    .home-calculator-card-category {
        margin-bottom: 1px;
    }
}

/* Keep the redesigned homepage compact now that the hero no longer contains a calculator panel. */
.hero.home-hero {
    min-height: auto;
    padding-top: clamp(54px, 8vw, 92px);
    padding-bottom: clamp(46px, 7vw, 76px);
}
.hero.home-hero .hero-content {
    min-height: 0;
}
.home-hero-single .hero h1 {
    font-size: clamp(2.7rem, 5vw, 4.5rem);
}
.home-calculators-section + .site-footer {
    margin-top: 18px;
}

@media (max-width: 760px) {
    .hero.home-hero {
        padding-top: 46px;
        padding-bottom: 53px;
    }
    .home-hero-single .hero h1 {
        font-size: clamp(2.25rem, 11vw, 3.2rem);
    }
}


/* =========================================================
   HISHEB v1.4.1 - Homepage hierarchy + compact branding
   ========================================================= */
.site-header .brand-logo-image {
    height: 32.4px;
}
.footer-logo-image {
    height: 34.2px;
}
.home-hero-single .category-links {
    display: none;
}

/* Homepage section headings are intentionally compact at 24px. */
.home-popular-section .section-heading h2,
.category-chart-section .section-heading h2,
.home-calculators-heading h2 {
    font-size: 24px;
}

/* =========================================================
   HISHEB v1.4.2 - Final spacing polish
   ========================================================= */
/* Keep the homepage hero compact after removing the hero-side calculator. */
.hero.home-hero {
    padding-top: clamp(33.6px, 4.8vw, 57.6px);
    padding-bottom: clamp(28.8px, 4.8vw, 52.8px);
}
.home-hero-single .hero-content {
    padding-top: 0;
    padding-bottom: 0;
}

/* Shared footer uses one consistent top margin on every page and viewport. */
.site-footer,
.calc-page + .site-footer {
    margin-top: 18px;
}
@media (max-width: 560px) {
    .site-footer,
    .calc-page + .site-footer {
        margin-top: 18px;
    }
}


.bill-breakdown{margin-top:18px;padding-top:16px;border-top:1px solid #dfe6e0}
.breakdown-title{margin-bottom:9px;color:#26332b;font-size:.95rem;font-weight:700}
.breakdown-row{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid #eef2ee;color:#59655d;font-size:.9rem}
.breakdown-row:last-child{border-bottom:0}
.breakdown-row strong{color:#26332b;white-space:nowrap}

.formula-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.formula-grid>div{padding:18px;border:1px solid #e1e7e2;border-radius:14px;background:#f7fbf8}.formula-grid strong,.formula-grid span,.formula-grid small{display:block}.formula-grid strong{margin-bottom:5px;color:var(--color-text)}.formula-grid span{font-weight:600;font-size:1.08rem;color:#176b4d}.formula-grid small{margin-top:4px;color:#68756d}@media(max-width:560px){.formula-grid{grid-template-columns:1fr}}

/* v1.6.0 - Statistics calculator */
.field-optional{font-size:.78em;color:#6b786f;font-weight:400;margin-left:4px}.pvalue-graph{margin-top:18px;overflow:hidden;border:1px solid #e1e7e2;border-radius:14px;background:#fff}.pvalue-graph svg{display:block}.pvalue-graph text{font-family:inherit}

/* v1.6.5: Ampere calculator graph */
.ampere-graph{width:100%;overflow-x:auto}.ampere-graph svg{display:block;min-width:520px}.ampere-graph + .calc-note{margin-top:10px}

.gpa-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}.gpa-mode{border:1px solid var(--border,#dfe7e2);background:#f7faf8;color:#526057;border-radius:10px;min-height:44px;padding:8px 10px;font:inherit;cursor:pointer}.gpa-mode.active{background:#e9f6ee;border-color:#9bc9aa;color:#176c3a;font-weight:600}.optional-label{font-size:.78rem;color:#7a867e;font-weight:400}@media(max-width:560px){.gpa-mode-tabs{grid-template-columns:1fr}}

/* HISHEB v1.7.34 - VAT calculator visual polish */
.vat-diagram { width:100%; max-width:760px; margin:6px 0 42px; color:#2b6a46; }
.vat-diagram text { fill:currentColor; font-family:"Anek Bangla",sans-serif; }
.calc-result-note { margin:14px 0 0; color:#5f6d64; font-size:.9rem; line-height:1.6; }

/* HISHEB v1.7.41 - Neutral grey calculator diagrams */
.avg-speed-diagram,.standard-deviation-diagram,.mode-diagram { color:#7a8080; }
.avg-speed-diagram svg,.standard-deviation-diagram svg,.mode-diagram svg { display:block; width:100%; height:auto; }
.avg-speed-diagram text,.standard-deviation-diagram text,.mode-diagram text { font-family:"Anek Bangla",sans-serif; }
.mode-diagram { width:100%; max-width:760px; margin:6px 0 38px; }
.mode-diagram path,.mode-diagram rect,.mode-diagram line,.mode-diagram circle,.mode-diagram polygon { vector-effect:non-scaling-stroke; }

/* HISHEB v1.7.37 - Profit/loss calculator editorial layout */
.profit-loss-diagram { width:100%; max-width:760px; margin:6px 0 38px; color:#8a9090; }
.profit-loss-diagram svg{display:block;width:100%;height:auto}
.profit-loss-diagram text { fill:#777d7d; font-family:"Anek Bangla",sans-serif; }
.profit-loss-diagram path,.profit-loss-diagram rect,.profit-loss-diagram line,.profit-loss-diagram polygon { vector-effect:non-scaling-stroke; }
.calc-content-section { max-width:760px; margin:0; }
.calc-content-section + .calc-content-section { margin-top:42px; }
.calc-content-section p + p { margin-top:14px; }
.calc-content-section strong { color:#35403a; }
.formula-box { max-width:760px; margin:22px 0 0; padding:16px 18px; border-left:3px solid #b7bcbc; background:#f6f7f7; color:#3f4747; border-radius:0 10px 10px 0; line-height:2; }
.formula-box strong { color:#303737; }
.calc-source-note { margin:24px 0 0; padding:14px 0; border-top:1px solid #e2e5e5; border-bottom:1px solid #e2e5e5; background:transparent; border-radius:0; color:#59625f; font-size:.92rem; line-height:1.75; }
@media (max-width:560px) { .profit-loss-diagram { margin-bottom:30px; } .calc-content-section + .calc-content-section { margin-top:34px; } }

/* Category editorial descriptions: readable short lead with an unobtrusive Read more expansion. */
.category-description { width: 100%; max-width: none; box-sizing: border-box; margin-top: 14px; color: #4f5d55; font-size: 1.03rem; line-height: 1.85; }
.category-description p { max-width: none; margin: 0 0 10px; }
.category-description p:last-child { margin-bottom: 0; }
.category-description-more { margin-top: 8px; }
.category-description-more summary { display: inline-flex; align-items: center; gap: 6px; color: #176b3a; font-weight: 600; cursor: pointer; list-style: none; user-select: none; }
.category-description-more summary::-webkit-details-marker { display: none; }
.category-description-more summary::after { content: '↓'; font-size: .9em; transition: transform .15s ease; }
.category-description-more[open] summary { display: none; }
.category-description-more[open] summary::after { transform: rotate(180deg); }
.category-description-expanded { margin-top: 8px; }
.category-description-expanded p { max-width: none; margin: 0 0 10px; }
.category-description-expanded p:last-child { margin-bottom: 0; }
@media (max-width: 700px) { .category-description { font-size: 1rem; line-height: 1.75; } }

/* =========================================================
   HISHEB v1.7.54 - About page
   Simple editorial page with short, readable paragraphs.
   ========================================================= */
.about-page { padding: 34px 0 72px; }
.about-container { max-width: 900px; }
.about-content { padding: 8px 0 0; }
.about-header { margin-bottom: 46px; }
.about-header h1 { max-width: 760px; margin: 0 0 16px; color: var(--color-text); font-size: clamp(1.9rem, 3vw, 2.5rem); line-height: 1.18; letter-spacing: -.025em; }
.about-lead { max-width: 760px; margin: 0; color: #536158; font-size: 1.12rem; line-height: 1.78; }
.about-content section { margin-top: 38px; }
.about-content section:first-of-type { margin-top: 0; }
.about-content h2 { margin: 0 0 11px; color: var(--color-text); font-size: clamp(1.22rem, 1.75vw, 1.46rem); line-height: 1.34; }
.about-content p { max-width: 760px; margin: 0; color: #4e5b53; font-size: 1.02rem; line-height: 1.8; }
@media (max-width: 560px) {
    .about-page { padding-top: 25px; padding-bottom: 55px; }
    .about-header { margin-bottom: 36px; }
    .about-lead { font-size: 1.08rem; }
    .about-content section { margin-top: 32px; }
}


/* =========================================================
   HISHEB v1.8.29 - Privacy policy editorial reading
   Longer policy copy, same clean editorial style.
   ========================================================= */
.privacy-content { padding-bottom: 8px; }
.privacy-content .about-header { margin-bottom: 42px; }
.privacy-content section { margin-top: 34px; }
.privacy-content section:first-of-type { margin-top: 0; }
.privacy-content h2 { margin-bottom: 12px; }
.privacy-content p { max-width: 780px; }
@media (max-width: 560px) {
    .privacy-content .about-header { margin-bottom: 32px; }
    .privacy-content section { margin-top: 28px; }
}

/* =========================================================
   HISHEB v1.7.57 - Contact page
   Email address is kept out of the visible page.
   ========================================================= */
.contact-email-block { margin-top: 18px; }
.contact-email-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    border: 0;
    cursor: pointer;
    font: inherit;
}
@media (max-width: 560px) {
    .contact-email-button { width: 100%; box-sizing: border-box; }
}

/* HISHEB v1.7.66 - EMI calculator editorial design */
.emi-diagram { width:100%; max-width:760px; margin:18px 0 38px; color:#7b8181; }
.emi-diagram svg { display:block; width:100%; height:auto; }
.emi-diagram text { fill:currentColor; font-family:"Anek Bangla",sans-serif; font-size:15px; }
.emi-diagram line,.emi-diagram path,.emi-diagram circle { vector-effect:non-scaling-stroke; }
.calc-data-table { width:100%; max-width:760px; margin:22px 0 0; border-collapse:collapse; font-size:.96rem; }
.calc-data-table th,.calc-data-table td { padding:11px 12px; border-bottom:1px solid #e3e7e4; text-align:left; vertical-align:top; }
.calc-data-table th { background:#f6f7f7; color:#35403a; font-weight:600; }
.calc-data-table td { color:#536058; }
@media (max-width:560px) { .emi-diagram { margin-bottom:30px; overflow:hidden; } .emi-diagram svg { min-width:620px; } .calc-data-table { font-size:.9rem; } .calc-data-table th,.calc-data-table td { padding:9px 8px; } }


/* HISHEB v1.7.69 - Inflation calculator layout guard */
.calc-layout > .calc-information { min-width: 0; }
.calc-layout > .calculator-panel { min-width: 0; width: 100%; box-sizing: border-box; }

/* HISHEB v1.7.68 - Inflation calculator editorial content normalization */
.calc-information .calc-content-section { max-width:760px; margin:0; padding:0; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
.calc-information .calc-content-section + .calc-content-section { margin-top:42px; }
.calc-information .calc-content-section p { max-width:760px; margin:0; padding:0; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; color:#4e5b53; font-size:1.02rem; line-height:1.8; }
.calc-information .calc-content-section p + p { margin-top:14px; }
.calc-information .calc-content-section ul { max-width:760px; margin:12px 0 0; padding-left:22px; color:#4e5b53; font-size:1.02rem; line-height:1.8; }
.calc-information .calc-content-section li + li { margin-top:8px; }
.inflation-flow { margin:24px 0 4px; }
.inflation-flow svg { display:block; width:100%; height:auto; }
@media (max-width:560px) { .calc-information .calc-content-section + .calc-content-section { margin-top:34px; } .inflation-flow { margin-top:20px; } }

/* Calorie calculator editorial content */
.calorie-diagram{margin:28px 0 34px;padding:8px 0;overflow:hidden}.calorie-diagram svg{display:block;width:100%;height:auto}.calc-editorial-intro{margin-bottom:8px}.calc-information .formula-box{margin:22px 0;padding:18px 20px;border:1px solid #d9e1e1;border-radius:14px;background:#f7faf9}.calc-information .formula-box p{margin:0 0 9px}.calc-information .formula-box p:last-child{margin-bottom:0}.calc-information .calc-data-table{width:100%;border-collapse:collapse;margin:20px 0 28px;font-size:15px}.calc-information .calc-data-table th,.calc-information .calc-data-table td{padding:11px 12px;border-bottom:1px solid #e1e7e7;text-align:left;vertical-align:top}.calc-information .calc-data-table th{font-weight:700;background:#f7faf9}.calc-information .calc-data-table tr:last-child td{border-bottom:0}@media (max-width:700px){.calorie-diagram{margin:22px -4px 28px}.calc-information .calc-data-table{font-size:14px}.calc-information .calc-data-table th,.calc-information .calc-data-table td{padding:9px 8px}}

/* v1.7.71 BMI editorial layout */

.bmr-diagram{width:100%;max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.bmr-diagram svg{display:block;width:100%;height:auto}.bmr-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.bmr-diagram rect,.bmr-diagram path{vector-effect:non-scaling-stroke}@media(max-width:700px){.bmr-diagram{margin:22px -4px 30px}.bmr-diagram svg{min-width:620px}}
.bmi-diagram{width:100%;max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.bmi-diagram svg{display:block;width:100%;height:auto}.bmi-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.bmi-diagram rect,.bmi-diagram path{vector-effect:non-scaling-stroke}.calc-editorial-intro,.calc-editorial-section{margin:0 0 30px}.calc-editorial-section h2,.calc-editorial-intro h2{margin-top:0}.calc-information .formula-box{margin:20px 0;padding:18px 20px;border:1px solid #d9e1e1;border-radius:14px;background:#f7faf9}.calc-information .formula-box p{margin:0 0 9px}.calc-information .formula-box p:last-child{margin-bottom:0}.calc-information .calc-data-table{width:100%;border-collapse:collapse;margin:20px 0 22px;font-size:15px}.calc-information .calc-data-table th,.calc-information .calc-data-table td{padding:11px 12px;border-bottom:1px solid #e1e7e7;text-align:left;vertical-align:top}.calc-information .calc-data-table th{font-weight:700;background:#f7faf9}.calc-information .calc-data-table tr:last-child td{border-bottom:0}.calc-editorial-list{margin:14px 0 0;padding-left:24px}.calc-editorial-list li{margin:0 0 9px;padding-left:4px}.calc-editorial-list li:last-child{margin-bottom:0}@media(max-width:700px){.bmi-diagram{margin:22px -4px 30px}.bmi-diagram svg{min-width:620px}.calc-information .calc-data-table{font-size:14px}.calc-information .calc-data-table th,.calc-information .calc-data-table td{padding:9px 8px}.calc-editorial-intro,.calc-editorial-section{margin-bottom:26px}}

.child-bmi-diagram{width:100%;max-width:760px;margin:26px 0 38px;color:#737c79;overflow:hidden}.child-bmi-diagram svg{display:block;width:100%;height:auto}.child-bmi-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.child-bmi-diagram rect,.child-bmi-diagram path{vector-effect:non-scaling-stroke}@media(max-width:700px){.child-bmi-diagram{margin:22px -4px 30px}.child-bmi-diagram svg{min-width:620px}}

/* v1.7.84 - General / Scientific calculator */
.general-calculator-page .calc-layout { align-items:start; }
.general-calculator-panel { overflow:hidden; }
.calculator-panel-title-row { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.calculator-panel-title-row h2 { margin:0; }
.calculator-science-link { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:0 13px; border:1px solid #cfe2d6; border-radius:999px; background:#f3faf5; color:#176b3a; text-decoration:none; font-weight:600; font-size:.9rem; white-space:nowrap; }
.calculator-science-link:hover { background:#eaf6ee; }
.utility-hero-graphic { margin:6px 0 30px; padding:6px 0; max-width:620px; }
.utility-hero-graphic svg { width:100%; height:auto; fill:none; stroke:#6c7770; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; opacity:.82; }
.calculator-mode-note { display:flex; gap:14px; align-items:center; margin:26px 0 8px; padding:16px 18px; border:1px solid #dfe9e2; border-radius:15px; background:#f7fbf8; }
.calculator-mode-note-icon { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:#fff; border:1px solid #dce7df; }
.calculator-mode-note-icon svg { width:22px; height:22px; fill:none; stroke:#68746d; stroke-width:1.8; stroke-linecap:round; }
.calculator-mode-note strong { display:block; margin-bottom:2px; }
.calculator-mode-note p { margin:0; color:#68756d; font-size:.92rem; }
.hisheb-calculator { width:100%; }
.calc-display-wrap { min-height:104px; padding:15px 17px 12px; margin-bottom:14px; border:1px solid #dce7df; border-radius:15px; background:#f7faf8; box-sizing:border-box; display:flex; flex-direction:column; justify-content:flex-end; text-align:right; overflow:hidden; }
.calc-expression { min-height:22px; color:#7a857e; font-size:.9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.calc-display { display:block; margin-top:4px; color:#1e2b24; font-size:clamp(2rem,4vw,2.65rem); line-height:1.1; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.calc-keypad { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.calc-key { min-height:54px; border:1px solid #dfe7e1; border-radius:13px; background:#fff; color:#26342c; font:600 1.05rem/1 Anek Bangla,sans-serif; cursor:pointer; box-shadow:0 2px 5px rgba(20,40,25,.035); transition:transform .12s ease,background .12s ease,border-color .12s ease; }
.calc-key:hover { background:#f6faf7; border-color:#cbd9d0; }
.calc-key:active { transform:translateY(1px); }
.calc-key-muted { background:#f3f7f4; color:#59675f; }
.calc-key-function { background:#f2f6f3; color:#3f5147; font-size:.96rem; }
.calc-key-operator { background:#edf7f0; color:#176b3a; border-color:#d1e5d8; }
.calc-key-equals { background:#176b3a; color:#fff; border-color:#176b3a; }
.calc-key-zero { grid-column:span 2; }
.calc-mode-row { display:flex; justify-content:flex-end; gap:6px; margin:-3px 0 12px; }
.calc-small-toggle { border:1px solid #d8e4dc; border-radius:999px; background:#fff; color:#657169; padding:5px 11px; font:600 .8rem/1 Anek Bangla,sans-serif; cursor:pointer; }
.calc-small-toggle.is-active { background:#edf7f0; color:#176b3a; border-color:#c8dfd0; }
.calc-history { margin-top:16px; border-top:1px solid #e5ece7; padding-top:10px; display:grid; gap:5px; }
.calc-history-item { display:flex; justify-content:space-between; gap:12px; border:0; background:transparent; padding:7px 3px; color:#66736a; font:500 .86rem Anek Bangla,sans-serif; text-align:left; cursor:pointer; }
.calc-history-item strong { color:#26342c; font-weight:600; }
.calc-error { min-height:22px; margin-top:8px; color:#a33f36; font-size:.88rem; line-height:1.5; }
.home-utility-calculator { position:relative; margin:0; overflow:hidden; background:#f3faf6; border-top:1px solid #dfeae3; border-bottom:1px solid #dfeae3; }
.home-utility-inner { width:min(100% - 40px,var(--container)); margin:0 auto; padding:72px 0; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,430px); gap:70px; align-items:center; position:relative; z-index:1; }
.home-utility-copy { position:relative; }
.home-utility-eyebrow { display:inline-flex; align-items:center; gap:8px; margin-bottom:15px; color:#176b3a; font-size:.9rem; font-weight:600; }
.home-utility-eyebrow-dot { width:8px; height:8px; border-radius:50%; background:#71917e; }
.home-utility-copy h2 { max-width:570px; margin:0 0 17px; color:#203028; font-size:clamp(2rem,4vw,3.25rem); line-height:1.12; letter-spacing:-.02em; }
.home-utility-copy p { max-width:570px; margin:0 0 12px; color:#56645c; font-size:1.05rem; line-height:1.8; }
.home-utility-science-link { display:inline-flex; align-items:center; gap:8px; margin-top:10px; color:#176b3a; text-decoration:none; font-weight:600; }
.home-utility-science-link:hover { text-decoration:underline; }
.home-utility-doodles { display:flex; gap:14px; margin-top:30px; color:#8a9890; font-size:1.4rem; transform:rotate(-3deg); }
.home-utility-doodles span:nth-child(2){transform:translateY(7px) rotate(8deg)} .home-utility-doodles span:nth-child(3){transform:translateY(-4px) rotate(-5deg)} .home-utility-doodles span:nth-child(4){transform:translateY(6px) rotate(7deg)}
.home-utility-glow { position:absolute; border-radius:50%; border:1px solid rgba(87,120,101,.11); pointer-events:none; }
.home-utility-glow-one { width:330px; height:330px; left:-150px; top:-90px; }
.home-utility-glow-two { width:440px; height:440px; right:-230px; bottom:-260px; }
.home-utility-widget { width:100%; max-width:430px; justify-self:end; }
.home-mini-calculator { padding:20px; border:1px solid #d9e5dd; border-radius:22px; background:rgba(255,255,255,.94); box-shadow:0 18px 45px rgba(35,62,45,.10); }
.home-mini-calculator .calc-display-wrap { min-height:92px; }
.home-mini-calculator .calc-key { min-height:58px; }
.home-utility-calculator + .site-footer { margin-top:0; }
@media(max-width:820px){ .home-utility-inner{grid-template-columns:1fr;gap:36px;padding:55px 0}.home-utility-widget{max-width:500px;justify-self:start}.general-calculator-panel{order:-1}.utility-hero-graphic{margin-top:0} }
@media(max-width:560px){ .home-utility-inner{width:min(100% - 24px,var(--container));padding:45px 0}.home-utility-copy h2{font-size:2rem}.home-utility-copy p{font-size:1rem;line-height:1.7}.home-mini-calculator{padding:14px;border-radius:18px}.home-mini-calculator .calc-key{min-height:52px}.calc-key{min-height:50px}.calculator-panel-title-row{align-items:flex-start}.calculator-science-link{min-height:33px;padding:0 10px}.calc-display-wrap{min-height:94px}.calc-keypad{gap:7px}.calc-mode-row{margin-bottom:10px} }
.calculator-panel-heading-main { display:flex; align-items:center; gap:11px; min-width:0; }
.calculator-panel-mark { width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center; border-radius:11px; background:#f2f7f4; border:1px solid #dce7df; }
.calculator-panel-mark svg { width:22px; height:22px; fill:none; stroke:#68756d; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }


/* HISHEB v1.7.85 - Calculator interface correction and homepage utility section */
.calculator-panel-title-row { align-items:center; }
.calculator-panel-heading-main > div { min-width:0; }
.calculator-panel-subtitle { display:block; margin-top:3px; color:#6a766f; font-size:.88rem; line-height:1.45; }
.calculator-mode-switch { display:inline-flex; align-items:center; gap:3px; padding:3px; border:1px solid #d9e5dd; border-radius:999px; background:#f4f8f5; flex:0 0 auto; }
.calculator-mode-option { display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:0 12px; border-radius:999px; color:#66736b; text-decoration:none; font:600 .84rem/1 "Anek Bangla",sans-serif; white-space:nowrap; }
.calculator-mode-option:hover { color:#176b3a; background:#edf6f0; }
.calculator-mode-option.is-active { color:#176b3a; background:#fff; box-shadow:0 1px 4px rgba(30,55,40,.08); }
.general-calculator-page .calculator-panel-heading { margin-bottom:22px; }
.general-calculator-page .calc-keypad { grid-template-columns:repeat(4,minmax(0,1fr)); }
.general-calculator-page .calc-key-function { background:#f3f7f4; color:#405047; }
.general-calculator-page .calc-key-function:hover { background:#edf5f0; }
.general-calculator-page .calc-mode-row { margin:0 0 13px; }
.general-calculator-page .calculator-panel { padding:28px; }
.home-utility-calculator { isolation:isolate; }
.home-utility-inner { box-sizing:border-box; }
.home-utility-copy { padding:4px 0; }
.home-utility-copy h2 { text-wrap:balance; }
.home-utility-widget { position:relative; }
.home-mini-calculator { width:100%; box-sizing:border-box; }
.home-mini-calculator .calc-keypad { gap:8px; }
.home-mini-calculator .calc-key { min-height:56px; }
.home-mini-calculator .calc-display { font-size:2.35rem; }
.home-utility-doodles span { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid #d5e1d9; border-radius:10px; background:rgba(255,255,255,.65); font-size:1.15rem; }
@media (max-width:900px) {
  .home-utility-inner { grid-template-columns:minmax(0,1fr) minmax(320px,390px); gap:38px; }
}
@media (max-width:820px) {
  .home-utility-inner { grid-template-columns:1fr; gap:32px; }
  .home-utility-widget { max-width:460px; justify-self:start; }
  .home-utility-copy { order:0; }
}
@media (max-width:560px) {
  .calculator-panel-title-row { align-items:flex-start; flex-direction:column; }
  .calculator-mode-switch { align-self:flex-start; }
  .general-calculator-page .calculator-panel { padding:20px; }
  .calculator-panel-subtitle { font-size:.84rem; }
  .home-utility-inner { width:min(100% - 28px,var(--container)); padding:48px 0; }
  .home-utility-widget { max-width:none; }
  .home-mini-calculator { padding:15px; }
}

/* HISHEB v1.7.89 - Homepage calculator sizing and inline mode switch */
.calc-keypad[hidden], .calc-mode-row[hidden] { display:none !important; }
.home-mini-mode-switch { display:flex; align-items:center; justify-content:flex-end; gap:3px; margin:0 0 12px; padding:3px; border:1px solid #d9e5dd; border-radius:999px; background:#f4f8f5; }
.home-mini-mode-switch .calculator-mode-option { border:0; background:transparent; cursor:pointer; }
.home-mini-mode-switch .calculator-mode-option.is-active { color:#176b3a; background:#fff; box-shadow:0 1px 4px rgba(30,55,40,.08); }
.home-utility-inner { grid-template-columns:minmax(0,1fr) minmax(320px,360px); gap:60px; }
.home-utility-widget { max-width:360px; }
.home-utility-copy h2 { font-size:clamp(2.7rem,5vw,3.8rem); line-height:1.08; }
.home-utility-copy h2 span { display:block; color:#176b3a; }
.home-mini-calculator { padding:14px; border-radius:20px; }
.home-mini-calculator .calc-display-wrap { min-height:70px; margin-bottom:9px; padding:10px 13px 9px; border-radius:13px; }
.home-mini-calculator .calc-display { font-size:2rem; }
.home-mini-calculator .calc-expression { min-height:18px; font-size:.78rem; }
.home-mini-calculator .home-mini-mode-switch .calculator-mode-option { min-height:30px; padding:0 11px; font-size:.78rem; }
.home-mini-calculator .calc-mode-row { margin:-1px 0 8px; }
.home-mini-calculator .calc-small-toggle { padding:4px 10px; font-size:.74rem; }
.home-mini-calculator .calc-keypad { gap:5px; }
.home-mini-calculator .calc-key { min-height:42px; border-radius:11px; font-size:.94rem; }
.home-mini-calculator .calc-key-function { font-size:.86rem; }
.home-mini-calculator .calc-history { margin-top:10px; padding-top:7px; }
@media (max-width:900px) {
  .home-utility-inner { grid-template-columns:minmax(0,1fr) minmax(300px,350px); gap:34px; }
  .home-utility-widget { max-width:350px; }
}
@media (max-width:820px) {
  .home-utility-inner { grid-template-columns:1fr; gap:30px; }
  .home-utility-widget { max-width:360px; justify-self:start; }
}
@media (max-width:560px) {
  .home-utility-copy h2 { font-size:2.45rem; }
  .home-utility-inner { padding:42px 0; }
  .home-utility-widget { max-width:340px; }
  .home-mini-calculator { padding:12px; }
  .home-mini-calculator .calc-key { min-height:40px; }
}


/* HISHEB v1.7.89 - Homepage calculator interaction and visual refinement */
.home-mini-calculator {
  padding:16px;
  border:1px solid #d4e2d9;
  border-radius:22px;
  background:rgba(255,255,255,.97);
  box-shadow:0 20px 48px rgba(35,62,45,.12), 0 2px 8px rgba(35,62,45,.04);
}
.home-mini-calculator .home-mini-mode-switch {
  width:100%;
  box-sizing:border-box;
  justify-content:stretch;
  margin:0 0 11px;
  padding:3px;
  background:#eef5f1;
  border-color:#d5e3da;
}
.home-mini-calculator .home-mini-mode-switch .calculator-mode-option {
  flex:1 1 0;
  min-height:31px;
  padding:0 10px;
  color:#68756e;
  font-size:.79rem;
}
.home-mini-calculator .home-mini-mode-switch .calculator-mode-option.is-active {
  color:#176b3a;
  background:#fff;
  box-shadow:0 2px 7px rgba(25,60,40,.09);
}
.home-mini-calculator .calc-display-wrap {
  min-height:78px;
  margin-bottom:8px;
  padding:9px 13px 8px;
  border-radius:14px;
  background:#f7faf8;
  border-color:#d7e4dc;
  box-shadow:inset 0 1px 2px rgba(30,55,40,.025);
}
.home-mini-calculator .calc-display {
  font-size:2.05rem;
  font-weight:600;
  letter-spacing:-.015em;
}
.home-mini-calculator .calc-expression {
  min-height:17px;
  font-size:.76rem;
}
.home-mini-calculator .calc-mode-row {
  margin:-1px 0 8px;
}
.home-mini-calculator .calc-small-toggle {
  min-width:48px;
  padding:4px 9px;
  font-size:.73rem;
}
.home-mini-calculator .calc-keypad {
  gap:6px;
  padding:2px 0;
}
.home-mini-calculator .calc-key {
  min-height:43px;
  border-radius:12px;
  font-size:.94rem;
  box-shadow:0 2px 5px rgba(20,40,25,.035);
}
.home-mini-calculator .calc-key-function {
  font-size:.82rem;
}
.home-mini-calculator .calc-key-operator {
  background:#edf7f1;
}
.home-mini-calculator .calc-key-equals {
  box-shadow:0 4px 10px rgba(23,107,58,.14);
}
.home-mini-calculator .calc-history {
  margin-top:9px;
  padding-top:7px;
}
.home-mini-calculator .calc-error {
  min-height:0;
  margin-top:5px;
  font-size:.78rem;
}
@media (max-width:900px) {
  .home-utility-inner { grid-template-columns:minmax(0,1fr) minmax(290px,340px); gap:32px; }
  .home-utility-widget { max-width:340px; }
}
@media (max-width:820px) {
  .home-utility-inner { grid-template-columns:1fr; gap:30px; }
  .home-utility-widget { max-width:360px; }
}
@media (max-width:560px) {
  .home-mini-calculator { padding:13px; border-radius:18px; }
  .home-mini-calculator .calc-key { min-height:41px; }
}

/* v1.8.0 - Commission calculator editorial layout */
.calc-information .calc-editorial-intro,
.calc-information .calc-editorial-section {
    max-width: 760px;
    margin: 0 0 34px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.calc-information .calc-editorial-intro h2,
.calc-information .calc-editorial-section h2 {
    margin-top: 0;
}
.calc-information .calc-editorial-intro p,
.calc-information .calc-editorial-section p {
    margin: 0 0 14px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.calc-information .calc-editorial-intro p:last-child,
.calc-information .calc-editorial-section p:last-child {
    margin-bottom: 0;
}
.calc-information .calc-data-table {
    width: 100%;
    margin: 22px 0 0;
    border-collapse: collapse;
    font-size: 15px;
}
.calc-information .calc-data-table th,
.calc-information .calc-data-table td {
    padding: 11px 12px;
    border-bottom: 1px solid #e1e7e7;
    text-align: left;
    vertical-align: top;
}
.calc-information .calc-data-table th {
    font-weight: 700;
    background: #f7faf9;
}
.calc-information .calc-data-table tr:last-child td { border-bottom: 0; }
.calc-information .calc-source-note {
    margin: 8px 0 0;
}
@media (max-width:700px) {
    .calc-information .calc-data-table { font-size: 14px; }
    .calc-information .calc-data-table th,
    .calc-information .calc-data-table td { padding: 9px 8px; }
}

/* v1.8.0 - Discount calculator editorial layout */
.calc-information .calc-editorial-intro,
.calc-information .calc-editorial-section {
    max-width: 760px;
    margin: 0 0 34px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.calc-information .calc-editorial-intro h2,
.calc-information .calc-editorial-section h2 {
    margin-top: 0;
}
.calc-information .calc-editorial-intro p,
.calc-information .calc-editorial-section p {
    margin: 0 0 14px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.calc-information .calc-editorial-intro p:last-child,
.calc-information .calc-editorial-section p:last-child {
    margin-bottom: 0;
}
.calc-information .calc-data-table {
    width: 100%;
    margin: 22px 0 0;
    border-collapse: collapse;
    font-size: 15px;
}
.calc-information .calc-data-table th,
.calc-information .calc-data-table td {
    padding: 11px 12px;
    border-bottom: 1px solid #e1e7e7;
    text-align: left;
    vertical-align: top;
}
.calc-information .calc-data-table th {
    font-weight: 700;
    background: #f7faf9;
}
.calc-information .calc-data-table tr:last-child td { border-bottom: 0; }
.calc-information .calc-source-note {
    margin: 8px 0 0;
}
@media (max-width:700px) {
    .calc-information .calc-data-table { font-size: 14px; }
    .calc-information .calc-data-table th,
    .calc-information .calc-data-table td { padding: 9px 8px; }
}


/* v1.8.0 - Calculator editorial intro spacing */
.calc-information .calc-lead + .calc-editorial-intro {
    padding-top: 18px;
}
@media (max-width:700px) {
    .calc-information .calc-lead + .calc-editorial-intro {
        padding-top: 14px;
    }
}

/* v1.8.0 - Selling price calculator editorial redesign */
.calc-information .selling-price-diagram {
    width: 100%;
    max-width: 760px;
    margin: 24px 0 8px;
    overflow: hidden;
}
.calc-information .selling-price-diagram svg {
    display: block;
    width: 100%;
    height: auto;
}
.calc-information .calc-editorial-intro + .calc-editorial-section {
    margin-top: 4px;
}
.calc-information .calc-editorial-section + .calc-editorial-section {
    margin-top: 2px;
}
@media (max-width:700px) {
    .calc-information .selling-price-diagram {
        margin: 20px -4px 6px;
    }
    .calc-information .selling-price-diagram svg {
        min-width: 620px;
    }
}


/* v1.8.0 - Selling tax calculator editorial redesign */
.calc-information .tax-flow-diagram {
    width: 100%;
    max-width: 760px;
    margin: 24px 0 8px;
    overflow: hidden;
}
.calc-information .tax-flow-diagram svg {
    display: block;
    width: 100%;
    height: auto;
}
.calc-information .calc-editorial-intro + .calc-editorial-section {
    margin-top: 22px;
}
.calc-information .calc-editorial-section + .calc-editorial-section {
    margin-top: 22px;
}
.calc-information .calc-editorial-section .calc-data-table {
    margin-top: 20px;
}
@media (max-width:700px) {
    .calc-information .tax-flow-diagram {
        margin: 20px 0 6px;
        overflow-x: auto;
    }
    .calc-information .tax-flow-diagram svg {
        min-width: 680px;
    }
}


/* v1.8.6: fraction editorial diagram */
.fraction-diagram{max-width:520px;margin:24px 0 34px;color:#777f7d;overflow:hidden}.fraction-diagram svg{display:block;width:100%;height:auto}.fraction-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:22px}.fraction-diagram line{stroke:currentColor;stroke-width:2;vector-effect:non-scaling-stroke}
@media(max-width:560px){.fraction-diagram{margin:20px 0 28px}}


/* v1.8.6: Percentage calculator editorial diagram */
.percentage-diagram{max-width:760px;margin:28px 0 36px;padding:4px 0;color:#707777;overflow:hidden}.percentage-diagram svg{display:block;width:100%;height:auto}.percentage-diagram text{font-family:"Anek Bangla",sans-serif}.percentage-diagram-text{fill:currentColor;font-size:16px}.percentage-diagram-label{fill:#555d5d;font-size:15px;font-weight:600}@media(max-width:700px){.percentage-diagram{margin:24px -4px 30px}.percentage-diagram svg{min-width:620px}}

/* v1.8.8: calendar-based age explanation diagram */
.age-diagram{max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.age-diagram svg{display:block;width:100%;height:auto}.age-diagram line,.age-diagram circle,.age-diagram path{vector-effect:non-scaling-stroke;stroke:currentColor}.age-diagram circle{fill:#fff}.age-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.age-diagram path{fill:none;stroke-width:2}
@media(max-width:700px){.age-diagram{margin:22px -4px 30px}.age-diagram svg{min-width:620px}}


/* v1.8.10 - GPA calculator editorial redesign */
.gpa-scale-table-wrap {
    max-width: 760px;
    margin: 18px 0 34px;
    overflow-x: auto;
}
.gpa-scale-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 1rem;
}
.gpa-scale-table th,
.gpa-scale-table td {
    padding: 11px 13px;
    border-bottom: 1px solid #e1e7e2;
    text-align: left;
    vertical-align: middle;
}
.gpa-scale-table th {
    color: #334139;
    font-weight: 700;
    background: #f7faf8;
}
.gpa-scale-table td { color: #4e5b53; }
.gpa-scale-table tbody tr:last-child td { border-bottom: 0; }
.gpa-flow-diagram {
    max-width: 760px;
    margin: 26px 0 36px;
    overflow: hidden;
    color: #727b78;
}
.gpa-flow-diagram svg { display: block; width: 100%; height: auto; }
.gpa-flow-diagram text { font-family: "Anek Bangla", "Nirmala UI", sans-serif; }
.gpa-flow-diagram rect { fill: #fbfdfb; stroke: currentColor; }
@media (max-width: 700px) {
    .gpa-scale-table-wrap { margin: 16px 0 30px; }
    .gpa-scale-table { min-width: 520px; }
    .gpa-flow-diagram { margin: 22px -4px 30px; overflow-x: auto; }
    .gpa-flow-diagram svg { min-width: 700px; }
}

/* v1.8.11 - CGPA calculator editorial redesign */
.gpa-example-table{max-width:760px;margin:18px 0 14px;overflow-x:auto}.gpa-example-table .gpa-scale-table{min-width:620px}.gpa-table-note{margin:8px 0 30px;color:var(--color-text-soft,#68756c);font-size:.88rem;line-height:1.7}.gpa-flow-diagram{margin-top:28px;margin-bottom:38px}.gpa-flow-diagram line{vector-effect:non-scaling-stroke}.gpa-flow-diagram path{fill:none;stroke:currentColor;vector-effect:non-scaling-stroke}
@media(max-width:700px){.gpa-example-table{margin-left:-4px;margin-right:-4px}.gpa-flow-diagram{margin-top:22px;margin-bottom:32px}}


/* v1.8.13 - Watt calculator spacing and editorial audit */
.watt-editorial{padding-top:26px;padding-bottom:8px}
.watt-editorial h2{margin:34px 0 12px;line-height:1.45}
.watt-editorial h2:first-child{margin-top:0}
.watt-editorial p{margin:0 0 14px;line-height:1.85}
.watt-flow{margin:22px 0 28px;overflow-x:auto}
.watt-flow svg{display:block;width:100%;min-width:620px;height:auto}
.watt-formula-box{margin:18px 0 22px;padding:18px 20px;border:1px solid #d7e6df;border-radius:12px;background:#f4faf7;display:flex;flex-direction:column;gap:7px}
.watt-formula-box strong{font-size:1.25rem;color:#243b35}
.watt-formula-box span{color:#53635e;line-height:1.65}
.watt-formula-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px}
.watt-formula-list div{padding:15px 16px;border:1px solid #e0e7e4;border-radius:10px;background:#fff}
.watt-formula-list strong{display:block;font-size:1.08rem;margin-bottom:5px}
.watt-formula-list span{font-size:.92rem;color:#5c6a65}
.watt-table-wrap{overflow-x:auto;margin:18px 0 26px}
.watt-table{width:100%;border-collapse:collapse;font-size:.95rem}
.watt-table th,.watt-table td{border:1px solid #dfe7e3;padding:11px 12px;text-align:left;vertical-align:top}
.watt-table th{background:#f2f8f5;font-weight:600}
.watt-example{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 18px;margin:14px 0 18px;border-left:3px solid #6b7280;background:#f7f8f8;border-radius:8px}
.watt-example strong{font-size:1.05rem}.watt-example b{font-size:1.1rem}
@media (max-width:700px){.watt-formula-list{grid-template-columns:1fr}.watt-editorial{padding-top:22px}.watt-editorial h2{margin-top:30px}.watt-editorial h2:first-child{margin-top:0}.watt-table{min-width:620px}}


/* v1.8.24 - Watt-hour calculator SVG size refinement */
.watt-hour-editorial{padding-top:28px;padding-bottom:8px}
.watt-hour-editorial h2{margin:36px 0 13px;line-height:1.45}
.watt-hour-editorial h2:first-child{margin-top:0}
.watt-hour-editorial p{margin:0 0 16px;line-height:1.85}
.watt-hour-flow{margin:24px 0 36px;overflow:visible;color:#68736f}
.watt-hour-flow svg{display:block;width:min(88%,680px);max-width:680px;height:auto;min-width:0;margin:0 auto}
.watt-hour-formula-box{margin:20px 0 22px;padding:18px 20px;border:1px solid #d8e4df;border-radius:12px;background:#f7faf8}
.watt-hour-formula-box strong{display:block;font-size:1.3rem;color:#263a34;margin-bottom:6px}
.watt-hour-formula-box span{color:#56655f;line-height:1.7}
.watt-hour-formula-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}
.watt-hour-formula-list div{padding:15px 16px;border:1px solid #e0e7e4;border-radius:10px;background:#fff}
.watt-hour-formula-list strong{display:block;margin-bottom:5px;color:#34443e}
.watt-hour-formula-list span{color:#5d6a65;line-height:1.65}
.watt-hour-unit-table-wrap{overflow-x:auto;margin:20px 0 24px}
.watt-hour-unit-table{width:100%;border-collapse:collapse;font-size:.95rem}
.watt-hour-unit-table th,.watt-hour-unit-table td{border:1px solid #dfe7e3;padding:11px 12px;text-align:left;vertical-align:top}
.watt-hour-unit-table th{background:#f3f8f5;color:#34443e;font-weight:600}
.watt-hour-example{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:17px 18px;margin:18px 0 20px;border-left:3px solid #6b7280;background:#f7f8f8;border-radius:8px}
.watt-hour-example strong{font-size:1.08rem}.watt-hour-example b{font-size:1.12rem;color:#263a34}
@media(max-width:700px){.watt-hour-editorial{padding-top:23px}.watt-hour-editorial h2{margin-top:31px}.watt-hour-editorial h2:first-child{margin-top:0}.watt-hour-flow{margin:22px 0 31px}.watt-hour-flow svg{width:100%;max-width:none;margin:0}.watt-hour-formula-list{grid-template-columns:1fr}.watt-hour-unit-table{min-width:620px}}


/* v1.8.19 - Ampere calculator editorial redesign */
.ampere-editorial{padding-top:28px;padding-bottom:8px}
.ampere-editorial h2{margin:36px 0 13px;line-height:1.45}
.ampere-editorial h2:first-child{margin-top:0}
.ampere-editorial p{margin:0 0 16px;line-height:1.85}
.ampere-flow{margin:24px 0 34px;overflow:visible}
.ampere-flow svg{display:block;width:min(88%,680px);max-width:680px;height:auto;min-width:0;margin:0 auto}
.ampere-formula-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 25px}
.ampere-formula-list div{padding:17px 16px;border:1px solid #dfe7e3;border-radius:11px;background:#f8faf9}
.ampere-formula-list strong,.ampere-formula-list span,.ampere-formula-list small{display:block}
.ampere-formula-list strong{margin-bottom:7px;color:#34443e}
.ampere-formula-list span{font-size:1.15rem;font-weight:600;color:#263a34}
.ampere-formula-list small{margin-top:5px;color:#68736f}
.ampere-relation-table-wrap,.ampere-unit-table-wrap{overflow-x:auto;margin:20px 0 25px}
.ampere-relation-table,.ampere-unit-table{width:100%;border-collapse:collapse;font-size:.95rem}
.ampere-relation-table th,.ampere-relation-table td,.ampere-unit-table th,.ampere-unit-table td{border:1px solid #dfe7e3;padding:11px 12px;text-align:left;vertical-align:top}
.ampere-relation-table th,.ampere-unit-table th{background:#f3f8f5;color:#34443e;font-weight:600}
.ampere-example{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:17px 18px;margin:18px 0 20px;border-left:3px solid #6b7280;background:#f7f8f8;border-radius:8px}
.ampere-example strong{font-size:1.08rem}.ampere-example b{font-size:1.12rem;color:#263a34}
.ampere-formula-box{margin:20px 0 22px;padding:18px 20px;border:1px solid #d8e4df;border-radius:12px;background:#f7faf8}
.ampere-formula-box strong{display:block;font-size:1.3rem;color:#263a34;margin-bottom:5px}.ampere-formula-box span{color:#59655f}
@media(max-width:700px){.ampere-editorial{padding-top:23px}.ampere-editorial h2{margin-top:31px}.ampere-editorial h2:first-child{margin-top:0}.ampere-flow{margin:22px 0 30px}.ampere-flow svg{width:100%;max-width:none;margin:0}.ampere-formula-list{grid-template-columns:1fr}.ampere-relation-table,.ampere-unit-table{min-width:620px}}

/* v1.8.19 - Density calculator editorial redesign */
.density-editorial{padding-top:28px;padding-bottom:8px}
.density-editorial h2{margin:36px 0 13px;line-height:1.45}
.density-editorial h2:first-child{margin-top:0}
.density-editorial p{margin:0 0 16px;line-height:1.85}
.density-flow{margin:24px 0 34px;overflow-x:auto}
.density-flow svg{display:block;width:100%;height:auto;min-width:700px}
.density-formula-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 25px}
.density-formula-list div{padding:17px 16px;border:1px solid #dfe7e3;border-radius:11px;background:#f8faf9}
.density-formula-list strong,.density-formula-list span,.density-formula-list small{display:block}
.density-formula-list strong{margin-bottom:7px;color:#34443e}
.density-formula-list span{font-size:1.15rem;font-weight:600;color:#263a34}
.density-formula-list small{margin-top:5px;color:#68736f}
.density-formula-box{margin:20px 0 22px;padding:18px 20px;border:1px solid #d8e4df;border-radius:12px;background:#f7faf8}
.density-formula-box strong{display:block;font-size:1.05rem;color:#263a34;margin-bottom:5px}
.density-formula-box span{color:#59655f}
.density-unit-table-wrap{overflow-x:auto;margin:20px 0 25px}
.density-unit-table{width:100%;border-collapse:collapse;font-size:.95rem}
.density-unit-table th,.density-unit-table td{border:1px solid #dfe7e3;padding:11px 12px;text-align:left;vertical-align:top}
.density-unit-table th{background:#f3f8f5;color:#34443e;font-weight:600}
.density-example{padding:17px 18px;margin:18px 0 20px;border-left:3px solid #6b7280;background:#f7f8f8;border-radius:8px}
.density-example strong{display:block;margin-bottom:7px;color:#34443e}
.density-example p{margin:0 0 8px}
.density-example b{font-size:1.05rem;color:#263a34}
@media(max-width:700px){.density-editorial{padding-top:23px}.density-editorial h2{margin-top:31px}.density-editorial h2:first-child{margin-top:0}.density-flow{margin:22px -4px 30px}.density-formula-list{grid-template-columns:1fr}.density-unit-table{min-width:520px}}

/* v1.8.19 - Ohm's law calculator editorial redesign */
.ohm-flow{margin:28px 0 30px;padding:18px 18px 10px;border:1px solid #dfe8e4;border-radius:16px;background:#f7fbf9;overflow:hidden;color:#4a5552}
.ohm-flow-svg{display:block;width:100%;height:auto;min-height:210px}
.ohm-editorial{padding-top:4px}
.ohm-editorial h2{margin:32px 0 12px}
.ohm-editorial h2:first-child{margin-top:0}
.ohm-editorial p{margin:0 0 14px;line-height:1.8}
.ohm-formula-box{margin:22px 0 28px}
.ohm-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 28px}
.ohm-example{padding:16px;border:1px solid #dfe8e4;border-radius:12px;background:#fbfdfc}
.ohm-example strong,.ohm-example span,.ohm-example b{display:block}
.ohm-example strong{margin-bottom:7px}
.ohm-example span{font-size:.95rem;margin-bottom:9px}
.ohm-example b{line-height:1.6}
.ohm-unit-table-wrap{overflow-x:auto;margin:18px 0 28px}
.ohm-unit-table{width:100%;border-collapse:collapse;min-width:420px}
.ohm-unit-table th,.ohm-unit-table td{padding:10px 12px;border:1px solid #dfe8e4;text-align:left}
.ohm-unit-table th{font-weight:600;background:#f7fbf9}
@media (max-width:800px){.ohm-examples{grid-template-columns:1fr 1fr}.ohm-flow{margin-top:22px;padding:12px 10px 6px}}
@media (max-width:560px){.ohm-examples{grid-template-columns:1fr}.ohm-editorial h2{margin-top:28px}.ohm-flow-svg{min-height:150px}.ohm-editorial p{line-height:1.75}}


/* v1.8.19 - Velocity calculator editorial redesign */
.velocity-editorial{padding-top:28px;padding-bottom:8px}
.velocity-editorial h2{margin:36px 0 13px;line-height:1.45}
.velocity-editorial h2:first-child{margin-top:0}
.velocity-editorial p{margin:0 0 16px;line-height:1.85}
.velocity-formula-box{margin:20px 0 24px;padding:18px 20px;border:1px solid #d8e4df;border-radius:12px;background:#f7faf8}
.velocity-formula-box strong{display:block;font-size:1.3rem;color:#263a34;margin-bottom:6px}
.velocity-formula-box span{color:#59655f;line-height:1.7}
.velocity-formula-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 27px}
.velocity-formula-list div{padding:16px;border:1px solid #dfe7e4;border-radius:11px;background:#f8faf9}
.velocity-formula-list strong,.velocity-formula-list span,.velocity-formula-list small{display:block}
.velocity-formula-list strong{margin-bottom:7px;color:#34443e}
.velocity-formula-list span{font-size:1.12rem;font-weight:600;color:#263a34}
.velocity-formula-list small{margin-top:5px;color:#68736f;line-height:1.55}
.velocity-graph{margin:24px 0 20px;overflow-x:auto}
.velocity-graph svg{display:block;width:100%;height:auto;min-width:620px}
.velocity-example{padding:17px 18px;margin:18px 0 24px;border-left:3px solid #6b7280;background:#f7f8f8;border-radius:8px}
.velocity-example strong{display:block;margin-bottom:8px;color:#34443e}
.velocity-example p{margin:0 0 8px}
.velocity-example b{font-size:1.06rem;color:#263a34}
.velocity-compare-table-wrap,.velocity-unit-table-wrap{overflow-x:auto;margin:20px 0 27px}
.velocity-compare-table,.velocity-unit-table{width:100%;border-collapse:collapse;font-size:.95rem}
.velocity-compare-table th,.velocity-compare-table td,.velocity-unit-table th,.velocity-unit-table td{border:1px solid #dfe7e4;padding:11px 12px;text-align:left;vertical-align:top}
.velocity-compare-table th,.velocity-unit-table th{background:#f3f8f5;color:#34443e;font-weight:600}
.velocity-check-list{margin:10px 0 22px;padding-left:23px}
.velocity-check-list li{margin:0 0 9px;line-height:1.75}
@media(max-width:700px){.velocity-editorial{padding-top:23px}.velocity-editorial h2{margin-top:31px}.velocity-editorial h2:first-child{margin-top:0}.velocity-formula-list{grid-template-columns:1fr}.velocity-graph{margin:22px -4px 20px}.velocity-compare-table,.velocity-unit-table{min-width:620px}}

/* v1.8.24 - Voltage calculator editorial redesign */
.voltage-editorial{padding-top:28px;padding-bottom:8px}
.voltage-editorial h2{margin:36px 0 13px;line-height:1.45}
.voltage-editorial h2:first-child{margin-top:0}
.voltage-editorial p{margin:0 0 16px;line-height:1.85}
.voltage-editorial ul{margin:0 0 22px;padding-left:22px}
.voltage-editorial li{margin:0 0 9px;line-height:1.75}
.voltage-formula-box{margin:20px 0 20px;padding:18px 20px;border:1px solid #d8e4df;border-radius:12px;background:#f7faf8}
.voltage-formula-box strong{display:block;font-size:1.35rem;color:#263a34;margin-bottom:6px}
.voltage-formula-box span{color:#56655f;line-height:1.7}
.voltage-formula-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 24px}
.voltage-formula-list div{padding:15px 16px;border:1px solid #e0e7e4;border-radius:10px;background:#fff}
.voltage-formula-list strong{display:block;margin-bottom:5px;color:#34443e}
.voltage-formula-list span{color:#5d6a65;line-height:1.65}
.voltage-relation-table-wrap{overflow-x:auto;margin:18px 0 24px}
.voltage-relation-table{width:100%;border-collapse:collapse;min-width:620px}
.voltage-relation-table th,.voltage-relation-table td{padding:11px 12px;border:1px solid #dfe7e3;text-align:left;line-height:1.6}
.voltage-relation-table th{background:#f4f8f6;font-weight:600;color:#34443e}
.voltage-relation-table td{background:#fff}
.voltage-example{margin:16px 0;padding:15px 17px;border-left:3px solid #176b4d;background:#f7faf8;border-radius:0 10px 10px 0}
.voltage-example p{margin:0 0 7px}
.voltage-example p:last-child{margin-bottom:0}
.voltage-graph{margin:22px 0 27px}
.voltage-check-list{padding-left:24px}
@media(max-width:700px){.voltage-editorial{padding-top:23px}.voltage-editorial h2{margin-top:31px}.voltage-editorial h2:first-child{margin-top:0}.voltage-formula-list{grid-template-columns:1fr}.voltage-relation-table{min-width:620px}.voltage-graph{margin-left:-4px;margin-right:-4px}}

/* v1.8.24 - Voltage calculator layout guard */
@media (min-width:701px) and (max-width:820px){.voltage-calculator-page .calc-layout{grid-template-columns:minmax(0,1fr) minmax(300px,320px);gap:18px;align-items:start}.voltage-calculator-page .calculator-panel{position:sticky;top:86px;padding:22px}.voltage-calculator-page .calc-information h1{font-size:clamp(1.9rem,4vw,2.35rem)}.voltage-calculator-page .calc-lead{font-size:1.02rem;line-height:1.72}.voltage-calculator-page .calc-row{grid-template-columns:minmax(0,1fr) 70px;gap:7px}}

/* P-value calculator editorial redesign - v1.8.28 */
.pvalue-editorial{max-width:760px;padding-top:18px}
.pvalue-editorial h2{margin:28px 0 14px}
.pvalue-editorial h2:first-child{margin-top:0}
.pvalue-editorial p{margin:0 0 15px}
.pvalue-formula-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 24px}
.pvalue-formula-box{padding:17px;border:1px solid #e1e7e2;border-radius:14px;background:#f7fbf8}
.pvalue-formula-box strong,.pvalue-formula-box span,.pvalue-formula-box small{display:block}
.pvalue-formula-box strong{margin-bottom:7px;color:var(--color-text)}
.pvalue-formula-box span{font-weight:600;font-size:1.02rem;color:#176b4d;line-height:1.55}
.pvalue-formula-box small{margin-top:6px;color:#68756d}
.pvalue-test-table-wrap{overflow-x:auto;margin:20px 0 24px}
.pvalue-test-table{width:100%;border-collapse:collapse;min-width:620px}
.pvalue-test-table th,.pvalue-test-table td{padding:12px 13px;border:1px solid #e1e7e2;text-align:left;vertical-align:top}
.pvalue-test-table th{background:#f7fbf8;font-weight:600}
.pvalue-test-table td:nth-child(2){font-weight:600;color:#176b4d}
.pvalue-step-list{margin:8px 0 22px;padding-left:1.35rem}
.pvalue-step-list li{margin:0 0 9px;padding-left:4px}
.pvalue-example{padding:17px 18px;margin:18px 0 24px;border-left:3px solid #176b4d;background:#f7fbf8;border-radius:0 12px 12px 0}
.pvalue-example p:last-child{margin-bottom:0}
.pvalue-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 22px}
.pvalue-decision-grid>div{padding:17px;border:1px solid #e1e7e2;border-radius:14px;background:#f7fbf8}
.pvalue-decision-grid strong,.pvalue-decision-grid span{display:block}
.pvalue-decision-grid strong{margin-bottom:6px;color:var(--color-text)}
.pvalue-decision-grid span{color:#56645c;line-height:1.6}
.pvalue-check-list{margin:8px 0 22px;padding-left:1.25rem}
.pvalue-check-list li{margin:0 0 8px;padding-left:4px}
.pvalue-editorial .pvalue-graph{margin:20px 0 18px}
@media(max-width:700px){
  .pvalue-editorial{padding-top:16px}
  .pvalue-editorial h2{margin-top:25px}
  .pvalue-formula-grid,.pvalue-decision-grid{grid-template-columns:1fr}
  .pvalue-test-table{min-width:560px}
}

/* Median calculator editorial refinements - v1.8.27 */
.median-editorial { max-width:760px; padding-top:22px; }
.median-editorial h2 { margin:28px 0 14px; }
.median-editorial h2:first-child { margin-top:0; }
.median-editorial p { margin:0 0 14px; }
.median-formula-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px 0 24px; }
.median-formula-box { border:1px solid #dbe4e0; background:#f8fbfa; border-radius:12px; padding:18px 18px 15px; }
.median-formula-box strong { display:block; margin-bottom:8px; color:#26332e; }
.median-formula-box span { display:block; font-weight:700; font-size:1.08rem; color:#25332d; line-height:1.7; }
.median-formula-box small { display:block; margin-top:5px; color:#65716b; line-height:1.6; }
.median-flow { margin:22px 0 30px; overflow-x:auto; }
.median-flow svg { display:block; width:min(100%,720px); height:auto; margin:0 auto; }
.median-flow rect { fill:#f8faf9; stroke:#68756f; stroke-width:1.6; }
.median-flow line,.median-flow path { fill:none; stroke:#68756f; stroke-width:1.6; }
.median-flow text { font-family:'Anek Bangla',sans-serif; fill:#3e4944; }
.median-svg-title { font-size:16px; font-weight:700; }
.median-svg-text { font-size:13px; }
.median-example { margin:16px 0 24px; padding:13px 15px; border-left:2px solid #9aa7a1; background:#f7faf9; color:#4f5b55; line-height:1.75; }
.median-compare-table { width:100%; max-width:760px; margin:20px 0 24px; border-collapse:collapse; font-size:.96rem; }
.median-compare-table th,.median-compare-table td { padding:10px 11px; border-bottom:1px solid #e0e6e3; text-align:left; vertical-align:top; line-height:1.65; }
.median-compare-table th { background:#f7faf9; color:#34403a; font-weight:700; }
.median-compare-table tr:last-child td { border-bottom:0; }
.median-check-list { max-width:760px; margin:12px 0 24px; padding-left:23px; color:#4e5b53; line-height:1.8; }
.median-check-list li + li { margin-top:7px; }
@media (max-width:700px) {
  .median-editorial { padding-top:18px; }
  .median-editorial h2 { margin-top:25px; }
  .median-formula-grid { grid-template-columns:1fr; }
  .median-compare-table { display:block; overflow-x:auto; white-space:normal; font-size:.9rem; }
  .median-compare-table th,.median-compare-table td { min-width:145px; padding:9px 10px; }
  .median-flow { margin-left:-2px; margin-right:-2px; }
}

/* Mode calculator editorial refinements - v1.8.24 */
.mode-editorial-section { max-width:760px; }
.mode-editorial-section h2 { margin-bottom:16px; }
.mode-formula-box { display:flex; flex-direction:column; gap:4px; }
.mode-formula-box span { color:#59655f; line-height:1.7; }
.mode-step-list { display:grid; gap:9px; margin:20px 0 2px; max-width:760px; }
.mode-step-list > div { display:grid; grid-template-columns:30px minmax(0,1fr); gap:10px; align-items:start; padding:10px 12px; border-left:2px solid #c7cfcc; background:#f7faf9; color:#4e5b53; border-radius:0 9px 9px 0; line-height:1.7; }
.mode-step-list strong { color:#2f3935; }
.mode-compare-table { width:100%; max-width:760px; margin:20px 0 22px; border-collapse:collapse; font-size:.96rem; }
.mode-compare-table th,.mode-compare-table td { padding:11px 12px; border-bottom:1px solid #e1e7e5; text-align:left; vertical-align:top; line-height:1.65; }
.mode-compare-table th { background:#f7faf9; color:#34403a; font-weight:700; }
.mode-compare-table tr:last-child td { border-bottom:0; }
.mode-check-list { max-width:760px; margin:12px 0 0; padding-left:23px; color:#4e5b53; font-size:1.02rem; line-height:1.8; }
.mode-check-list li + li { margin-top:7px; }
@media (max-width:700px) {
  .mode-compare-table { font-size:.9rem; display:block; overflow-x:auto; white-space:normal; }
  .mode-compare-table th,.mode-compare-table td { min-width:150px; padding:9px 10px; }
}
/* v1.8.30 - Heart rate editorial redesign */
.hr-formula-box { margin: 22px 0 28px; padding: 18px 20px; border: 1px solid #d9e4df; border-radius: 14px; background: #f7faf8; }
.hr-formula-box strong { display: block; margin-bottom: 7px; color: #263a33; }
.hr-formula-box > div { margin: 7px 0; line-height: 1.75; }
.hr-formula-box small { display: block; margin-top: 9px; color: #66736e; line-height: 1.65; }
.hr-step-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 20px 0 30px; }
.hr-step-list > div { padding: 15px 16px; border: 1px solid #e0e7e3; border-radius: 12px; background: #fafcfb; }
.hr-step-list strong, .hr-step-list span { display: block; }
.hr-step-list strong { margin-bottom: 4px; color: #263a33; }
.hr-step-list span { color: #5f6c67; line-height: 1.65; }
.hr-example-box { margin: 20px 0 28px; padding: 17px 20px; border-left: 3px solid #b8c4bf; background: #f7f9f8; color: #3f4946; border-radius: 0 12px 12px 0; line-height: 1.85; }
.hr-example-box div + div { margin-top: 4px; }
.hr-check-list { margin: 16px 0 30px; padding-left: 23px; }
.hr-check-list li { margin: 0 0 10px; padding-left: 4px; line-height: 1.75; }
.hr-check-list li:last-child { margin-bottom: 0; }
@media (max-width: 700px) {
  .hr-step-list { grid-template-columns: 1fr; gap: 10px; margin-bottom: 26px; }
  .hr-formula-box { padding: 16px 17px; }
  .hr-example-box { padding: 15px 17px; }
}

/* ============================================================
   Calculator Design System - Centralised calculator-specific UI
   v1.8.36
   ------------------------------------------------------------
   Calculator pages no longer carry page-level <style> blocks.
   Unique calculator components live here so the global calculator
   design remains centrally maintainable.
   ============================================================ */

/* podarthobiggan/gotir-gor-calculator.php - centralised component styles */
.avg-speed-diagram{margin:24px 0 30px;padding:10px 0;overflow:hidden}.avg-speed-diagram svg{display:block;width:100%;height:auto}.segment-row{border:1px solid #e5e8e8;border-radius:12px;padding:14px;margin:0 0 12px;background:#fff}.segment-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.segment-row-title{font-weight:600;color:#4f5657}.remove-segment{border:0;background:transparent;color:#7f8687;font:inherit;cursor:pointer;padding:4px 6px}.remove-segment:hover{color:#4f5657}.segment-grid{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px}.segment-label{font-size:.9rem;color:#656c6d;margin-bottom:5px;display:block}.add-segment{width:100%;margin-top:2px}.calc-result-speed-secondary{font-size:1.05rem;color:#626869;margin-top:4px}.calc-result-highlight{margin-bottom:12px}.calc-result-highlight strong{font-size:1.8rem;line-height:1.2}.speed-note{margin-top:10px}
@media (max-width:640px){.segment-grid{grid-template-columns:minmax(0,1fr) 82px}.segment-row{padding:12px}.segment-row-head{margin-bottom:8px}}

/* nirman/balur-poriman-calculator.php - centralised component styles */
.sand-diagram{margin:24px 0 30px;overflow:hidden}.sand-diagram svg{display:block;width:100%;height:auto}.sand-field-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px}.sand-field-row+.sand-field-row{margin-top:10px}.sand-count-row{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:10px}.sand-unit-note{font-size:.88rem;color:#707777;margin-top:5px}.sand-result-highlight{margin-bottom:12px}.sand-result-highlight strong{font-size:1.75rem;line-height:1.2}.sand-result-secondary{font-size:1.05rem;color:#626869;margin-top:5px}.sand-warning{margin-top:10px}.sand-example{overflow-x:auto}.sand-example table{width:100%;border-collapse:collapse}.sand-example th,.sand-example td{padding:9px 10px;border-bottom:1px solid #e5e8e8;text-align:left}.sand-example th{font-weight:600;color:#4f5657}@media(max-width:640px){.sand-field-row{grid-template-columns:minmax(0,1fr) 96px}.sand-count-row{grid-template-columns:minmax(0,1fr) 66px}}

/* aykor/byaktigoto-aykor-calculator.php - centralised component styles */
.tax-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.tax-grid .calc-field{min-width:0}.tax-section{margin-top:14px;padding-top:14px;border-top:1px solid #e2e9e4}.tax-section h3{margin:0 0 9px;font-size:1rem}.tax-note{margin:-2px 0 13px;color:#68756d;font-size:.88rem;line-height:1.55}.tax-table{width:100%;border-collapse:collapse;margin:14px 0 6px;font-size:.94rem}.tax-table th,.tax-table td{text-align:left;padding:8px 9px;border-bottom:1px solid #dfe7e2}.tax-table th{background:#f4f8f5;font-weight:600}.tax-summary{margin-top:15px;padding:13px 14px;border:1px solid #dfe7e2;border-radius:12px;background:#fbfdfb;color:#526057;font-size:.92rem;line-height:1.65}.tax-highlight{color:var(--color-primary-dark);font-weight:700}.tax-source{font-size:.9rem;color:#68756d}.tax-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.tax-result-grid .calc-result-item{min-width:0}.tax-breakdown{margin-top:14px;padding-top:12px;border-top:1px solid rgba(22,101,52,.12);font-size:.9rem;line-height:1.7;color:#526057}.tax-warning{margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff8e9;color:#6d5727;font-size:.88rem;line-height:1.55}
@media(max-width:600px){.tax-grid,.tax-result-grid{grid-template-columns:1fr}}

/* aykor/tax-rebate-calculator.php - centralised component styles */
.rebate-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.rebate-grid .calc-field{min-width:0}.rebate-section{margin-top:14px;padding-top:14px;border-top:1px solid #e2e9e4}.rebate-section h3{margin:0 0 8px;font-size:1rem}.rebate-note{margin:-1px 0 12px;color:#68756d;font-size:.88rem;line-height:1.55}.rebate-table{width:100%;border-collapse:collapse;margin:14px 0 6px;font-size:.94rem}.rebate-table th,.rebate-table td{text-align:left;padding:8px 9px;border-bottom:1px solid #dfe7e2}.rebate-table th{background:#f4f8f5;font-weight:600}.rebate-summary{margin-top:14px;padding:12px 13px;border:1px solid #dfe7e2;border-radius:12px;background:#fbfdfb;color:#526057;font-size:.9rem;line-height:1.65}.rebate-highlight{color:var(--color-primary-dark);font-weight:700}.rebate-warning{margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff8e9;color:#6d5727;font-size:.88rem;line-height:1.55}.rebate-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.rebate-result-grid .calc-result-item{min-width:0}.rebate-formula{margin-top:14px;padding-top:12px;border-top:1px solid rgba(22,101,52,.12);font-size:.9rem;line-height:1.75;color:#526057}.rebate-source{font-size:.9rem;color:#68756d}.rebate-flow{margin:24px 0 30px;overflow-x:auto}.rebate-flow svg{display:block;width:100%;max-width:760px;height:auto;margin:0 auto}.formula-box{margin:20px 0;padding:14px 16px;border:1px solid #dfe7e2;border-radius:10px;background:#f8faf9;line-height:1.8;color:#3f4744}.calc-information>h2{margin-top:34px;margin-bottom:12px}.calc-information>h2:first-of-type{margin-top:30px}.calc-information>p{margin:0 0 14px;line-height:1.85}.rebate-table{margin:20px 0 24px}.rebate-source{margin-top:26px}.rebate-flow+ .formula-box{margin-top:18px}

@media(max-width:600px){.rebate-grid,.rebate-result-grid{grid-template-columns:1fr}}

/* ortho/chokrobriddhi-sud-calculator.php - centralised component styles */
.compound-diagram{display:block;width:100%;max-width:760px;height:auto;margin:8px 0 36px;color:#6b7671}.compound-diagram text{font-family:"Anek Bangla","Nirmala UI","Segoe UI",Arial,sans-serif;fill:currentColor}.compound-table{width:100%;margin:18px 0 0;border-collapse:collapse;font-size:1rem}.compound-table th,.compound-table td{padding:11px 12px;border:1px solid #e1e7e2;text-align:left}.compound-table th{font-weight:600;background:#f5f8f6}.compound-table td:not(:first-child),.compound-table th:not(:first-child){text-align:right}.compound-source{max-width:760px;margin-top:18px;color:#68756d;font-size:.92rem;line-height:1.75}.compound-source a{color:#176b4d}.compound-note{max-width:760px;margin-top:18px;padding-top:16px;border-top:1px solid #e1e7e2;color:#68756d;font-size:.92rem;line-height:1.75}.compound-formula{margin-top:18px}.compound-formula .formula-line{font-size:1.2rem;font-weight:600;color:#176b4d;line-height:1.7}.compound-formula small{display:block;margin-top:6px;color:#68756d;line-height:1.7}@media(max-width:560px){.compound-diagram{margin-bottom:28px}.compound-table{font-size:.94rem}.compound-table th,.compound-table td{padding:9px 8px}.compound-source,.compound-note{font-size:.9rem}}

/* ortho/bkash-charge-calculator.php - centralised component styles */
.bkash-diagram{display:block;width:100%;max-width:760px;height:auto;margin:6px 0 38px;color:#6d7773}.bkash-diagram text{font-family:"Anek Bangla","Nirmala UI","Segoe UI",Arial,sans-serif;fill:currentColor}.calc-information-list{max-width:760px;margin:14px 0 0;padding-left:22px;color:#4e5b53;font-size:1.04rem;line-height:1.85}.calc-information-list li{margin:8px 0}.bkash-source{max-width:760px;margin:18px 0 0;color:#68756d;font-size:.92rem;line-height:1.75}.bkash-source a{color:#176b4d}@media(max-width:560px){.bkash-diagram{margin-bottom:28px}.calc-information-list{font-size:1rem;line-height:1.75}.unit-table{font-size:.94rem}.unit-table th,.unit-table td{padding:10px 8px}}

/* ortho/loan-calculator.php - centralised component styles */
.loan-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.loan-breakdown>div{padding:15px;border:1px solid #dfe7e2;border-radius:14px;background:#f7fbf8}.loan-breakdown strong,.loan-breakdown span{display:block}.loan-breakdown strong{font-size:1.1rem;color:#176b4d}.loan-breakdown span{margin-top:4px;color:#68756d;font-size:.9rem}.loan-chart{margin-top:20px;overflow:hidden;border:1px solid #dfe7e2;border-radius:16px;background:#fff}.loan-chart svg{display:block;width:100%;height:auto}.loan-chart text{font-family:inherit}.loan-chart-note{margin:10px 2px 0;color:#68756d;font-size:.9rem}.loan-callout{margin-top:18px;padding:16px 18px;border-left:4px solid #8a9790;background:#f7faf8;border-radius:0 12px 12px 0}.loan-callout p{margin:0}.loan-example-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:.94rem}.loan-example-table th,.loan-example-table td{padding:10px 12px;border-bottom:1px solid #e1e7e2;text-align:left}.loan-example-table th{font-weight:600;background:#f7faf8}.loan-source a{color:inherit}.loan-disclaimer{margin-top:18px;color:#68756d;font-size:.92rem}@media(max-width:720px){.loan-breakdown{grid-template-columns:1fr}.loan-example-table{font-size:.88rem}.loan-example-table th,.loan-example-table td{padding:9px 8px}}

/* ortho/nagad-charge-calculator.php - centralised component styles */
.nagad-diagram{display:block;width:100%;max-width:760px;height:auto;margin:8px 0 38px;color:#6d7773}.nagad-diagram text{font-family:"Anek Bangla","Nirmala UI","Segoe UI",Arial,sans-serif;fill:currentColor}.calc-information-list{max-width:760px;margin:14px 0 0;padding-left:22px;color:#4e5b53;font-size:1.04rem;line-height:1.85}.calc-information-list li{margin:8px 0}.nagad-source{max-width:760px;margin:18px 0 0;color:#68756d;font-size:.92rem;line-height:1.75}.nagad-source a{color:#176b4d}.nagad-note{max-width:760px;margin:18px 0 0;padding:14px 16px;border:1px solid #dfe8e2;border-radius:12px;background:#f8fbf9;color:#56645d;font-size:.94rem;line-height:1.75}.nagad-note strong{color:#176b4d}.nagad-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.nagad-result-grid>div{padding:13px 14px;border:1px solid #e1e7e2;border-radius:12px;background:#f8fbf9}.nagad-result-grid strong,.nagad-result-grid span{display:block}.nagad-result-grid strong{font-size:1.08rem;color:#176b4d}.nagad-result-grid span{margin-top:3px;color:#68756d;font-size:.88rem}@media(max-width:560px){.nagad-diagram{margin-bottom:28px}.calc-information-list{font-size:1rem;line-height:1.75}.unit-table{font-size:.94rem}.unit-table th,.unit-table td{padding:10px 8px}.nagad-result-grid{grid-template-columns:1fr}}

/* ortho/credit-card-sud-calculator.php - centralised component styles */
.cc-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.cc-breakdown>div{padding:15px;border:1px solid #e1e7e2;border-radius:14px;background:#f7fbf8}.cc-breakdown strong,.cc-breakdown span{display:block}.cc-breakdown strong{font-size:1.12rem;color:#176b4d}.cc-breakdown span{margin-top:4px;color:#68756d;font-size:.9rem}.cc-chart{margin-top:18px;overflow:hidden;border:1px solid #e1e7e2;border-radius:14px;background:#fff}.cc-chart svg{display:block;width:100%;height:auto}.cc-chart text{font-family:inherit}.cc-chart-note{margin:10px 2px 0;color:#68756d;font-size:.9rem}@media(max-width:620px){.cc-breakdown{grid-template-columns:1fr}}

/* ortho/mudrasfiti-calculator.php - centralised component styles */
.inflation-flow{max-width:760px;margin:26px 0 4px;overflow:hidden}.inflation-flow svg{display:block;width:100%;height:auto}.inflation-flow text{font-family:inherit}.inflation-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;padding:5px;background:#f1f7f3;border:1px solid #e0e9e3;border-radius:14px}.inflation-mode button{border:0;background:transparent;border-radius:10px;padding:10px 9px;font:inherit;font-weight:600;color:#526158;cursor:pointer}.inflation-mode button.active{background:#fff;color:#176b4d;box-shadow:0 1px 5px rgba(31,57,45,.08)}.inflation-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.inflation-breakdown>div{padding:15px;border:1px solid #e1e7e2;border-radius:14px;background:#f7fbf8}.inflation-breakdown strong,.inflation-breakdown span{display:block}.inflation-breakdown strong{font-size:1.12rem;color:#176b4d}.inflation-breakdown span{margin-top:4px;color:#68756d;font-size:.9rem}.inflation-chart{margin-top:18px;overflow:hidden;border:1px solid #e1e7e2;border-radius:14px;background:#fff}.inflation-chart svg{display:block;width:100%;height:auto}.inflation-chart text{font-family:inherit}.inflation-chart-note{margin:10px 2px 0;color:#68756d;font-size:.9rem}.reference-rate{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#edf7f1;color:#176b4d;font-size:.86rem;font-weight:600;margin:0 0 12px}.inflation-source{font-size:.9rem;color:#68756d}.inflation-source strong{color:#4b5a52}@media(max-width:620px){.inflation-flow{margin-top:22px}.inflation-flow svg{min-width:680px}.inflation-breakdown{grid-template-columns:1fr}.inflation-mode button{font-size:.92rem}}

/* ortho/biddut-bill-calculator/index.php - centralised component styles */
.biddut-diagram{display:block;width:100%;max-width:760px;height:auto;margin:8px 0 36px;color:#747b79}
.biddut-diagram text{font-family:"Anek Bangla","Nirmala UI","Segoe UI",Arial,sans-serif;fill:currentColor}
.biddut-note{max-width:760px;margin:18px 0 0;padding:14px 16px;border:1px solid #dfe7e2;border-radius:12px;background:#f8fbf9;color:#56635c;font-size:.95rem;line-height:1.75}
.biddut-note strong{color:#3f5147}
.biddut-source{max-width:760px;margin:25px 0 0;padding:16px 0;border-top:1px solid #e2e5e5;border-bottom:1px solid #e2e5e5;color:#59625f;font-size:.92rem;line-height:1.75}
.biddut-source strong{display:block;color:#39463f}
.biddut-source span{display:block;margin-top:7px}
.biddut-source a{color:#176b4d}



@media(max-width:560px){.biddut-diagram{margin-bottom:28px}.biddut-note{font-size:.92rem}.unit-table{font-size:.94rem}.unit-table th,.unit-table td{padding:10px 8px}}

/* ortho/sanchayapatra-profit-calculator/index.php - centralised component styles */
.sanchay-diagram{display:block;width:100%;max-width:760px;height:auto;margin:8px 0 38px;color:#6d7773}.sanchay-diagram text{font-family:"Anek Bangla","Nirmala UI","Segoe UI",Arial,sans-serif;fill:currentColor}.sanchay-note{max-width:760px;margin:18px 0 0;padding:14px 16px;border:1px solid #dfe8e2;border-radius:12px;background:#f8fbf9;color:#56645d;font-size:.94rem;line-height:1.75}.sanchay-note strong{color:#176b4d}.source-note span{display:block;margin-top:7px}.source-note a{color:#176b4d}@media(max-width:560px){.sanchay-diagram{margin-bottom:28px}.unit-table{font-size:.94rem}.unit-table th,.unit-table td{padding:10px 8px}}

/* aykor/betoner-aykor-calculator/index.php - centralised component styles */
.salary-tax-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.salary-tax-grid .calc-field{min-width:0}.salary-tax-note{margin:-4px 0 16px;color:#68756d;font-size:.88rem;line-height:1.6}.salary-tax-summary{margin-top:18px;padding:14px 15px;border:1px solid #dfe7e2;border-radius:12px;background:#fbfdfb;color:#526057;font-size:.92rem;line-height:1.65}.salary-tax-table{width:100%;border-collapse:collapse;margin:14px 0 4px;font-size:.94rem}.salary-tax-table th,.salary-tax-table td{text-align:left;padding:8px 9px;border-bottom:1px solid #dfe7e2}.salary-tax-table th{font-weight:600;background:#f4f8f5}.salary-tax-source{margin-top:20px}.salary-tax-result-emphasis{color:var(--color-primary-dark);font-weight:700}.salary-tax-balance{margin-top:12px;padding-top:12px;border-top:1px solid rgba(22,101,52,.12)}
.salary-tax-diagram{margin:24px 0 28px;overflow:hidden}.salary-tax-diagram svg{display:block;width:100%;height:auto}.salary-tax-diagram text{font-family:Anek Bangla,sans-serif}
@media(max-width:560px){.salary-tax-grid{grid-template-columns:1fr}}

/* nirman/rod-hisab/index.php - centralised component styles */
.rod-entries{display:grid;gap:12px}.rod-entry{border:1px solid #d8e2dc;border-radius:12px;padding:14px;background:#fff}.rod-entry-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.rod-entry-title{font-weight:600}.rod-remove{border:0;background:transparent;color:#68746d;cursor:pointer;font:inherit;padding:2px 4px;transition:color .25s ease}.rod-remove:hover{color:#166b38}.rod-add{width:100%;margin-top:12px}.rod-unit-table{width:100%;border-collapse:collapse;margin:14px 0 4px}.rod-unit-table th,.rod-unit-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #dfe7e2}.rod-unit-table th{font-weight:600}.rod-note{font-size:.94rem;color:#66736c}

/* jomi/jomir-bhag/index.php - centralised component styles */
.share-ratio-example { margin-top:8px; color:#68756c; font-size:.92rem; }
        .share-result-list { display:grid; gap:12px; margin-top:18px; }
        .share-result-item { padding:14px 15px; border:1px solid #e1e7e2; border-radius:12px; background:#fbfdfb; }
        .share-result-item-top { display:flex; justify-content:space-between; gap:12px; align-items:baseline; }
        .share-result-item strong { color:#243129; font-size:1.04rem; }
        .share-result-item span { color:#66736b; font-size:.9rem; }
        .share-result-meta { margin-top:5px; color:#59665e; font-size:.92rem; }
        .share-bar { display:flex; width:100%; min-height:46px; margin-top:18px; overflow:hidden; border-radius:10px; background:#edf2ee; }
        .share-segment { min-width:2px; display:flex; align-items:center; justify-content:center; padding:5px; border-right:1px solid rgba(255,255,255,.9); color:#26352c; font-size:.84rem; font-weight:600; text-align:center; }
        .share-segment:last-child { border-right:0; }
        .share-segment:nth-child(odd) { background:#d8e9dc; }
        .share-segment:nth-child(even) { background:#b9d4c0; }
        .share-legend { display:grid; gap:7px; margin-top:14px; }
        .share-legend-row { display:flex; justify-content:space-between; gap:12px; color:#59665e; font-size:.92rem; }
        .share-legend-row strong { color:#27342c; }
        .share-method-note { margin-top:15px; color:#59665e; font-size:.94rem; line-height:1.7; }
        .share-warning { margin-top:22px; }
        @media (max-width:560px) {
            .share-result-item-top, .share-legend-row { flex-direction:column; gap:2px; }
            .share-bar { min-height:42px; }
            .share-segment { font-size:.78rem; }
        }


/* General / Scientific Calculator editorial graphics - v1.8.44 */
.scientific-calculator-graphic svg text { font-family: inherit; font-weight: 600; }
/* v1.8.48 - Date difference calculator editorial graphic. */
.date-diff-diagram{max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.date-diff-diagram svg{display:block;width:100%;height:auto}.date-diff-diagram line,.date-diff-diagram circle,.date-diff-diagram path{vector-effect:non-scaling-stroke;stroke:currentColor}.date-diff-diagram circle{fill:#fff}.date-diff-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.date-diff-diagram path{fill:none;stroke-width:2}
@media(max-width:700px){.date-diff-diagram{margin:22px -4px 30px}.date-diff-diagram svg{min-width:620px}}
/* v1.8.48 - AC electricity cost calculator editorial graphic. */
.ac-cost-diagram{max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.ac-cost-diagram svg{display:block;width:100%;height:auto}.ac-cost-diagram line,.ac-cost-diagram circle,.ac-cost-diagram path{vector-effect:non-scaling-stroke;stroke:currentColor}.ac-cost-diagram circle{fill:#fff}.ac-cost-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.ac-cost-diagram path{fill:none;stroke-width:2}
@media(max-width:700px){.ac-cost-diagram{margin:22px -4px 30px}.ac-cost-diagram svg{min-width:620px}}

/* v1.8.48 - Watt to lumen calculator editorial graphic. */
.lumen-diagram{max-width:760px;margin:26px 0 38px;color:#777f7d;overflow:hidden}.lumen-diagram svg{display:block;width:100%;height:auto}.lumen-diagram line,.lumen-diagram circle,.lumen-diagram path{vector-effect:non-scaling-stroke;stroke:currentColor}.lumen-diagram circle{fill:#fff}.lumen-diagram text{fill:currentColor;font-family:"Anek Bangla",sans-serif;font-size:15px}.lumen-diagram path{fill:none;stroke-width:2}
@media(max-width:700px){.lumen-diagram{margin:22px -4px 30px}.lumen-diagram svg{min-width:620px}}


/* HISHEB v1.8.52 - Desktop calculator height refinement */
@media (min-width:1001px) {
  .calc-layout { grid-template-columns:minmax(0,1fr) minmax(350px,380px); gap:46px; }
  .calculator-panel { padding:22px 24px 18px; border-radius:17px; }
  .calculator-panel-heading { margin-bottom:16px; }
  .calculator-panel-heading p { line-height:1.45; }
  .calc-field { margin-bottom:12px; }
  .calc-field label { margin-bottom:5px; }
  .calc-input,.calc-select { height:40px; min-height:40px; max-height:40px; padding:6px 11px; }
  .calc-unit-static { height:40px; min-height:40px; max-height:40px; padding:6px 11px; border-radius:10px; font-size:.95rem; }
  .calc-note { margin-top:5px; line-height:1.45; }
  .calc-actions { margin-top:4px; }
  .calc-button { min-height:41px; padding:6px 15px; }
  .calc-result { margin-top:11px; padding:15px; }
  .calc-result-list { gap:6px; margin-top:11px; }
  .calc-result-item { padding:7px 8px; }
}
/* HISHEB v1.8.52 - Desktop calculator breadcrumb spacing refinement.
   Placed after the base calculator rules so these desktop values win in the cascade. */
@media (min-width:1001px) {
  .calc-page { padding-top:28px; }
  .calc-breadcrumb { margin-bottom:20px; }
}



/* v1.8.54 - Period calculator flow diagram refinement */
.calc-information .period-flow-diagram {
    width: 100%;
    max-width: 760px;
    margin: 24px 0 8px;
    overflow-x: auto;
    overflow-y: hidden;
}
.calc-information .period-flow-diagram svg {
    display: block;
    width: 100%;
    height: auto;
    min-width: 680px;
    color: #53615a;
}
.calc-information .period-flow-diagram text {
    fill: currentColor;
    font-family: "Anek Bangla", sans-serif;
}
@media (max-width:700px) {
    .calc-information .period-flow-diagram {
        margin: 20px 0 6px;
    }
}

/* HISHEB v1.8.57 - Exact calculator control height and cache-bust release. */

/* v1.8.91: VA to Watt and power-factor explanatory visuals */
.va-watt-flow,.pf-flow{margin:24px 0 30px;overflow:hidden}.va-watt-flow svg,.pf-flow svg{display:block;width:100%;height:auto}.va-watt-flow svg text,.pf-flow svg text{font-family:"Anek Bangla",sans-serif}.va-watt-table-wrap{overflow-x:auto;margin:20px 0 28px}.va-watt-table{width:100%;border-collapse:collapse;font-size:.95rem}.va-watt-table th,.va-watt-table td{padding:10px 12px;border-bottom:1px solid #e1e7e3;text-align:left;vertical-align:top}.va-watt-table th{background:#f7faf8;font-weight:600}.va-watt-table tr:last-child td{border-bottom:0}.calc-unit-select{min-width:86px}.@media(max-width:700px){.va-watt-flow,.pf-flow{margin:22px -4px 28px;overflow-x:auto}.va-watt-flow svg,.pf-flow svg{min-width:620px}.va-watt-table{font-size:.9rem}.va-watt-table th,.va-watt-table td{padding:9px 8px}}

/* =========================================================
   HISHEB v1.8.91 - Privacy policy update and advertising controls
   ========================================================= */
.privacy-updated { margin: -4px 0 18px; color: #6b756e; font-size: .92rem; line-height: 1.6; }
.privacy-optout { max-width: 780px; margin: 18px 0 0; padding: 17px 18px; background: var(--color-primary-soft); border: 1px solid #cfe7d6; border-radius: 12px; }
.privacy-optout strong { display:block; margin-bottom:5px; color:var(--color-text); font-size:1rem; }
.privacy-optout p { margin:0; font-size:.98rem; line-height:1.75; }
.privacy-optout a { color:var(--color-primary); font-weight:600; text-underline-offset:3px; }
@media (max-width:560px) { .privacy-optout { padding:15px; } .privacy-updated { margin-bottom:15px; } }
