/*
  Token desain Ideasophia.
  Dua lapis: primitif (--is-c-*) berisi nilai mentah; semantik (--is-bg-*, --is-text-*, dst.) merujuk primitif.
  Komponen hanya memakai token semantik. Mode malam cukup menimpa token semantik.
*/
:root {
    /* Primitif warna */
    --is-c-ink: #231F20;
    --is-c-forest: #2C7C41;
    --is-c-forest-dark: #215E31;
    --is-c-leaf: #37A749;
    --is-c-sprout: #83C441;
    --is-c-cream: #F4F6D2;
    --is-c-jungle: #2B4331;
    --is-c-orange: #EDAD5A;
    --is-c-sun: #DEE21D;
    --is-c-night-vision: #B3261E;

    /* Semantik warna */
    --is-bg-public: #FAFBF3;
    --is-bg-app: #F5F6EC;
    --is-bg-surface: #FFFFFF;
    --is-bg-side: #FBFBF5;
    --is-bg-soft: #F0F2E2;
    --is-bg-soft-2: #ECEEDC;
    --is-line: #E2E5CF;
    --is-line-strong: #CBD0B0;
    --is-text-heading: var(--is-c-ink);
    --is-text: #3A4439;
    --is-text-2: #4A5347;
    --is-text-muted: #667062;
    --is-text-disabled: #9AA293;
    --is-on-accent: #FFFFFF;
    --is-on-color: #FFFFFF;
    --is-accent: var(--is-c-forest);
    --is-accent-hover: var(--is-c-forest-dark);
    --is-accent-soft: #DCEFD3;
    --is-accent-text: #1F5B2E;
    --is-accent-ring: #CFE8C4;

    /* Status */
    --is-status-todo-bg: #EEF0E4;
    --is-status-todo-text: var(--is-text-2);
    --is-status-in-progress-bg: #E3EEF8;
    --is-status-in-progress-text: #1F4E7A;
    --is-status-in-progress-border: #2F6FB0;
    --is-status-review-bg: #FCEFD9;
    --is-status-review-text: #7A4A0B;
    --is-status-review-border: var(--is-c-orange);
    --is-status-done-bg: var(--is-accent-soft);
    --is-status-done-text: var(--is-accent-text);
    --is-status-danger-bg: #FFF5F3;
    --is-status-danger-text: #B42318;
    --is-status-danger-text-strong: #9A1B12;
    --is-status-danger-border: #F1C9C4;
    --is-status-blocked-bg: var(--is-status-danger-bg);
    --is-status-blocked-text: var(--is-status-danger-text);
    --is-status-blocked-border: var(--is-status-danger-border);
    --is-status-cancelled-bg: var(--is-status-todo-bg);
    --is-status-cancelled-text: var(--is-status-todo-text);

    /* Sophia */
    --is-sophia-assistant-bg: #FFF6E8;
    --is-sophia-assistant-border: #E7C99A;
    --is-sophia-tutor-bg: var(--is-c-jungle);
    --is-sophia-tutor-text: #1F3A24;
    --is-sophia-tutor-accent: #C8E6A0;
    --is-sophia-assistant-bg-hover: #FCEFD9;

    /* Peran anggota */
    --is-role-owner-bg: var(--is-c-ink);
    --is-role-owner-text: var(--is-c-cream);
    --is-role-editor-bg: var(--is-c-cream);
    --is-role-editor-text: var(--is-c-jungle);

    /* Highlight PDF */
    --is-highlight-yellow: rgba(255, 214, 0, .38);
    --is-highlight-green: rgba(131, 196, 65, .35);
    --is-highlight-blue: rgba(88, 166, 255, .35);
    --is-highlight-orange: var(--is-c-orange);

    /* Kategori project dan catatan */
    --is-cat-memory: var(--is-c-forest);
    --is-cat-astronomy: #2F6FB0;
    --is-cat-philosophy: #C98A2E;
    --is-cat-method: #8C6BB1;

    /* Tipografi */
    --is-font-brand: 'Source Code Pro', ui-monospace, monospace;
    --is-font-ui: 'Source Sans 3', system-ui, sans-serif;
    --is-font-read: 'Source Serif 4', Georgia, serif;

    --is-fs-display-lg: 3.75rem;
    --is-lh-display-lg: 4.25rem;
    --is-fs-display: 3rem;
    --is-lh-display: 3.5rem;

    --is-fs-h1: 2rem;
    --is-lh-h1: 2.5rem;

    --is-fs-h2: 1.375rem;
    --is-lh-h2: 1.875rem;

    --is-fs-title: 1.25rem;
    --is-lh-title: 1.75rem;

    --is-fs-read: 1.1875rem;
    --is-lh-read: 2rem;

    --is-fs-body: 0.9375rem;
    --is-lh-body: 1.5rem;

    --is-fs-small: 0.8125rem;
    --is-lh-small: 1.25rem;

    --is-fs-label: 0.75rem;
    --is-lh-label: 1rem;

    --is-fs-micro: 0.6875rem;
    --is-lh-micro: 0.875rem;

    /* untuk label seksi (PROJECT, PENGETAHUAN dan sejenisnya) */
    --is-ls-label: 0.1em;
    /* wordmark IDEASOPHIA */
    --is-ls-brand: 0.14em;

    /* Ketebalan huruf */
    --is-fw-regular: 400;
    --is-fw-medium: 500;
    --is-fw-semibold: 600;
    --is-fw-bold: 700;

    /* Spasi */
    --is-space-1: 0.25rem;
    --is-space-2: 0.5rem;
    --is-space-3: 0.75rem;
    --is-space-4: 1rem;
    --is-space-5: 1.25rem;
    --is-space-6: 1.5rem;
    --is-space-7: 2rem;
    --is-space-8: 2.5rem;
    --is-space-9: 3rem;
    --is-space-10: 4rem;
    --is-space-11: 5rem;
    --is-space-12: 7rem;

    /* Radius */
    --is-radius-chip: 6px;
    --is-radius-nav: 8px;
    /* input dan tombol */
    --is-radius-control: 10px;
    --is-radius-card-sm: 12px;
    --is-radius-card: 16px;
    --is-radius-modal: 20px;
    --is-radius-pill: 999px;

    /* Bayangan */
    --is-shadow-card: 0 1px 2px rgba(35, 31, 32, .06), 0 4px 16px rgba(43, 67, 49, .06);
    --is-shadow-float: 0 12px 32px rgba(43, 67, 49, .12);
    --is-shadow-modal: 0 24px 64px rgba(35, 31, 32, .3);
    --is-focus-ring: 0 0 0 3px var(--is-accent-soft);

    /* Ukuran tata letak */
    --is-size-topbar: 60px;
    --is-size-sidebar: 248px;
    --is-size-rail: 64px;
    --is-size-panel: 360px;
    --is-size-touch: 44px;
    --is-size-gutter: 80px;
    --is-size-content: 1280px;

    /* Gerak */
    --is-dur-hover: 150ms;
    --is-dur-panel: 180ms;
    --is-ease: ease;
}

/* Mode malam: hanya token semantik yang ditimpa */
[data-mode="malam"],
[data-theme="dark"] {
    --is-bg-public: #121A14;
    --is-bg-app: var(--is-bg-public);
    --is-bg-surface: #1C2820;
    --is-bg-side: #172019;
    --is-bg-soft: #243226;
    --is-bg-soft-2: #2F4033;
    --is-line: #2A3A2E;
    --is-line-strong: #3F5A46;
    --is-text-heading: var(--is-c-cream);
    --is-text: #E6EBD8;
    --is-text-2: #D5DCC6;
    --is-text-muted: #A8B39C;
    --is-text-disabled: #7F8C76;
    --is-accent: #C8E6A0;
    --is-accent-hover: #E3F3CC;
    --is-accent-soft: #1F3A24;
    --is-accent-text: #C8E6A0;
    --is-on-accent: #121A14;
    --is-accent-ring: #2F4033;
    --is-status-todo-bg: var(--is-bg-soft-2);
    --is-status-in-progress-bg: #1B2C3D;
    --is-status-in-progress-text: #9CC7F0;
    --is-status-in-progress-border: #3E7CB8;
    --is-status-review-bg: #3A2C14;
    --is-status-review-text: #F1C27D;
    --is-status-danger-bg: #3A1D1A;
    --is-status-danger-text: #F2A49B;
    --is-status-danger-text-strong: #F8C4BD;
    --is-status-danger-border: #6B2E28;
    --is-sophia-assistant-bg: #33291A;
    --is-sophia-assistant-border: #6E5733;
    --is-sophia-assistant-bg-hover: #3F321E;
    --is-role-owner-bg: var(--is-c-cream);
    --is-role-owner-text: var(--is-c-ink);
    --is-role-editor-bg: var(--is-bg-soft-2);
    --is-role-editor-text: var(--is-c-cream);

}

/* Gerak dikurangi */
@media (prefers-reduced-motion: reduce) {
    :root {
        --is-dur-hover: 0ms;
        --is-dur-panel: 0ms;
    }
}