:root{

    

    --ink:#172536;
    --forest:#173b5f;
    --forest2:#245f8f;
    --sage:#e8f0f7;
    --cream:#fbfaf7;
    --white:#fff;
    --sand:#eee9df;
    --brass:#b78943;
    --terracotta:#bd654b;
    --muted:#66727e;

    /* Semantic aliases used throughout the application. */
    --primary:var(--forest);
    --primary-hover:var(--forest2);
    --primary-active:var(--ink);
    --primary-contrast:var(--white);

    --accent-color:var(--brass);
    --accent-soft:color-mix(in srgb,var(--brass) 12%,transparent);
    --accent-border:color-mix(in srgb,var(--brass) 30%,transparent);
    --focus-ring:color-mix(in srgb,var(--forest2) 22%,transparent);

    --bg:var(--cream);
    --surface:var(--white);
    --surface-light:var(--sage);
    --border:var(--sand);
    --text:var(--ink);
    --text-muted:var(--muted);

    --bg-primary:var(--cream);
    --bg-secondary:var(--white);
    --bg-tertiary:var(--sage);
    --surface-color:var(--white);
    --text-color:var(--ink);
    --text-secondary:var(--muted);
    --border-color:var(--sand);
    --primary-color:var(--forest);

    --text-primary:var(--ink);
    --surface-strong:var(--white);
    --surface-panel:var(--white);
    --panel-border:var(--sand);
    --panel-border-soft:color-mix(in srgb,var(--ink) 10%,transparent);
    --panel-hover:var(--sage);
    --input-bg:var(--white);
    --overlay:rgba(23,37,54,.55);

    /* Status / utility semantics using the approved palette. */
    --success:var(--forest2);
    --danger:var(--terracotta);
    --warning:var(--brass);
    --link:var(--forest2);
    --link-hover:var(--forest);

    --radius:14px;

    --transition:all .2s ease;

    --shadow-sm:0 2px 8px rgba(23,37,54,.08);
    --shadow:0 8px 25px rgba(23,37,54,.12);
    --shadow-lg:0 20px 50px rgba(23,37,54,.18);

}
