@import "tailwindcss";

@theme {
  --font-sans: 'Inter', sans-serif;
  --font-serif: 'Merriweather', serif;
  --color-paper: #fcfbf7;

  /* Global Theme Colors */
  --color-theme-bg: var(--theme-bg);
  --color-theme-panel: var(--theme-panel);
  --color-theme-text: var(--theme-text);
  --color-theme-muted: var(--theme-muted);
  --color-theme-border: var(--theme-border);
  --color-theme-editor-bg: var(--theme-editor-bg);
  --color-theme-editor-text: var(--theme-editor-text);
}

:root,
.theme-light {
  --theme-bg: #eef2ff;
  --theme-panel: #ffffff;
  --theme-text: #0f172a;
  --theme-muted: #64748b;
  --theme-border: #e2e8f0;
  --theme-editor-bg: #ffffff;
  --theme-editor-text: #0f172a;
}

.theme-dark {
  --theme-bg: #0f172a;
  --theme-panel: #1e293b;
  --theme-text: #f8fafc;
  --theme-muted: #94a3b8;
  --theme-border: #334155;
  --theme-editor-bg: #1e293b;
  --theme-editor-text: #e2e8f0;
}

.theme-sepia {
  --theme-bg: #eaddc4;
  --theme-panel: #fbf8f1;
  --theme-text: #332616;
  --theme-muted: #735e44;
  --theme-border: #dfcdae;
  --theme-editor-bg: #fbf8f1;
  --theme-editor-text: #332616;
}

/* Editor placeholder */
.editor-content:empty:before {
  content: attr(placeholder);
  color: #9ca3af;
  pointer-events: none;
}

/* Custom scrollbar for webkit */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Print styles */
@media print {
  @page {
    margin: 2cm;
    size: auto;
  }

  html,
  body {
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    background: white !important;
    color: black !important;
  }

  #__next {
    height: auto !important;
    overflow: visible !important;
    display: block !important;
    position: relative !important;
  }

  .no-print {
    display: none !important;
  }

  .print-only {
    display: block !important;
  }

  .break-before-page {
    page-break-before: always;
    break-before: page;
  }

  .break-after-page {
    page-break-after: always;
    break-after: page;
  }

  p {
    text-align: justify;
    widows: 3;
    orphans: 3;
    color: black !important;
  }

  h1,
  h2,
  h3,
  h4 {
    color: black !important;
    page-break-after: avoid;
  }

  a {
    text-decoration: none;
    color: black !important;
  }
}