/* MicroArt CSS Architecture — Base tokens, font, resets and document-level defaults. */

/*
Stage 13 font hardening: IRANSans-only loading for every public, account,
support, dashboard and Django admin page. The licensed font files are expected
at static/fonts/iransans/ after running scripts/install_iransans.py.
*/
@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Light.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Light.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Light.ttf") format("truetype");
    font-weight:300;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Regular.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Regular.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Regular.ttf") format("truetype");
    font-weight:400;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Medium.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Medium.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Medium.ttf") format("truetype");
    font-weight:500;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Medium.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Medium.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Medium.ttf") format("truetype");
    font-weight:600;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Bold.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.ttf") format("truetype");
    font-weight:700;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Bold.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.ttf") format("truetype");
    font-weight:800;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Bold.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.ttf") format("truetype");
    font-weight:900;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:MicroArtIRANSans;
    src:url("../fonts/iransans/IRANSansWebFaNum-Bold.woff2") format("woff2"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.woff") format("woff"),
        url("../fonts/iransans/IRANSansWebFaNum-Bold.ttf") format("truetype");
    font-weight:950;
    font-style:normal;
    font-display:swap;
}

:root{
    --ma-font:MicroArtIRANSans;
    --shadow:0 18px 45px rgba(15,23,42,.10);
    --micro-blue:#1f38e5;
    --micro-blue-2:#283de9;
    --micro-cyan:#14b8d4;
    --micro-ink:#0f172a;
    --micro-muted:#64748b;
    --micro-soft:#f4f8ff;
    --micro-border:#e2e8f0;
    --micro-shadow:0 26px 70px rgba(15,23,42,.10);
    --ma-blue:#0b5cff;
    --ma-blue-2:#0747d4;
    --ma-cyan:#12c8f4;
    --ma-navy:#061b3b;
    --ma-text:#0f2545;
    --ma-muted:#6b7a90;
    --ma-border:#e4ebf5;
    --ma-bg:#f7faff;
    --ma-shadow:0 22px 70px rgba(28,64,132,.10);
    --ma-radius:24px;
    --ma-home-blue:#0b5cff;
    --ma-home-blue-2:#0747d4;
    --ma-home-cyan:#10c4ed;
    --ma-home-ink:#0b1b35;
    --ma-home-muted:#64748b;
    --ma-home-line:#dfe8f5;
    --ma-home-soft:#f4f8ff;
    --ma-home-card:#ffffff;
    --ma-home-shadow:0 22px 70px rgba(21,55,112,.10);
    --ma-home-shadow-strong:0 36px 110px rgba(11,92,255,.20);
}

*{box-sizing:border-box}

html{scroll-behavior:smooth;font-family:var(--ma-font)!important}

/* Global IRANSans guard: this stays intentionally strong because older pages,
   form widgets, dashboard cards and admin templates may define font shorthands. */
:where(html,body,body *,button,input,select,textarea,optgroup,option){
    font-family:var(--ma-font)!important;
}
:where(body *::before,body *::after,input::placeholder,textarea::placeholder){
    font-family:var(--ma-font)!important;
}

body,
button,
input,
select,
textarea,
optgroup,
option{
    font-family:var(--ma-font)!important;
}

body{
    margin:0;
    background:linear-gradient(180deg,#f8fbff 0,#f4f7fb 460px,#f7f9fc 100%);
    color:#172033;
    line-height:1.8;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}

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

img{max-width:100%;display:block}

button{cursor:pointer}
