:root{
    --adp-orange:#fc9012;
    --adp-cyan:#00bddd;
    --adp-ink:#172033;
    --adp-muted:#64748b;
    --adp-line:#dce7ee;
    --adp-soft:#f5f9fc;
    --adp-warm:#fff8ef;
    --adp-white:#ffffff;
}

.adp-calculator,
.adp-calculator *,
.adp-calculator *::before,
.adp-calculator *::after{
    box-sizing:border-box;
}

html[lang="ar"] .adp-calculator,
html[lang="ar"] .adp-calculator button,
html[lang="ar"] .adp-calculator input,
html[lang="ar"] .adp-calculator textarea,
html[lang="ar"] .adp-calculator select{
    font-family:"Cairo",sans-serif;
}

html[lang="en"] .adp-calculator,
html[lang="en"] .adp-calculator button,
html[lang="en"] .adp-calculator input,
html[lang="en"] .adp-calculator textarea,
html[lang="en"] .adp-calculator select{
    font-family:"Montserrat",sans-serif;
}

html[lang="ar"] .adp-calculator h1,
html[lang="ar"] .adp-calculator h2,
html[lang="ar"] .adp-calculator h3,
html[lang="ar"] .adp-calculator h4{
    font-family:"Cairo",sans-serif !important;
    font-weight:700 !important;
}

.adp-calculator{
    position:relative;
    width:100%;
    isolation:isolate;
    color:var(--adp-ink);
}

.adp-calculator button{
    -webkit-tap-highlight-color:transparent;
}

.adp-calc-ambient{
    position:absolute;
    z-index:-1;
    width:320px;
    height:320px;
    border-radius:50%;
    filter:blur(80px);
    opacity:.16;
    pointer-events:none;
}

.adp-calc-ambient-one{
    top:-60px;
    right:-60px;
    background:var(--adp-orange);
}

.adp-calc-ambient-two{
    bottom:0;
    left:-80px;
    background:var(--adp-cyan);
}

.adp-calc-shell{
    position:relative;
    width:100%;
    max-width:1160px;
    margin:0 auto;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(220,231,238,.9);
    border-radius:30px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.94),
            rgba(245,249,252,.88)
        );
    box-shadow:
        0 25px 70px rgba(23,32,51,.09);
}

.adp-calc-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:26px;
}

.adp-calc-heading-copy{
    max-width:760px;
}

.adp-calc-eyebrow,
.adp-section-kicker{
    display:inline-flex;
    align-items:center;
    color:#ad5b06;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
}

.adp-calc-eyebrow{
    min-height:30px;
    padding:5px 12px;
    margin-bottom:10px;
    border:1px solid rgba(252,144,18,.22);
    border-radius:999px;
    background:rgba(255,248,239,.8);
}

.adp-calc-title{
    margin:0 0 8px;
    color:var(--adp-ink);
    font-size:34px;
    line-height:1.3;
}

.adp-calc-description{
    margin:0;
    color:var(--adp-muted);
    font-size:15px;
    line-height:1.9;
}

.adp-calc-status{
    display:flex;
    align-items:center;
    gap:8px;
    min-height:36px;
    padding:7px 12px;
    border:1px solid rgba(0,189,221,.18);
    border-radius:999px;
    background:rgba(255,255,255,.66);
    backdrop-filter:blur(14px);
    color:var(--adp-muted);
    font-size:12px;
    white-space:nowrap;
}

.adp-status-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--adp-cyan);
    box-shadow:0 0 0 5px rgba(0,189,221,.11);
}

.adp-age-workspace{
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:20px;
}

.adp-glass-card{
    border:1px solid rgba(255,255,255,.8);
    background:rgba(255,255,255,.64);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.9),
        0 14px 35px rgba(23,32,51,.06);
}

.adp-age-control-card,
.adp-age-hero-result{
    min-height:330px;
    border-radius:24px;
    padding:24px;
}

.adp-age-control-card{
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.77),
            rgba(245,249,252,.7)
        );
}

.adp-field-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:9px;
}

.adp-calc-label{
    color:var(--adp-ink);
    font-size:14px;
    font-weight:700;
}

.adp-field-hint{
    color:var(--adp-muted);
    font-size:11px;
}

.adp-date-field-wrap{
    position:relative;
}

.adp-calc-input{
    width:100%;
    min-height:56px;
    padding:11px 15px;
    border:1px solid var(--adp-line);
    border-radius:14px;
    outline:none;
    background:rgba(255,255,255,.92);
    color:var(--adp-ink);
    font-size:16px;
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

.adp-calc-input:focus{
    border-color:var(--adp-cyan);
    box-shadow:
        0 0 0 4px rgba(0,189,221,.11);
}

.adp-calc-error{
    margin:10px 0 0;
    color:#b42318;
    font-size:13px;
    line-height:1.7;
}

.adp-control-actions{
    margin-top:14px;
}

.adp-btn{
    min-height:46px;
    padding:9px 17px;
    border-radius:13px;
    cursor:pointer;
    font-size:13px;
    font-weight:700;
    transition:
        transform .16s ease,
        box-shadow .16s ease,
        border-color .16s ease;
}

.adp-btn:hover{
    transform:translateY(-1px);
}

.adp-btn-primary{
    border:1px solid var(--adp-orange);
    background:var(--adp-orange);
    color:#fff;
    box-shadow:
        0 9px 22px rgba(252,144,18,.22);
}

.adp-btn-secondary{
    border:1px solid var(--adp-line);
    background:rgba(255,255,255,.84);
    color:var(--adp-ink);
}

.adp-btn-secondary:hover{
    border-color:var(--adp-cyan);
}

.adp-control-actions .adp-btn{
    width:100%;
}

.adp-privacy-note{
    display:flex;
    flex-direction:column;
    gap:5px;
    margin-top:18px;
    padding:14px;
    border-radius:14px;
    background:rgba(0,189,221,.06);
}

.adp-privacy-note strong{
    font-size:12px;
    color:var(--adp-ink);
}

.adp-privacy-note span{
    color:var(--adp-muted);
    font-size:11px;
    line-height:1.7;
}

.adp-age-hero-result{
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.10),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.10),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-age-empty-state{
    max-width:360px;
    text-align:center;
}

.adp-empty-ring{
    display:flex;
    align-items:center;
    justify-content:center;
    width:94px;
    height:94px;
    margin:0 auto 18px;
    border:1px solid var(--adp-line);
    border-radius:50%;
    background:rgba(255,255,255,.7);
    box-shadow:
        0 10px 30px rgba(23,32,51,.06);
}

.adp-empty-ring span{
    color:var(--adp-cyan);
    font-size:35px;
    font-weight:700;
}

.adp-age-empty-state strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-age-empty-state p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.7;
}

.adp-age-result-content{
    width:100%;
}

.adp-age-main-result{
    text-align:center;
}

.adp-age-main-number{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:10px;
}

.adp-age-main-number strong{
    color:var(--adp-orange);
    font-size:76px;
    line-height:1;
    font-weight:700;
}

.adp-age-main-number span{
    padding-bottom:8px;
    color:var(--adp-muted);
    font-size:19px;
    font-weight:700;
}

.adp-age-sub-age{
    margin-top:10px;
    color:var(--adp-muted);
    font-size:14px;
}

.adp-birthday-progress-wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin-top:25px;
}

.adp-birthday-ring{
    --adp-progress:0deg;
    display:grid;
    place-items:center;
    width:122px;
    height:122px;
    flex:0 0 122px;
    border-radius:50%;
    background:
        conic-gradient(
            var(--adp-cyan) var(--adp-progress),
            rgba(220,231,238,.75) 0
        );
    box-shadow:
        0 12px 28px rgba(0,189,221,.12);
}

.adp-birthday-ring-inner{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:98px;
    height:98px;
    padding:8px;
    border-radius:50%;
    background:rgba(255,255,255,.96);
    text-align:center;
}

.adp-birthday-ring-inner strong{
    color:var(--adp-ink);
    font-size:17px;
}

.adp-birthday-ring-inner span{
    margin-top:3px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-birthday-copy{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.adp-birthday-copy span{
    color:var(--adp-muted);
    font-size:12px;
}

.adp-birthday-copy strong{
    font-size:15px;
}

.adp-result-dashboard{
    margin-top:26px;
}

.adp-dashboard-title,
.adp-smart-head,
.adp-export-zone{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.adp-dashboard-title h3,
.adp-smart-head h3,
.adp-export-zone h3{
    margin:3px 0 0;
    color:var(--adp-ink);
    font-size:19px;
}

.adp-metrics-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-top:14px;
}

.adp-metric-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    padding:18px 15px;
    border:1px solid rgba(220,231,238,.9);
    border-radius:18px;
    background:rgba(255,255,255,.78);
}

.adp-metric-card::after{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:50px;
    height:3px;
    border-radius:0 18px 0 10px;
    background:linear-gradient(
        90deg,
        var(--adp-orange),
        var(--adp-cyan)
    );
}

.adp-metric-card span{
    display:block;
    color:var(--adp-muted);
    font-size:11px;
}

.adp-metric-card strong{
    display:block;
    margin:5px 0;
    color:var(--adp-ink);
    font-size:22px;
    line-height:1.3;
    word-break:break-word;
}

.adp-metric-card small{
    color:var(--adp-muted);
    font-size:9px;
}

.adp-insight-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:12px;
}

.adp-info-card{
    min-height:118px;
    padding:17px;
    border-radius:18px;
}

.adp-info-label{
    display:block;
    margin-bottom:9px;
    color:var(--adp-muted);
    font-size:11px;
}

.adp-info-card strong{
    display:block;
    font-size:15px;
    line-height:1.6;
}

.adp-info-card small{
    display:block;
    margin-top:5px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-smart-card{
    margin-top:14px;
    padding:22px;
    border:1px solid rgba(0,189,221,.17);
    border-radius:20px;
    background:
        linear-gradient(
            135deg,
            rgba(0,189,221,.07),
            rgba(255,255,255,.85),
            rgba(252,144,18,.06)
        );
}

.adp-local-ai-badge{
    padding:5px 9px;
    border:1px solid rgba(0,189,221,.18);
    border-radius:999px;
    background:rgba(255,255,255,.65);
    color:var(--adp-cyan);
    font-size:10px;
    font-weight:700;
}

.adp-smart-card p{
    margin:15px 0 0;
    color:var(--adp-muted);
    font-size:14px;
    line-height:2;
}

.adp-export-zone{
    margin-top:14px;
    padding:20px;
    border:1px solid var(--adp-line);
    border-radius:20px;
    background:rgba(255,255,255,.64);
}

.adp-export-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px;
}

.adp-action-feedback{
    width:100%;
    margin:8px 0 0;
    color:var(--adp-cyan);
    font-size:11px;
}

@media (max-width:900px){

    .adp-metrics-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .adp-insight-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:767px){

    .adp-calc-shell{
        padding:18px;
        border-radius:22px;
    }

    .adp-calc-header{
        flex-direction:column;
        gap:12px;
    }

    .adp-calc-title{
        font-size:27px;
    }

    .adp-calc-description{
        font-size:13px;
    }

    .adp-calc-status{
        align-self:flex-start;
    }

    .adp-age-workspace{
        grid-template-columns:1fr;
    }

    .adp-age-control-card,
    .adp-age-hero-result{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-age-hero-result{
        min-height:290px;
    }

    .adp-age-main-number strong{
        font-size:62px;
    }

    .adp-birthday-progress-wrap{
        flex-direction:column;
        text-align:center;
    }

    .adp-metrics-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .adp-metric-card{
        padding:15px 13px;
    }

    .adp-metric-card strong{
        font-size:19px;
    }

    .adp-insight-grid{
        grid-template-columns:1fr 1fr;
    }

    .adp-dashboard-title,
    .adp-smart-head,
    .adp-export-zone{
        align-items:flex-start;
        flex-direction:column;
    }

    .adp-export-actions{
        width:100%;
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .adp-export-actions .adp-btn{
        width:100%;
        padding-left:10px;
        padding-right:10px;
    }
}

@media (max-width:420px){

    .adp-calc-shell{
        padding:14px;
    }

    .adp-metrics-grid{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .adp-insight-grid{
        grid-template-columns:1fr;
    }

    .adp-export-actions{
        grid-template-columns:1fr;
    }

    .adp-birthday-ring{
        width:110px;
        height:110px;
        flex-basis:110px;
    }

    .adp-birthday-ring-inner{
        width:88px;
        height:88px;
    }
}

@media (prefers-reduced-motion:reduce){

    .adp-calculator *,
    .adp-calculator *::before,
    .adp-calculator *::after{
        scroll-behavior:auto !important;
        transition:none !important;
    }
}

@media print{

    .adp-age-control-card,
    .adp-export-zone,
    .adp-calc-status{
        display:none !important;
    }

    .adp-calc-shell{
        box-shadow:none;
        border:0;
    }
}

/* =========================================================
   AGE CALCULATOR — THIS DAY IN HISTORY
   ========================================================= */

.adp-history-card{
    position:relative;
    margin-top:14px;
    padding:24px;
    overflow:hidden;
    border:1px solid rgba(252,144,18,.18);
    border-radius:22px;
    background:
        linear-gradient(
            135deg,
            rgba(255,248,239,.82),
            rgba(255,255,255,.86) 48%,
            rgba(0,189,221,.06)
        );
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92),
        0 15px 38px rgba(23,32,51,.06);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}

.adp-history-glow{
    position:absolute;
    top:-70px;
    left:-50px;
    width:180px;
    height:180px;
    border-radius:50%;
    background:rgba(0,189,221,.11);
    filter:blur(45px);
    pointer-events:none;
}

.adp-history-head{
    position:relative;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}

.adp-history-head h3{
    margin:4px 0 0;
    color:var(--adp-ink);
    font-size:19px;
    line-height:1.5;
}

.adp-history-year{
    min-width:82px;
    padding:10px 13px;
    border:1px solid rgba(252,144,18,.18);
    border-radius:15px;
    background:rgba(255,255,255,.74);
    text-align:center;
}

.adp-history-year span{
    display:block;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-history-year strong{
    display:block;
    margin-top:2px;
    color:var(--adp-orange);
    font-size:20px;
}

.adp-history-intro{
    position:relative;
    margin:13px 0 0;
    color:var(--adp-muted);
    font-size:11px;
    line-height:1.8;
}

.adp-history-text{
    position:relative;
    margin:13px 0 0;
    color:var(--adp-ink);
    font-size:14px;
    line-height:2;
}

.adp-history-footer{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:18px;
    padding-top:15px;
    border-top:1px solid rgba(220,231,238,.75);
}

.adp-history-source{
    color:var(--adp-muted);
    font-size:10px;
    line-height:1.6;
    text-decoration:none;
}

.adp-history-source:hover{
    color:var(--adp-cyan);
}

.adp-history-controls{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--adp-muted);
    font-size:10px;
    white-space:nowrap;
}

.adp-history-next{
    min-height:35px;
    padding:6px 13px;
    border:1px solid var(--adp-line);
    border-radius:10px;
    background:rgba(255,255,255,.84);
    color:var(--adp-ink);
    cursor:pointer;
    font-size:11px;
    font-weight:700;
    transition:
        border-color .16s ease,
        transform .16s ease,
        box-shadow .16s ease;
}

.adp-history-next:hover{
    border-color:var(--adp-cyan);
    transform:translateY(-1px);
    box-shadow:0 6px 16px rgba(23,32,51,.06);
}

@media (max-width:767px){

    .adp-history-card{
        padding:18px;
        border-radius:19px;
    }

    .adp-history-head{
        gap:12px;
    }

    .adp-history-head h3{
        font-size:17px;
    }

    .adp-history-text{
        font-size:13px;
    }

    .adp-history-footer{
        align-items:flex-start;
        flex-direction:column;
    }

    .adp-history-controls{
        width:100%;
        justify-content:space-between;
    }
}


/* =========================================================
   RESULT SHARE / EXPORT
   Desktop: single horizontal row
   Tablet: compact row
   Mobile: responsive two-column grid
   ========================================================= */

@media (min-width: 769px) {

    .adp-share-card,
    .adp-export-card {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:32px;
    }

    .adp-share-card .adp-share-actions,
    .adp-share-card .adp-export-actions,
    .adp-export-card .adp-share-actions,
    .adp-export-card .adp-export-actions {
        display:flex;
        flex-direction:row;
        flex-wrap:nowrap;
        align-items:center;
        justify-content:flex-start;
        gap:10px;
        width:auto;
    }

    .adp-share-card .adp-share-actions > *,
    .adp-share-card .adp-export-actions > *,
    .adp-export-card .adp-share-actions > *,
    .adp-export-card .adp-export-actions > * {
        flex:0 0 auto;
        width:auto;
        min-width:108px;
        min-height:46px;
        margin:0;
    }

}


/*
 * Current calculator markup fallback.
 * Keeps any existing action container in one line
 * without changing button functionality.
 */

@media (min-width: 769px) {

    [data-adp-share-card] [data-adp-actions],
    [data-adp-export-card] [data-adp-actions],
    [data-adp-share-actions],
    [data-adp-export-actions] {
        display:flex !important;
        flex-direction:row !important;
        flex-wrap:nowrap !important;
        align-items:center !important;
        justify-content:flex-start !important;
        gap:10px !important;
    }

    [data-adp-share-actions] > *,
    [data-adp-export-actions] > *,
    [data-adp-actions] > * {
        width:auto !important;
        min-width:108px;
        margin:0 !important;
    }

}


/* Tablet */

@media (min-width: 769px) and (max-width: 1100px) {

    .adp-share-card,
    .adp-export-card {
        gap:20px;
    }

    .adp-share-card .adp-share-actions > *,
    .adp-share-card .adp-export-actions > *,
    .adp-export-card .adp-share-actions > *,
    .adp-export-card .adp-export-actions > *,
    [data-adp-share-actions] > *,
    [data-adp-export-actions] > *,
    [data-adp-actions] > * {
        min-width:94px;
    }

}


/* Mobile */

@media (max-width: 768px) {

    .adp-share-card,
    .adp-export-card {
        display:block;
    }

    .adp-share-card .adp-share-actions,
    .adp-share-card .adp-export-actions,
    .adp-export-card .adp-share-actions,
    .adp-export-card .adp-export-actions,
    [data-adp-share-actions],
    [data-adp-export-actions],
    [data-adp-actions] {
        display:grid !important;
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px;
    }

    .adp-share-card .adp-share-actions > *,
    .adp-share-card .adp-export-actions > *,
    .adp-export-card .adp-share-actions > *,
    .adp-export-card .adp-export-actions > *,
    [data-adp-share-actions] > *,
    [data-adp-export-actions] > *,
    [data-adp-actions] > * {
        width:100% !important;
        min-width:0 !important;
        min-height:44px;
        margin:0 !important;
    }

}


/* Very small screens */

@media (max-width: 380px) {

    .adp-share-card .adp-share-actions,
    .adp-share-card .adp-export-actions,
    .adp-export-card .adp-share-actions,
    .adp-export-card .adp-export-actions,
    [data-adp-share-actions],
    [data-adp-export-actions],
    [data-adp-actions] {
        grid-template-columns:1fr !important;
    }

}


/* =========================================================
   v0.3.4 — RESULT EXPORT ZONE
   Exact selectors used by Age Calculator markup
   ========================================================= */

@media (min-width: 769px) {

    .adp-calculator .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px, .75fr)
            minmax(520px, 1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-calculator .adp-export-zone > div:first-child{
        min-width:0;
    }

    .adp-calculator .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4, minmax(105px, 1fr)) !important;
        align-items:center !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-calculator .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        padding:9px 12px !important;
        white-space:nowrap !important;
    }

    .adp-calculator .adp-action-feedback{
        grid-column:1 / -1;
        margin:2px 0 0 !important;
    }
}


/* Tablet: still one row, slightly tighter */

@media (min-width: 769px) and (max-width: 1050px) {

    .adp-calculator .adp-export-zone{
        grid-template-columns:
            minmax(180px, .6fr)
            minmax(480px, 1.4fr) !important;
        gap:18px !important;
    }

    .adp-calculator .adp-export-actions{
        grid-template-columns:
            repeat(4, minmax(90px, 1fr)) !important;
        gap:8px !important;
    }

    .adp-calculator .adp-export-actions .adp-btn{
        padding-left:8px !important;
        padding-right:8px !important;
        font-size:12px !important;
    }
}


/* Mobile: two columns */

@media (max-width: 768px) {

    .adp-calculator .adp-export-zone{
        display:block !important;
    }

    .adp-calculator .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-calculator .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}


@media (max-width: 380px) {

    .adp-calculator .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   DATE CONVERTER
   ========================================================= */

.adp-date-direction{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:10px;
    max-width:720px;
    margin:0 auto 22px;
    padding:6px;
    border:1px solid var(--adp-line);
    border-radius:18px;
    background:rgba(255,255,255,.65);
}

.adp-date-tab{
    min-height:46px;
    padding:9px 14px;
    border:0;
    border-radius:13px;
    background:transparent;
    color:var(--adp-muted);
    cursor:pointer;
    font-size:13px;
    font-weight:700;
    transition:
        color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.adp-date-tab.is-active{
    background:var(--adp-white);
    color:var(--adp-ink);
    box-shadow:
        0 7px 20px rgba(23,32,51,.07);
}

.adp-date-swap{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid rgba(0,189,221,.18);
    border-radius:50%;
    background:rgba(0,189,221,.07);
    color:var(--adp-cyan);
    cursor:pointer;
    font-size:21px;
    line-height:1;
}

.adp-date-workspace{
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:20px;
}

.adp-date-input-card,
.adp-date-result-card{
    min-height:330px;
    padding:24px;
    border-radius:24px;
}

.adp-date-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.1),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.09),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-hijri-fields{
    display:grid;
    grid-template-columns:.7fr 1.3fr 1fr;
    gap:8px;
}

.adp-hijri-fields select{
    appearance:auto;
}

.adp-date-empty{
    max-width:360px;
    text-align:center;
}

.adp-date-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-date-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-date-result{
    width:100%;
    text-align:center;
}

.adp-date-result-main{
    display:block;
    margin:10px auto 20px;
    color:var(--adp-orange);
    font-size:34px;
    line-height:1.6;
    font-weight:700;
}

.adp-date-result-meta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.adp-date-result-meta > div{
    padding:14px;
    border:1px solid var(--adp-line);
    border-radius:15px;
    background:rgba(255,255,255,.75);
}

.adp-date-result-meta span{
    display:block;
    margin-bottom:5px;
    color:var(--adp-muted);
    font-size:10px;
}

.adp-date-result-meta strong{
    display:block;
    color:var(--adp-ink);
    font-size:14px;
}

.adp-date-details{
    margin-top:20px;
}

.adp-date-details .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-date-direction{
        grid-template-columns:1fr auto 1fr;
        gap:5px;
        border-radius:15px;
    }

    .adp-date-tab{
        min-height:42px;
        padding:7px;
        font-size:11px;
    }

    .adp-date-swap{
        width:36px;
        height:36px;
        font-size:18px;
    }

    .adp-date-workspace{
        grid-template-columns:1fr;
    }

    .adp-date-input-card,
    .adp-date-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-date-result-card{
        min-height:270px;
    }

    .adp-hijri-fields{
        grid-template-columns:1fr;
    }

    .adp-date-result-main{
        font-size:27px;
    }

    .adp-date-details .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media (max-width:420px){

    .adp-date-direction{
        grid-template-columns:1fr;
    }

    .adp-date-swap{
        margin:0 auto;
        transform:rotate(90deg);
    }

    .adp-date-result-meta{
        grid-template-columns:1fr;
    }

    .adp-date-details .adp-insight-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   DATE CONVERTER EXPORT — v0.4.1
   ========================================================= */

@media (min-width:769px){

    .adp-date-details .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
    }

    .adp-date-details .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
        white-space:nowrap !important;
    }
}

@media (max-width:768px){

    .adp-date-details .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
    }
}

@media (max-width:380px){

    .adp-date-details .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   BMI CALCULATOR — v0.5.0
   ========================================================= */

.adp-bmi-workspace{
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:20px;
}

.adp-bmi-input-card,
.adp-bmi-result-card{
    min-height:330px;
    padding:24px;
    border-radius:24px;
}

.adp-bmi-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.adp-bmi-input-wrap{
    position:relative;
}

.adp-bmi-input-wrap .adp-calc-input{
    padding-inline-end:54px;
}

.adp-bmi-input-wrap > span{
    position:absolute;
    inset-inline-end:15px;
    top:50%;
    transform:translateY(-50%);
    color:var(--adp-muted);
    font-size:12px;
    pointer-events:none;
}

.adp-bmi-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.1),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.1),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-bmi-empty{
    max-width:360px;
    text-align:center;
}

.adp-bmi-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-bmi-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-bmi-result{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:28px;
    width:100%;
}

.adp-bmi-ring{
    --adp-bmi-progress:0deg;
    display:grid;
    place-items:center;
    width:170px;
    height:170px;
    flex:0 0 170px;
    border-radius:50%;
    background:
        conic-gradient(
            var(--adp-cyan) var(--adp-bmi-progress),
            rgba(220,231,238,.75) 0
        );
    box-shadow:
        0 15px 35px rgba(0,189,221,.13);
}

.adp-bmi-ring-inner{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:136px;
    height:136px;
    border-radius:50%;
    background:rgba(255,255,255,.97);
}

.adp-bmi-ring-inner strong{
    color:var(--adp-orange);
    font-size:42px;
    line-height:1;
}

.adp-bmi-ring-inner span{
    margin-top:5px;
    color:var(--adp-muted);
    font-size:12px;
    font-weight:700;
}

.adp-bmi-result-copy{
    max-width:330px;
}

.adp-bmi-result-copy > span{
    display:block;
    color:var(--adp-muted);
    font-size:11px;
}

.adp-bmi-result-copy > strong{
    display:block;
    margin:5px 0 8px;
    color:var(--adp-ink);
    font-size:22px;
    line-height:1.5;
}

.adp-bmi-result-copy p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-bmi-dashboard{
    margin-top:20px;
}

.adp-bmi-note{
    margin-top:10px !important;
    padding-top:10px;
    border-top:1px solid rgba(220,231,238,.75);
    color:var(--adp-muted) !important;
    font-size:11px !important;
}

.adp-bmi-dashboard .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-bmi-workspace{
        grid-template-columns:1fr;
    }

    .adp-bmi-input-card,
    .adp-bmi-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-bmi-fields{
        grid-template-columns:1fr;
    }

    .adp-bmi-result-card{
        min-height:290px;
    }

    .adp-bmi-result{
        flex-direction:column;
        text-align:center;
    }

    .adp-bmi-ring{
        width:150px;
        height:150px;
        flex-basis:150px;
    }

    .adp-bmi-ring-inner{
        width:120px;
        height:120px;
    }

    .adp-bmi-ring-inner strong{
        font-size:36px;
    }

    .adp-bmi-dashboard .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media (max-width:420px){

    .adp-bmi-dashboard .adp-insight-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   BMI EXPORT — v0.5.1
   ========================================================= */

@media (min-width:769px){

    .adp-bmi-dashboard .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px,.75fr)
            minmax(520px,1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-bmi-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-bmi-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        white-space:nowrap !important;
    }
}

@media (min-width:769px) and (max-width:1050px){

    .adp-bmi-dashboard .adp-export-zone{
        grid-template-columns:
            minmax(180px,.6fr)
            minmax(480px,1.4fr) !important;
        gap:18px !important;
    }

    .adp-bmi-dashboard .adp-export-actions{
        grid-template-columns:
            repeat(4,minmax(90px,1fr)) !important;
        gap:8px !important;
    }
}

@media (max-width:768px){

    .adp-bmi-dashboard .adp-export-zone{
        display:block !important;
    }

    .adp-bmi-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-bmi-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}

@media (max-width:380px){

    .adp-bmi-dashboard .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   VAT CALCULATOR — v0.6.0
   ========================================================= */

.adp-vat-mode-switch{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    max-width:720px;
    margin:0 auto 22px;
    padding:6px;
    border:1px solid var(--adp-line);
    border-radius:18px;
    background:rgba(255,255,255,.65);
}

.adp-vat-mode{
    min-height:46px;
    padding:9px 12px;
    border:0;
    border-radius:13px;
    background:transparent;
    color:var(--adp-muted);
    cursor:pointer;
    font-size:12px;
    font-weight:700;
    transition:
        color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.adp-vat-mode.is-active{
    background:var(--adp-white);
    color:var(--adp-ink);
    box-shadow:
        0 7px 20px rgba(23,32,51,.07);
}

.adp-vat-workspace{
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:20px;
}

.adp-vat-input-card,
.adp-vat-result-card{
    min-height:310px;
    padding:24px;
    border-radius:24px;
}

.adp-vat-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.adp-vat-input-wrap{
    position:relative;
}

.adp-vat-input-wrap .adp-calc-input{
    padding-inline-end:52px;
}

.adp-vat-input-wrap > span{
    position:absolute;
    inset-inline-end:15px;
    top:50%;
    transform:translateY(-50%);
    color:var(--adp-muted);
    font-size:12px;
    pointer-events:none;
}

.adp-vat-default-note{
    display:block;
    margin-top:6px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-vat-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.10),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.10),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-vat-empty{
    max-width:330px;
    text-align:center;
}

.adp-vat-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-vat-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
}

.adp-vat-main-value{
    display:block;
    margin:10px 0 5px;
    color:var(--adp-orange);
    font-size:46px;
    line-height:1.4;
    font-weight:700;
}

.adp-vat-main-label{
    display:block;
    color:var(--adp-muted);
    font-size:13px;
}

.adp-vat-dashboard{
    margin-top:20px;
}

.adp-vat-note{
    margin-top:10px !important;
    padding-top:10px;
    border-top:1px solid rgba(220,231,238,.75);
    color:var(--adp-muted) !important;
    font-size:11px !important;
}

.adp-vat-dashboard .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-vat-workspace{
        grid-template-columns:1fr;
    }

    .adp-vat-fields{
        grid-template-columns:1fr;
    }

    .adp-vat-input-card,
    .adp-vat-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-vat-result-card{
        min-height:250px;
    }

    .adp-vat-main-value{
        font-size:37px;
    }

    .adp-vat-dashboard .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media (max-width:420px){

    .adp-vat-mode-switch{
        grid-template-columns:1fr;
    }

    .adp-vat-dashboard .adp-insight-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   VAT EXPORT — v0.6.1
   ========================================================= */

@media (min-width:769px){

    .adp-vat-dashboard .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px,.75fr)
            minmax(520px,1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-vat-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-vat-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    .adp-vat-dashboard .adp-action-feedback{
        grid-column:1 / -1;
    }
}

@media (min-width:769px) and (max-width:1050px){

    .adp-vat-dashboard .adp-export-zone{
        grid-template-columns:
            minmax(180px,.6fr)
            minmax(480px,1.4fr) !important;
        gap:18px !important;
    }

    .adp-vat-dashboard .adp-export-actions{
        grid-template-columns:
            repeat(4,minmax(90px,1fr)) !important;
        gap:8px !important;
    }

    .adp-vat-dashboard .adp-export-actions .adp-btn{
        padding-left:8px !important;
        padding-right:8px !important;
        font-size:12px !important;
    }
}

@media (max-width:768px){

    .adp-vat-dashboard .adp-export-zone{
        display:block !important;
    }

    .adp-vat-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-vat-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}

@media (max-width:380px){

    .adp-vat-dashboard .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   LOAN & FINANCE CALCULATOR — v0.7.0
   ========================================================= */

.adp-loan-workspace{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:20px;
}

.adp-loan-input-card,
.adp-loan-result-card{
    min-height:390px;
    padding:24px;
    border-radius:24px;
}

.adp-loan-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
}

.adp-loan-field-wide{
    grid-column:1 / -1;
}

.adp-loan-input-wrap{
    position:relative;
}

.adp-loan-input-wrap .adp-calc-input{
    padding-inline-end:58px;
}

.adp-loan-input-wrap > span{
    position:absolute;
    inset-inline-end:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--adp-muted);
    font-size:11px;
    pointer-events:none;
}

.adp-loan-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.10),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.11),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-loan-empty{
    max-width:350px;
    text-align:center;
}

.adp-loan-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-loan-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-loan-result{
    width:100%;
}

.adp-loan-main-value{
    display:block;
    margin:10px 0 3px;
    color:var(--adp-orange);
    font-size:47px;
    line-height:1.4;
    font-weight:700;
}

.adp-loan-main-label{
    display:block;
    color:var(--adp-muted);
    font-size:12px;
}

.adp-loan-result-mini{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:25px;
}

.adp-loan-result-mini > div{
    padding:13px;
    border:1px solid var(--adp-line);
    border-radius:14px;
    background:rgba(255,255,255,.75);
}

.adp-loan-result-mini span{
    display:block;
    margin-bottom:4px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-loan-result-mini strong{
    color:var(--adp-ink);
    font-size:13px;
}

.adp-loan-dashboard{
    margin-top:20px;
}

.adp-loan-dashboard .adp-insight-grid{
    grid-template-columns:
        repeat(3,minmax(0,1fr));
}

.adp-loan-note{
    margin-top:10px !important;
    padding-top:10px;
    border-top:1px solid rgba(220,231,238,.75);
    color:var(--adp-muted) !important;
    font-size:11px !important;
}

.adp-loan-schedule-card{
    margin-top:14px;
    padding:22px;
    border-radius:20px;
}

.adp-loan-schedule-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:16px;
}

.adp-loan-schedule-head h3{
    margin:4px 0 0;
    color:var(--adp-ink);
    font-size:18px;
}

.adp-loan-schedule-head > span{
    padding:6px 10px;
    border:1px solid var(--adp-line);
    border-radius:9px;
    color:var(--adp-muted);
    font-size:10px;
}

.adp-loan-table-wrap{
    width:100%;
    overflow-x:auto;
}

.adp-loan-table{
    width:100%;
    min-width:720px;
    border-collapse:separate;
    border-spacing:0 7px;
}

.adp-loan-table th{
    padding:6px 10px;
    color:var(--adp-muted);
    font-size:9px;
    font-weight:500;
    text-align:right;
}

.adp-loan-table td{
    padding:11px 10px;
    background:rgba(245,249,252,.82);
    color:var(--adp-ink);
    font-size:11px;
}

.adp-loan-table td:first-child{
    border-radius:0 10px 10px 0;
    font-weight:700;
}

.adp-loan-table td:last-child{
    border-radius:10px 0 0 10px;
}

.adp-loan-dashboard .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-loan-workspace{
        grid-template-columns:1fr;
    }

    .adp-loan-input-card,
    .adp-loan-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-loan-fields{
        grid-template-columns:1fr;
    }

    .adp-loan-field-wide{
        grid-column:auto;
    }

    .adp-loan-result-card{
        min-height:290px;
    }

    .adp-loan-main-value{
        font-size:37px;
    }

    .adp-loan-dashboard .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .adp-loan-schedule-card{
        padding:17px;
    }
}

@media (max-width:420px){

    .adp-loan-dashboard .adp-insight-grid{
        grid-template-columns:1fr;
    }

    .adp-loan-result-mini{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   LOAN EXPORT — v0.7.1
   ========================================================= */

@media (min-width:769px){

    .adp-loan-dashboard .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px,.75fr)
            minmax(520px,1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-loan-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-loan-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    .adp-loan-dashboard .adp-action-feedback{
        grid-column:1 / -1;
    }
}

@media (min-width:769px) and (max-width:1050px){

    .adp-loan-dashboard .adp-export-zone{
        grid-template-columns:
            minmax(180px,.6fr)
            minmax(480px,1.4fr) !important;
        gap:18px !important;
    }

    .adp-loan-dashboard .adp-export-actions{
        grid-template-columns:
            repeat(4,minmax(90px,1fr)) !important;
        gap:8px !important;
    }

    .adp-loan-dashboard .adp-export-actions .adp-btn{
        padding-inline:8px !important;
        font-size:12px !important;
    }
}

@media (max-width:768px){

    .adp-loan-dashboard .adp-export-zone{
        display:block !important;
    }

    .adp-loan-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-loan-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}

@media (max-width:380px){

    .adp-loan-dashboard .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   DIGITAL ZAKAT CALCULATOR — v0.8.0
   ========================================================= */

.adp-zakat-mode-switch{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    max-width:560px;
    margin:0 auto 22px;
    padding:6px;
    border:1px solid var(--adp-line);
    border-radius:18px;
    background:rgba(255,255,255,.65);
}

.adp-zakat-mode{
    min-height:46px;
    border:0;
    border-radius:13px;
    background:transparent;
    color:var(--adp-muted);
    cursor:pointer;
    font-weight:700;
}

.adp-zakat-mode.is-active{
    background:var(--adp-white);
    color:var(--adp-ink);
    box-shadow:0 7px 20px rgba(23,32,51,.07);
}

.adp-zakat-workspace{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:20px;
}

.adp-zakat-input-card,
.adp-zakat-result-card{
    min-height:390px;
    padding:24px;
    border-radius:24px;
}

.adp-zakat-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px;
}

.adp-zakat-field{
    max-width:100%;
}

.adp-zakat-input-wrap{
    position:relative;
}

.adp-zakat-input-wrap .adp-calc-input{
    padding-inline-end:52px;
}

.adp-zakat-input-wrap > span{
    position:absolute;
    inset-inline-end:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--adp-muted);
    font-size:10px;
    pointer-events:none;
}

.adp-zakat-inline-pair{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}

.adp-zakat-nisab-box{
    margin-top:16px;
    padding:15px;
    border:1px solid rgba(0,189,221,.18);
    border-radius:16px;
    background:rgba(0,189,221,.045);
}

.adp-zakat-nisab-box > div + div{
    margin-top:10px;
}

.adp-zakat-hawl{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:14px;
    color:var(--adp-ink);
    font-size:11px;
    line-height:1.7;
    cursor:pointer;
}

.adp-zakat-hawl input{
    margin-top:3px;
    accent-color:var(--adp-orange);
}

.adp-zakat-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.10),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.10),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-zakat-empty{
    max-width:350px;
}

.adp-zakat-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-zakat-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-zakat-result{
    width:100%;
}

.adp-zakat-main-value{
    display:block;
    margin:10px 0 4px;
    color:var(--adp-orange);
    font-size:49px;
    line-height:1.4;
    font-weight:700;
}

.adp-zakat-main-label{
    display:block;
    color:var(--adp-muted);
    font-size:12px;
}

.adp-zakat-result-mini{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:24px;
}

.adp-zakat-result-mini > div{
    padding:13px;
    border:1px solid var(--adp-line);
    border-radius:14px;
    background:rgba(255,255,255,.75);
}

.adp-zakat-result-mini span{
    display:block;
    margin-bottom:4px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-zakat-result-mini strong{
    color:var(--adp-ink);
    font-size:13px;
}

.adp-zakat-dashboard{
    margin-top:20px;
}

.adp-zakat-note{
    margin-top:10px !important;
    padding-top:10px;
    border-top:1px solid rgba(220,231,238,.75);
    color:var(--adp-muted) !important;
    font-size:11px !important;
}

.adp-zakat-dashboard .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-zakat-workspace{
        grid-template-columns:1fr;
    }

    .adp-zakat-input-card,
    .adp-zakat-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-zakat-fields{
        grid-template-columns:1fr;
    }

    .adp-zakat-result-card{
        min-height:280px;
    }

    .adp-zakat-main-value{
        font-size:38px;
    }

    .adp-zakat-dashboard .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media (max-width:420px){

    .adp-zakat-inline-pair{
        grid-template-columns:1fr;
    }

    .adp-zakat-dashboard .adp-insight-grid{
        grid-template-columns:1fr;
    }

    .adp-zakat-result-mini{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   ZAKAT METAL FIELD WIDTH FIX — v0.8.1
   ========================================================= */

/*
 * Gold and silver need more horizontal room because each
 * row contains both grams and price-per-gram inputs.
 */
.adp-zakat-fields .adp-zakat-metal-field{
    grid-column:1 / -1;
    min-width:0;
}

/*
 * Grams can be narrower; monetary price receives more room.
 */
.adp-zakat-metal-field .adp-zakat-inline-pair{
    grid-template-columns:
        minmax(140px,.8fr)
        minmax(210px,1.2fr);
    gap:12px;
}

.adp-zakat-metal-field .adp-zakat-input-wrap{
    min-width:0;
}

.adp-zakat-metal-field .adp-calc-input{
    display:block;
    width:100%;
    min-width:0;
    box-sizing:border-box;
}

/*
 * Preserve enough internal space for جم / ر.س without
 * covering the entered number.
 */
.adp-zakat-metal-field .adp-zakat-input-wrap .adp-calc-input{
    padding-inline-start:14px;
    padding-inline-end:58px;
}

.adp-zakat-metal-field .adp-zakat-input-wrap > span{
    inset-inline-end:14px;
    white-space:nowrap;
}

/*
 * Price is the second input in each pair and benefits from
 * slightly more typing space.
 */
.adp-zakat-metal-field
.adp-zakat-inline-pair
> .adp-zakat-input-wrap:nth-child(2)
.adp-calc-input{
    padding-inline-end:62px;
}

@media (max-width:767px){

    .adp-zakat-metal-field .adp-zakat-inline-pair{
        grid-template-columns:
            minmax(110px,.75fr)
            minmax(150px,1.25fr);
        gap:8px;
    }
}

@media (max-width:480px){

    .adp-zakat-metal-field .adp-zakat-inline-pair{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   ZAKAT EXPORT — v0.8.2
   ========================================================= */

@media (min-width:769px){

    .adp-zakat-dashboard .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px,.75fr)
            minmax(520px,1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-zakat-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-zakat-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    .adp-zakat-dashboard .adp-action-feedback{
        grid-column:1 / -1;
    }
}

@media (min-width:769px) and (max-width:1050px){

    .adp-zakat-dashboard .adp-export-zone{
        grid-template-columns:
            minmax(180px,.6fr)
            minmax(480px,1.4fr) !important;
        gap:18px !important;
    }

    .adp-zakat-dashboard .adp-export-actions{
        grid-template-columns:
            repeat(4,minmax(90px,1fr)) !important;
        gap:8px !important;
    }

    .adp-zakat-dashboard .adp-export-actions .adp-btn{
        padding-inline:8px !important;
        font-size:12px !important;
    }
}

@media (max-width:768px){

    .adp-zakat-dashboard .adp-export-zone{
        display:block !important;
    }

    .adp-zakat-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-zakat-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}

@media (max-width:380px){

    .adp-zakat-dashboard .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   FREELANCE RATE CALCULATOR — v0.9.0
   ========================================================= */

.adp-freelance-workspace{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:20px;
}

.adp-freelance-input-card,
.adp-freelance-result-card{
    min-height:380px;
    padding:24px;
    border-radius:24px;
}

.adp-freelance-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
}

.adp-freelance-input-wrap{
    position:relative;
}

.adp-freelance-input-wrap .adp-calc-input{
    padding-inline-end:58px;
}

.adp-freelance-input-wrap > span{
    position:absolute;
    inset-inline-end:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--adp-muted);
    font-size:10px;
    pointer-events:none;
    white-space:nowrap;
}

.adp-freelance-result-card{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:
        radial-gradient(
            circle at top left,
            rgba(0,189,221,.10),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(252,144,18,.11),
            transparent 45%
        ),
        rgba(255,255,255,.67);
}

.adp-freelance-empty{
    max-width:350px;
}

.adp-freelance-empty strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.adp-freelance-empty p{
    margin:0;
    color:var(--adp-muted);
    font-size:13px;
    line-height:1.8;
}

.adp-freelance-result{
    width:100%;
}

.adp-freelance-main-value{
    display:block;
    margin:10px 0 4px;
    color:var(--adp-orange);
    font-size:48px;
    line-height:1.4;
    font-weight:700;
}

.adp-freelance-main-label{
    display:block;
    color:var(--adp-muted);
    font-size:12px;
}

.adp-freelance-result-mini{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:24px;
}

.adp-freelance-result-mini > div{
    padding:13px;
    border:1px solid var(--adp-line);
    border-radius:14px;
    background:rgba(255,255,255,.75);
}

.adp-freelance-result-mini span{
    display:block;
    margin-bottom:4px;
    color:var(--adp-muted);
    font-size:9px;
}

.adp-freelance-result-mini strong{
    color:var(--adp-ink);
    font-size:13px;
}

.adp-freelance-dashboard{
    margin-top:20px;
}

.adp-freelance-dashboard .adp-insight-grid{
    grid-template-columns:
        repeat(3,minmax(0,1fr));
}

.adp-freelance-note{
    margin-top:10px !important;
    padding-top:10px;
    border-top:1px solid rgba(220,231,238,.75);
    color:var(--adp-muted) !important;
    font-size:11px !important;
}

.adp-freelance-dashboard .adp-export-actions{
    grid-template-columns:
        repeat(2,minmax(120px,1fr)) !important;
}

@media (max-width:767px){

    .adp-freelance-workspace{
        grid-template-columns:1fr;
    }

    .adp-freelance-input-card,
    .adp-freelance-result-card{
        min-height:auto;
        padding:18px;
        border-radius:19px;
    }

    .adp-freelance-fields{
        grid-template-columns:1fr;
    }

    .adp-freelance-result-card{
        min-height:280px;
    }

    .adp-freelance-main-value{
        font-size:38px;
    }

    .adp-freelance-dashboard .adp-insight-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media (max-width:420px){

    .adp-freelance-dashboard .adp-insight-grid{
        grid-template-columns:1fr;
    }

    .adp-freelance-result-mini{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   FREELANCE EXPORT — v0.9.1
   ========================================================= */

@media (min-width:769px){

    .adp-freelance-dashboard .adp-export-zone{
        display:grid !important;
        grid-template-columns:
            minmax(220px,.75fr)
            minmax(520px,1.25fr) !important;
        align-items:center !important;
        gap:28px !important;
    }

    .adp-freelance-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(4,minmax(105px,1fr)) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
    }

    .adp-freelance-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:46px !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    .adp-freelance-dashboard .adp-action-feedback{
        grid-column:1 / -1;
    }
}

@media (min-width:769px) and (max-width:1050px){

    .adp-freelance-dashboard .adp-export-zone{
        grid-template-columns:
            minmax(180px,.6fr)
            minmax(480px,1.4fr) !important;
        gap:18px !important;
    }

    .adp-freelance-dashboard .adp-export-actions{
        grid-template-columns:
            repeat(4,minmax(90px,1fr)) !important;
        gap:8px !important;
    }

    .adp-freelance-dashboard .adp-export-actions .adp-btn{
        padding-inline:8px !important;
        font-size:12px !important;
    }
}

@media (max-width:768px){

    .adp-freelance-dashboard .adp-export-zone{
        display:block !important;
    }

    .adp-freelance-dashboard .adp-export-actions{
        display:grid !important;
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        width:100% !important;
        margin-top:16px !important;
    }

    .adp-freelance-dashboard .adp-export-actions .adp-btn{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
}

@media (max-width:380px){

    .adp-freelance-dashboard .adp-export-actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   CALCULATOR CONTENT SHARED LAYER — v1.0.1
   أدواتي بلس
   Shared editorial content UI for calculator pages
   ========================================================= */

.adp-calculator-content{
    --adp-orange:#fc9012;
    --adp-cyan:#00bddd;
    --adp-ink:#172033;
    --adp-muted:#64748b;
    --adp-line:#dce7ee;
    --adp-soft:#f5f9fc;
    --adp-warm:#fff8ef;
    --adp-white:#ffffff;
    --adp-shadow:0 10px 30px rgba(23,32,51,.06);

    width:100%;
    max-width:100%;
    color:var(--adp-ink);
    font-family:"Cairo",sans-serif;
    font-size:16px;
    line-height:1.95;
    text-align:right;
    direction:rtl;
}

.adp-calculator-content,
.adp-calculator-content *,
.adp-calculator-content *::before,
.adp-calculator-content *::after{
    box-sizing:border-box;
}

.adp-calculator-content h1,
.adp-calculator-content h2,
.adp-calculator-content h3,
.adp-calculator-content h4,
.adp-calculator-content h5,
.adp-calculator-content h6,
.adp-calculator-content .elementor-heading-title{
    margin-top:0;
    color:var(--adp-ink);
    font-family:"Cairo",sans-serif !important;
    font-weight:700 !important;
}

.adp-calculator-content h2{
    margin:0 0 18px;
    font-size:clamp(25px,3vw,34px);
    line-height:1.5;
}

.adp-calculator-content h3{
    margin:0 0 11px;
    font-size:clamp(18px,2vw,22px);
    line-height:1.6;
}

.adp-calculator-content p,
.adp-calculator-content li,
.adp-calculator-content a,
.adp-calculator-content span,
.adp-calculator-content summary,
.adp-calculator-content th,
.adp-calculator-content td{
    font-family:"Cairo",sans-serif;
}

.adp-calculator-content [lang="en"],
.adp-calculator-content [dir="ltr"],
.adp-calculator-content code{
    font-family:"Montserrat",sans-serif;
}

.adp-calculator-content p{
    margin:0 0 18px;
    color:var(--adp-ink);
}

.adp-calculator-content p:last-child{
    margin-bottom:0;
}

.adp-calculator-content img{
    display:block;
    max-width:100%;
    height:auto;
}

.adp-calculator-content ul,
.adp-calculator-content ol{
    margin:0;
    padding-right:24px;
}

.adp-calculator-content li{
    margin-bottom:10px;
}

.adp-calculator-content .adp-converter-section{
    display:block;
    width:100%;
    margin-top:52px;
}

.adp-calculator-content .adp-converter-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0 0 15px;
    padding:7px 15px;
    color:var(--adp-ink);
    background:var(--adp-warm);
    border:1px solid rgba(252,144,18,.43);
    border-radius:999px;
    font-size:13px;
    font-weight:700;
    line-height:1.5;
}

.adp-calculator-content .adp-converter-intro{
    color:var(--adp-muted);
}


/* =========================================================
   PAGE IMAGE
   ========================================================= */

.adp-calculator-content .adp-converter-image{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    margin:0 0 34px;
    padding:18px;
    overflow:hidden;
    background:#eef2f5;
    border:1px solid var(--adp-line);
    border-radius:20px;
}

.adp-calculator-content .adp-converter-image img{
    width:100%;
    max-width:1600px;
    height:auto;
    margin:0 auto;
    object-fit:contain;
    border-radius:14px;
}


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

.adp-calculator-content .adp-converter-hero{
    position:relative;
    width:100%;
    padding:34px;
    overflow:hidden;
    background:
        linear-gradient(
            135deg,
            rgba(252,144,18,.10),
            rgba(0,189,221,.08)
        );
    border:1px solid var(--adp-line);
    border-radius:22px;
}

.adp-calculator-content .adp-converter-hero::before{
    position:absolute;
    top:-55px;
    left:-45px;
    width:150px;
    height:150px;
    background:rgba(0,189,221,.10);
    border-radius:50%;
    content:"";
}

.adp-calculator-content .adp-converter-hero::after{
    position:absolute;
    right:-55px;
    bottom:-75px;
    width:180px;
    height:180px;
    background:rgba(252,144,18,.10);
    border-radius:50%;
    content:"";
}

.adp-calculator-content .adp-converter-hero-inner{
    position:relative;
    z-index:1;
}

.adp-calculator-content .adp-converter-format-list{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:22px;
}

.adp-calculator-content .adp-converter-format-list span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:72px;
    padding:8px 14px;
    color:var(--adp-ink);
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:999px;
    font-family:"Montserrat",sans-serif;
    font-size:14px;
    font-weight:700;
}


/* =========================================================
   OVERVIEW CARDS
   ========================================================= */

.adp-calculator-content .adp-converter-overview-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:28px;
}

.adp-calculator-content .adp-converter-overview-card{
    min-width:0;
    padding:25px;
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:18px;
    box-shadow:0 8px 24px rgba(23,32,51,.04);
}

.adp-calculator-content .adp-converter-overview-card:nth-child(odd){
    border-top:4px solid var(--adp-orange);
}

.adp-calculator-content .adp-converter-overview-card:nth-child(even){
    border-top:4px solid var(--adp-cyan);
}

.adp-calculator-content .adp-converter-overview-card p{
    color:var(--adp-muted);
}


/* =========================================================
   FEATURE CARDS
   ========================================================= */

.adp-calculator-content .adp-converter-formats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:27px;
}

.adp-calculator-content .adp-converter-format-card{
    position:relative;
    min-width:0;
    padding:27px;
    overflow:hidden;
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:19px;
    box-shadow:var(--adp-shadow);
}

.adp-calculator-content .adp-converter-format-card::before{
    display:block;
    width:54px;
    height:5px;
    margin-bottom:18px;
    background:var(--adp-orange);
    border-radius:999px;
    content:"";
}

.adp-calculator-content .adp-format-png::before{
    background:var(--adp-cyan);
}

.adp-calculator-content .adp-format-webp::before{
    background:#52697e;
}

.adp-calculator-content .adp-converter-format-card p{
    color:var(--adp-muted);
}


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

.adp-calculator-content .adp-converter-table-wrap{
    width:100%;
    margin-top:25px;
    overflow-x:auto;
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:18px;
    box-shadow:0 8px 24px rgba(23,32,51,.04);
    -webkit-overflow-scrolling:touch;
}

.adp-calculator-content table{
    width:100%;
    min-width:800px;
    border-collapse:collapse;
    border-spacing:0;
}

.adp-calculator-content th,
.adp-calculator-content td{
    padding:17px 18px;
    text-align:right;
    vertical-align:top;
    border-bottom:1px solid var(--adp-line);
}

.adp-calculator-content th{
    color:var(--adp-ink);
    background:var(--adp-soft);
    font-weight:700;
}

.adp-calculator-content tbody tr:last-child td{
    border-bottom:0;
}

.adp-calculator-content tbody tr:hover td{
    background:#fbfdfe;
}

.adp-calculator-content td:first-child{
    color:var(--adp-ink);
    font-weight:700;
}


/* =========================================================
   STEPS
   ========================================================= */

.adp-calculator-content .adp-converter-steps{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
    counter-reset:calculator-step;
}

.adp-calculator-content .adp-converter-step{
    min-width:0;
    padding:23px;
    background:var(--adp-soft);
    border:1px solid var(--adp-line);
    border-radius:18px;
    counter-increment:calculator-step;
}

.adp-calculator-content .adp-converter-step::before{
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    margin-bottom:15px;
    color:#fff;
    background:var(--adp-cyan);
    border-radius:12px;
    font-family:"Montserrat",sans-serif;
    font-size:15px;
    font-weight:700;
    content:counter(calculator-step);
}

.adp-calculator-content .adp-converter-step:nth-child(even)::before{
    background:var(--adp-orange);
}

.adp-calculator-content .adp-converter-step p{
    color:var(--adp-muted);
}


/* =========================================================
   CHECKLIST
   ========================================================= */

.adp-calculator-content .adp-converter-checklist{
    display:grid;
    gap:13px;
    margin-top:23px;
}

.adp-calculator-content .adp-converter-check{
    display:flex;
    align-items:flex-start;
    gap:13px;
    min-width:0;
    padding:17px 18px;
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:15px;
}

.adp-calculator-content .adp-converter-check-number{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:30px;
    height:30px;
    color:#fff;
    background:var(--adp-cyan);
    border-radius:9px;
    font-family:"Montserrat",sans-serif;
    font-size:13px;
    font-weight:700;
}

.adp-calculator-content .adp-converter-check:nth-child(even)
.adp-converter-check-number{
    background:var(--adp-orange);
}

.adp-calculator-content .adp-converter-check p{
    margin:0;
    color:var(--adp-muted);
}


/* =========================================================
   NOTICES
   ========================================================= */

.adp-calculator-content .adp-converter-notices{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin-top:27px;
}

.adp-calculator-content .adp-converter-notice{
    padding:24px;
    border-radius:17px;
}

.adp-calculator-content .adp-converter-notice-primary{
    background:var(--adp-warm);
    border:1px solid rgba(252,144,18,.42);
    border-right:5px solid var(--adp-orange);
}

.adp-calculator-content .adp-converter-notice-secondary{
    background:var(--adp-soft);
    border:1px solid var(--adp-line);
    border-right:5px solid var(--adp-cyan);
}

.adp-calculator-content .adp-converter-notice p{
    color:var(--adp-muted);
}


/* =========================================================
   FAQ
   ========================================================= */

.adp-calculator-content .adp-converter-faq-list{
    display:grid;
    gap:14px;
    margin-top:24px;
}

.adp-calculator-content .adp-converter-faq-list details{
    overflow:hidden;
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:15px;
}

.adp-calculator-content .adp-converter-faq-list summary{
    position:relative;
    display:block;
    padding:19px 56px 19px 22px;
    color:var(--adp-ink);
    background:var(--adp-soft);
    cursor:pointer;
    font-weight:700;
    list-style:none;
}

.adp-calculator-content
.adp-converter-faq-list
summary::-webkit-details-marker{
    display:none;
}

.adp-calculator-content .adp-converter-faq-list summary::before{
    position:absolute;
    top:50%;
    right:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:25px;
    height:25px;
    color:#fff;
    background:var(--adp-cyan);
    border-radius:50%;
    font-size:17px;
    font-weight:700;
    transform:translateY(-50%);
    content:"+";
}

.adp-calculator-content
.adp-converter-faq-list
details[open] summary::before{
    background:var(--adp-orange);
    content:"−";
}

.adp-calculator-content .adp-converter-faq-answer{
    padding:20px 22px;
    color:var(--adp-muted);
}


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

.adp-calculator-content .adp-converter-links{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
}

.adp-calculator-content .adp-converter-links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:10px 18px;
    color:var(--adp-ink);
    background:var(--adp-white);
    border:1px solid var(--adp-line);
    border-radius:12px;
    font-weight:700;
    line-height:1.5;
    text-decoration:none;
    transition:
        color .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.adp-calculator-content .adp-converter-links a:hover,
.adp-calculator-content .adp-converter-links a:focus{
    color:#fff;
    background:var(--adp-cyan);
    border-color:var(--adp-cyan);
    transform:translateY(-2px);
}


/* =========================================================
   SOCIAL
   ========================================================= */

.adp-calculator-content .adp-converter-social{
    padding:28px;
    background:var(--adp-soft);
    border:1px solid var(--adp-line);
    border-radius:20px;
}

.adp-calculator-content .adp-converter-social p{
    color:var(--adp-muted);
}

.adp-calculator-content .adp-converter-social-links a:first-child{
    border-color:rgba(252,144,18,.65);
}

.adp-calculator-content
.adp-converter-social-links
a:first-child:hover,
.adp-calculator-content
.adp-converter-social-links
a:first-child:focus{
    background:var(--adp-orange);
    border-color:var(--adp-orange);
}

.adp-calculator-content .adp-converter-social-links a:last-child{
    border-color:rgba(0,189,221,.65);
}


/* =========================================================
   SPACING BETWEEN TOOL + EDITORIAL CONTENT
   ========================================================= */

.adp-calculator-content{
    margin-top:48px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:1050px){

    .adp-calculator-content .adp-converter-steps{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:900px){

    .adp-calculator-content .adp-converter-overview-grid,
    .adp-calculator-content .adp-converter-formats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:767px){

    .adp-calculator-content{
        margin-top:34px;
        font-size:15px;
        line-height:1.9;
    }

    .adp-calculator-content h2{
        font-size:25px;
    }

    .adp-calculator-content .adp-converter-section{
        margin-top:41px;
    }

    .adp-calculator-content .adp-converter-image{
        margin-bottom:27px;
        padding:12px;
        border-radius:16px;
    }

    .adp-calculator-content .adp-converter-image img{
        border-radius:10px;
    }

    .adp-calculator-content .adp-converter-hero{
        padding:23px 21px;
        border-radius:17px;
    }

    .adp-calculator-content .adp-converter-overview-grid,
    .adp-calculator-content .adp-converter-formats,
    .adp-calculator-content .adp-converter-steps,
    .adp-calculator-content .adp-converter-notices{
        grid-template-columns:1fr;
    }

    .adp-calculator-content .adp-converter-overview-card,
    .adp-calculator-content .adp-converter-format-card,
    .adp-calculator-content .adp-converter-step,
    .adp-calculator-content .adp-converter-social{
        padding:21px;
    }

    .adp-calculator-content .adp-converter-links{
        flex-direction:column;
    }

    .adp-calculator-content .adp-converter-links a{
        width:100%;
    }
}


/* =========================================================
   CALCULATOR CONTENT WIDE LAYOUT — v1.0.2
   Wide visuals + comfortable editorial reading width
   ========================================================= */

.adp-calculator-content{
    width:min(100%,1400px);
    max-width:1400px;
    margin:48px auto 0;
    padding-inline:0;
}

/*
 * Keep long editorial text readable.
 * Visual components remain full width.
 */
.adp-calculator-content
.adp-converter-section
> h2,

.adp-calculator-content
.adp-converter-section
> h3,

.adp-calculator-content
.adp-converter-section
> p,

.adp-calculator-content
.adp-converter-section
> ul,

.adp-calculator-content
.adp-converter-section
> ol,

.adp-calculator-content
.adp-converter-section
> .adp-converter-badge{
    max-width:1080px;
}

/*
 * RTL pages should keep the text column aligned
 * naturally to the right instead of centering it.
 */
.adp-calculator-content
.adp-converter-section
> h2,

.adp-calculator-content
.adp-converter-section
> h3,

.adp-calculator-content
.adp-converter-section
> p,

.adp-calculator-content
.adp-converter-section
> ul,

.adp-calculator-content
.adp-converter-section
> ol{
    margin-inline-start:auto;
    margin-inline-end:0;
}

/*
 * Main visual blocks use the full available width.
 */
.adp-calculator-content .adp-converter-image,
.adp-calculator-content .adp-converter-hero,
.adp-calculator-content .adp-converter-overview-grid,
.adp-calculator-content .adp-converter-formats,
.adp-calculator-content .adp-converter-table-wrap,
.adp-calculator-content .adp-converter-steps,
.adp-calculator-content .adp-converter-checklist,
.adp-calculator-content .adp-converter-notices,
.adp-calculator-content .adp-converter-faq-list,
.adp-calculator-content .adp-converter-links,
.adp-calculator-content .adp-converter-social{
    width:100%;
    max-width:none;
}

/*
 * Give large images a little more presence on desktop
 * while preserving their aspect ratio.
 */
.adp-calculator-content .adp-converter-image{
    padding:14px;
}

.adp-calculator-content .adp-converter-image img{
    width:100%;
    max-width:none;
}

/*
 * Wider content area benefits from slightly roomier cards.
 */
@media (min-width:1180px){

    .adp-calculator-content .adp-converter-overview-grid,
    .adp-calculator-content .adp-converter-formats{
        gap:22px;
    }

    .adp-calculator-content .adp-converter-steps{
        gap:20px;
    }

    .adp-calculator-content .adp-converter-overview-card,
    .adp-calculator-content .adp-converter-format-card{
        padding:28px;
    }
}

/*
 * Tablet keeps the container fluid.
 */
@media (max-width:1450px){

    .adp-calculator-content{
        width:100%;
        max-width:100%;
    }
}

/*
 * Mobile keeps safe side spacing.
 */
@media (max-width:767px){

    .adp-calculator-content{
        width:100%;
        max-width:100%;
        margin-top:34px;
    }

    .adp-calculator-content
    .adp-converter-section
    > h2,

    .adp-calculator-content
    .adp-converter-section
    > h3,

    .adp-calculator-content
    .adp-converter-section
    > p,

    .adp-calculator-content
    .adp-converter-section
    > ul,

    .adp-calculator-content
    .adp-converter-section
    > ol{
        max-width:none;
    }
}


/* =========================================================
   ADP CALCULATORS PORTAL — PHASE 13A
   ========================================================= */

.adp-calculators-portal{
    --adp-orange:#fc9012;
    --adp-cyan:#00bddd;
    --adp-ink:#172033;
    --adp-muted:#64748b;
    --adp-line:#dce7ee;
    --adp-soft:#f5f9fc;
    --adp-warm:#fff8ef;
    --adp-white:#ffffff;

    width:100%;
    max-width:1400px;
    margin:0 auto;
    padding:28px 0 60px;
    direction:rtl;
    color:var(--adp-ink);
    font-family:"Cairo",sans-serif;
}

.adp-calculators-portal *,
.adp-calculators-portal *::before,
.adp-calculators-portal *::after{
    box-sizing:border-box;
}

.adp-calculators-portal-hero{
    position:relative;
    padding:42px;
    overflow:hidden;
    background:
        linear-gradient(
            135deg,
            rgba(252,144,18,.09),
            rgba(0,189,221,.08)
        );
    border:1px solid var(--adp-line);
    border-radius:24px;
}

.adp-calculators-portal-badge{
    display:inline-flex;
    margin-bottom:16px;
    padding:7px 15px;
    background:var(--adp-warm);
    border:1px solid rgba(252,144,18,.4);
    border-radius:999px;
    font-weight:700;
}

.adp-calculators-portal h1{
    max-width:900px;
    margin:0 0 15px;
    color:var(--adp-ink);
    font-family:"Cairo",sans-serif !important;
    font-size:clamp(30px,4vw,46px);
    line-height:1.45;
    font-weight:700 !important;
}

.adp-calculators-portal-hero p{
    max-width:900px;
    margin:0;
    color:var(--adp-muted);
    font-size:17px;
    line-height:1.9;
}

.adp-calculators-portal-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:28px;
}

.adp-calculators-portal-card{
    display:flex;
    flex-direction:column;
    min-height:260px;
    padding:27px;
    color:var(--adp-ink);
    background:rgba(255,255,255,.92);
    border:1px solid var(--adp-line);
    border-radius:20px;
    box-shadow:0 10px 30px rgba(23,32,51,.055);
    text-decoration:none !important;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.adp-calculators-portal-card:hover,
.adp-calculators-portal-card:focus{
    color:var(--adp-ink);
    border-color:rgba(0,189,221,.48);
    box-shadow:0 14px 36px rgba(23,32,51,.09);
    transform:translateY(-4px);
}

.adp-calculators-portal-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:46px;
    height:46px;
    margin-bottom:20px;
    color:#fff;
    background:var(--adp-cyan);
    border-radius:14px;
    font-family:"Montserrat",sans-serif;
    font-weight:700;
}

.adp-calculators-portal-card:nth-child(even)
.adp-calculators-portal-icon{
    background:var(--adp-orange);
}

.adp-calculators-portal-card h2{
    margin:0 0 10px;
    color:var(--adp-ink);
    font-family:"Cairo",sans-serif !important;
    font-size:21px;
    line-height:1.55;
    font-weight:700 !important;
}

.adp-calculators-portal-card p{
    margin:0 0 20px;
    color:var(--adp-muted);
    line-height:1.85;
}

.adp-calculators-portal-link{
    margin-top:auto;
    color:var(--adp-cyan);
    font-weight:700;
}

.adp-calculators-portal-card:nth-child(even)
.adp-calculators-portal-link{
    color:var(--adp-orange);
}

@media (max-width:1024px){

    .adp-calculators-portal-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:767px){

    .adp-calculators-portal{
        padding:18px 0 42px;
    }

    .adp-calculators-portal-hero{
        padding:25px 21px;
        border-radius:18px;
    }

    .adp-calculators-portal-hero p{
        font-size:15px;
    }

    .adp-calculators-portal-grid{
        grid-template-columns:1fr;
        gap:15px;
    }

    .adp-calculators-portal-card{
        min-height:0;
        padding:22px;
    }
}
