/* Tokens del DS de IACC. Generado desde theme/mb2nl_iacc/scss/ds.scss:
   NO editar aqui — se edita alli y esta salida sigue. */

@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url('https://aulas.iacc.cl/theme/mb2nl_iacc/fonts/jakarta/PlusJakartaSans-Regular.ttf') format('truetype');}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url('https://aulas.iacc.cl/theme/mb2nl_iacc/fonts/jakarta/PlusJakartaSans-Medium.ttf') format('truetype');}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url('https://aulas.iacc.cl/theme/mb2nl_iacc/fonts/jakarta/PlusJakartaSans-SemiBold.ttf') format('truetype');}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url('https://aulas.iacc.cl/theme/mb2nl_iacc/fonts/jakarta/PlusJakartaSans-Bold.ttf') format('truetype');}

:root {
    --iacc-primary: #082129;
    --iacc-primary-light: #1d3a3f;
    --iacc-accent: #52a400;
    --iacc-accent-dark: #3d7a00;
    /* AA-safe green for text set directly on --iacc-accent-light (accent-dark
       only gives 4.41:1 there; this gives 5.38:1). Bg/border roles keep using
       accent-dark, which is already AA-safe (5.27:1) against white. */
    --iacc-accent-darker: #356b00;
    --iacc-accent-light: #cbf8ab;
    --iacc-footer-bg: #353535;
    --iacc-footer-bg-deep: #2c2c2c;
    --iacc-bg: #ffffff;
    /* Page canvas one step below the white cards (Figma tokens.json 2026-07,
       change confirmed by Design); mirrors the dark-mode depth model. */
    --iacc-content-bg: #f6f7f9;
    --iacc-surface: #f3f3f3;
    /* Veil behind modals and drawers. Deeper in dark so the sheet still reads
       as raised against an already dark page (Figma color/overlay). */
    --iacc-overlay: rgba(0, 0, 0, 0.4);
    --iacc-surface-mid: #f9f9f9;
    --iacc-surface-light: #f4f4f4;
    --iacc-surface-alt: #f3f5f9;
    /* Neutral DARK surface, for a card that is dark in BOTH modes (the exemption
       card of the blocks panel, §5.15). Deliberately NOT redefined under
       [data-theme="dark"]: it is the one surface that must not flip. The design
       picks the value from Figma's text/dark, but that token is a TEXT colour and
       does flip, so consuming it here painted an almost white card in dark mode. */
    --iacc-surface-dark: #333333;
    --iacc-text-primary: #212529;
    --iacc-text-dark: #333333;
    --iacc-text-body: #383938;
    --iacc-text-secondary: #4a5568;
    --iacc-text-muted: #6b6b6b; /* was #878787 — 3.59:1 on white, FAIL AA. Now 5.32:1 */
    --iacc-text-light: #bbbbbb;
    --iacc-border: rgba(8, 33, 41, .1);
    --iacc-border-soft: rgba(8, 33, 41, .06);
    --iacc-input-border: #ebebeb;
    --iacc-on-primary: #ffffff;
    --iacc-on-accent: #ffffff;

    /* Secondary button — the navy-filled action (Figma, ago-2026). The ONLY navy fill
       with its own pair of values per theme, and the reason it needs them: --iacc-primary
       is a fixed anchor that never changes between themes (by design), and navy on the
       dark canvas is 1.07:1 — the label still reads, but the button stops looking like a
       button. In dark it INVERTS to a light fill with dark text (13.09:1 silhouette).
       Anything filled navy that has to survive dark mode uses these, not --iacc-primary. */
    --iacc-btn-secondary-bg: #082129;
    --iacc-btn-secondary-text: #f6f6f6;
    --iacc-btn-secondary-hover-bg: #1d3a3f;

    /* Open row of a menu with a sub panel (Boost's compiled $gray-200). */
    --iacc-menu-item-active-bg: #e9ecef;

    /* Selected <option> of a list box (§72b). */
    --iacc-option-selected-bg: #1d3a3f;
    --iacc-option-selected-text: #ffffff;

    /* Type scale (mirrors ds/assets/css/colors_and_type.css). */
    --iacc-fs-hero: 2.625rem;
    --iacc-fs-h1: 2rem;
    --iacc-fs-h2: 1.375rem;
    --iacc-fs-h3: 1.25rem;
    --iacc-fs-body-lg: 1rem;
    --iacc-fs-body: 1rem;
    --iacc-fs-sm: 0.875rem;
    --iacc-fs-label: 0.75rem;

    --iacc-radius-sm: 4px;
    --iacc-radius-md: 8px; /* default: buttons, cards, inputs */
    --iacc-radius-lg: 12px;
    --iacc-radius-xl: 16px;
    --iacc-radius-pill: 9999px; /* badges/chips only, never CTAs */

    --iacc-shadow-card: 0 2px 8px rgba(8, 33, 41, .08);
    --iacc-shadow-card-hover: 0 8px 24px rgba(8, 33, 41, .14);
    --iacc-shadow-nav: 0 2px 12px rgba(0, 0, 0, .12);
    /* Scroll affordance and thin scrollbars; light values mirror Boost's. */
    --iacc-scroll-shadow: rgba(0, 0, 0, .2);
    --iacc-scrollbar-thumb: #6a737b;
    --iacc-scrollbar-thumb-hover: #495057;

    /* Accent used AS TEXT: dark enough for light bg, remapped in §10 for dark.
       Consumed by tokenized legacy content styles (mosaico.scss). */
    --iacc-accent-text: var(--iacc-accent-dark);

    /* Badge palette (Figma tokens.json 2026-07, per-family bg/text pairs). */
    --iacc-badge-accent-bg: var(--iacc-accent-light);
    --iacc-badge-accent-text: var(--iacc-accent-darker);
    --iacc-badge-primary-bg: #ebedee;
    --iacc-badge-primary-text: #082129;
    --iacc-badge-warn-bg: #fff4e5;
    --iacc-badge-warn-text: #8a5400;
    --iacc-badge-error-bg: #fde8e8;
    --iacc-badge-error-text: #b02525;
    /* Texto atenuado SOBRE un chip pastel. Es el gris de --iacc-text-muted, pero en
       token propio porque este NO voltea en oscuro: los pasteles del DS se quedan
       claros, asi que su texto tiene que quedarse oscuro. Con el muted de oscuro
       (#8a9794) caeria a 2,58:1 sobre el pastel. */
    --iacc-badge-muted-text: #6b6b6b;  /* 4.54:1 on --iacc-badge-error-bg */
    --iacc-badge-info-bg: #e6f0fb;
    --iacc-badge-info-text: #256a9e;

    /* Badge border + interactive states (Figma Badge 32:12, 2026-09). Hover, focus and
       disabled only exist for Interactive=true; aliases where the value already exists. */
    --iacc-badge-primary-border: #69949c;
    --iacc-badge-warn-border: #c77900;
    --iacc-badge-info-border: #3d92d2;
    --iacc-badge-accent-border: #4e9e00;
    --iacc-badge-error-border: #df6767;
    --iacc-badge-primary-hover-bg: var(--iacc-primary-light);
    --iacc-badge-primary-hover-text: var(--iacc-on-primary);
    --iacc-badge-warn-hover-bg: var(--iacc-badge-warn-text);
    --iacc-badge-warn-hover-text: var(--iacc-badge-warn-bg);
    --iacc-badge-info-hover-bg: var(--iacc-info);
    --iacc-badge-info-hover-text: var(--iacc-on-primary);
    --iacc-badge-accent-hover-bg: var(--iacc-accent);
    --iacc-badge-accent-hover-text: var(--iacc-primary);
    --iacc-badge-error-hover-bg: #c02020;
    --iacc-badge-error-hover-text: var(--iacc-on-primary);
    --iacc-badge-focus-ring: var(--iacc-link-focus-ring);
    /* Disabled: 3:1 text on purpose (exempt, WCAG 1.4.3). */
    --iacc-badge-primary-disabled-bg: #eeefef;
    --iacc-badge-primary-disabled-text: #808c90;
    --iacc-badge-primary-disabled-border: #aeb5b8;
    --iacc-badge-warn-disabled-bg: #f5f1ec;
    --iacc-badge-warn-disabled-text: #ab8549;
    --iacc-badge-warn-disabled-border: #d7c5aa;
    --iacc-badge-info-disabled-bg: #ecf0f4;
    --iacc-badge-info-disabled-text: #5d90b6;
    --iacc-badge-info-disabled-border: #b4cadc;
    --iacc-badge-accent-disabled-bg: #e3f3d8;
    --iacc-badge-accent-disabled-text: #6b9543;
    --iacc-badge-accent-disabled-border: #b2cd9c;
    --iacc-badge-error-disabled-bg: #f5eded;
    --iacc-badge-error-disabled-text: #ca6f6f;
    --iacc-badge-error-disabled-border: #e2b5b5;

    /* Tag "unread" (Figma color/tag-unread-*): the badge-primary pair inverted,
       dark chip here and light chip in dark mode. 9.5:1. */
    --iacc-tag-unread-bg: #26363b;
    --iacc-tag-unread-text: #d8e2e5;

    /* Avatar (DESIGN.md §5.4.5). Fixed component scale, not tied to
       --iacc-sp-* — same pattern as --shadow-card. xl reuses the size
       already used by .phero-avatar (ds/assets/css/profile.css), not a
       new number invented for this component. */
    --iacc-avatar-ring: var(--iacc-bg);

    /* Solid status dots for AvatarIndicator — dedicated tokens because the
       existing --iacc-badge-* pairs are pale-bg/dark-text, not solid dots.
       Not yet contrast-audited (see DESIGN.md §5.4.5); acceptable because
       the indicator is never the sole conveyor of meaning (WCAG 1.4.1). */
    --iacc-avatar-indicator-success: var(--iacc-accent);
    --iacc-avatar-indicator-danger: #d41d1d;
    --iacc-avatar-indicator-warning: #f6ad55;

    /* Semantic solids (Figma tokens.json) — used by ported DS components. */
    --iacc-error: #d41d1d;
    --iacc-warning: #f6ad55;
    --iacc-info: #296dad;

    /* Spacing scale (DESIGN.md §2.3) — consumed by ported DS components (§20). */
    --iacc-sp-xs: 0.25rem;
    --iacc-sp-sm: 0.5rem;
    --iacc-sp-md: 1rem;
    --iacc-sp-lg: 1.5rem;
    --iacc-sp-xl: 2rem;
    /* Badge padding (Figma spacing/badge-h · badge-v). In px, not rem: the chip
       must keep the same shape whatever the surrounding font size. */
    --iacc-sp-badge-h: 10px;
    --iacc-sp-badge-v: 4px;
    /* Small-button padding (Figma spacing/btn-sm-h · btn-sm-v), in px for the
       same reason: the 28px-tall SM button must not grow with the context. */
    --iacc-sp-btn-sm-h: 16px;
    --iacc-sp-btn-sm-v: 8px;
    /* Ghost horizontal padding (Figma spacing/ghost-h), en px por lo mismo. */
    --iacc-sp-ghost-h: 12px;

    /* Base line-height and body font for ported DS components. */
    --iacc-lh-base: 1.6;
    --iacc-font-body: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;

    /* Link roles (DS). */
    --iacc-link-default: var(--iacc-accent-dark);
    --iacc-link-active: var(--iacc-accent-darker);
    --iacc-link-visited: #705092;
    --iacc-link-focus-ring: var(--iacc-accent-dark);
    --iacc-link-disabled: var(--iacc-text-muted);

    /* Identity / categorical palette (DESIGN.md §2.1.2). 8 hue anchors for
       avatar initials (no photo) / person chips — lets same-name, same-initials
       people be told apart. NOT the semantic tokens (error/warning): reusing
       them would muddle meaning. Bg + fg derive via color-mix against
       --iacc-surface / --iacc-text-primary (both flip per theme) → contrast
       >=4.5:1 AA guaranteed in light AND dark, no per-theme duplication, no
       stray hex downstream. Assignment: stable hash(userid) % 8 -> slot 1..8. */
    --iacc-id-1: #0f766e;  /* teal (brand)  */
    --iacc-id-2: #4d7c0f;  /* green (brand) */
    --iacc-id-3: #2563eb;  /* blue          */
    --iacc-id-4: #7c3aed;  /* violet        */
    --iacc-id-5: #db2777;  /* rose/magenta  */
    --iacc-id-6: #b45309;  /* amber         */
    --iacc-id-7: #be452f;  /* terracotta    */
    --iacc-id-8: #0891b2;  /* cyan          */
    --iacc-id-bg-1: color-mix(in srgb, var(--iacc-id-1) 15%, var(--iacc-surface));
    --iacc-id-fg-1: color-mix(in srgb, var(--iacc-id-1) 62%, var(--iacc-text-primary));
    --iacc-id-bg-2: color-mix(in srgb, var(--iacc-id-2) 15%, var(--iacc-surface));
    --iacc-id-fg-2: color-mix(in srgb, var(--iacc-id-2) 62%, var(--iacc-text-primary));
    --iacc-id-bg-3: color-mix(in srgb, var(--iacc-id-3) 15%, var(--iacc-surface));
    --iacc-id-fg-3: color-mix(in srgb, var(--iacc-id-3) 62%, var(--iacc-text-primary));
    --iacc-id-bg-4: color-mix(in srgb, var(--iacc-id-4) 15%, var(--iacc-surface));
    --iacc-id-fg-4: color-mix(in srgb, var(--iacc-id-4) 62%, var(--iacc-text-primary));
    --iacc-id-bg-5: color-mix(in srgb, var(--iacc-id-5) 15%, var(--iacc-surface));
    --iacc-id-fg-5: color-mix(in srgb, var(--iacc-id-5) 62%, var(--iacc-text-primary));
    --iacc-id-bg-6: color-mix(in srgb, var(--iacc-id-6) 15%, var(--iacc-surface));
    --iacc-id-fg-6: color-mix(in srgb, var(--iacc-id-6) 62%, var(--iacc-text-primary));
    --iacc-id-bg-7: color-mix(in srgb, var(--iacc-id-7) 15%, var(--iacc-surface));
    --iacc-id-fg-7: color-mix(in srgb, var(--iacc-id-7) 62%, var(--iacc-text-primary));
    --iacc-id-bg-8: color-mix(in srgb, var(--iacc-id-8) 15%, var(--iacc-surface));
    --iacc-id-fg-8: color-mix(in srgb, var(--iacc-id-8) 62%, var(--iacc-text-primary));

    /* Alias already consumed by iaccblocks.scss */
    --accent: var(--iacc-accent);
}
