/* ============================================================ */
/* leto.css — canonical Irina editorial theme                   */
/* Activated by <html data-theme="leto"> attribute              */
/* Locked palette per design spec (Anna/Irina May 26 2026)      */
/* ============================================================ */

/* === GLOBAL TOKEN OVERRIDES === */
/* These override the variables defined in style.css :root      */
[data-theme="leto"] {
  /* Primary palette */
  --background-color:     #FAF8F3;  /* Warm White (not pure white) */
  --card-color:           #FFFFFF;  /* Card White */
  --primary-text-color:   #1A1A1A;  /* Main Text (not pure black) */
  --secondary-text-color: #6F6A63;  /* Secondary Text */
  --border-color:         #E5DED3;  /* Border (hairlines) */
  --input-background:     #FFFFFF;

  /* Accent: Champagne Gold replaces blue */
  --accent-color:         #C8B38A;  /* Champagne Gold */
  --accent-hover:         #B49C73;  /* Accent Hover */

  /* Semantic accents (muted, not Bootstrap) */
  --leto-soft-beige:      #F1ECE4;  /* subtle surfaces */
  --leto-success:         #7C9A6D;  /* soft sage */
  --leto-warning:         #D6A24C;  /* warm amber */
  --leto-risk:            #C56A5D;  /* muted terracotta */
}

/* === BODY === */
[data-theme="leto"] body {
  background-color: #FAF8F3;
  color: #1A1A1A;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* === TYPOGRAPHY === */
/* Headings: serif (Georgia is the safe system serif) */
[data-theme="leto"] h1,
[data-theme="leto"] h2,
[data-theme="leto"] h3,
[data-theme="leto"] h4 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  color: #1A1A1A;
}

/* Body text stays sans */
[data-theme="leto"] p,
[data-theme="leto"] li,
[data-theme="leto"] span,
[data-theme="leto"] label {
  font-family: 'Inter', -apple-system, sans-serif;
}

/* === SPECIFICITY OVERRIDES (match body.redesign selectors in redesign.css) === */

[data-theme="leto"] body.redesign {
  background-color: #FAF8F3;
  color: #1A1A1A;
}

/* Main card on intro/login screen */
[data-theme="leto"] body.redesign .card {
  background-color: #FFFFFF;
  border: 0.5px solid #E5DED3;
  color: #1A1A1A;
  box-shadow: none;
}

[data-theme="leto"] body.redesign #intro-screen .card h1,
[data-theme="leto"] body.redesign .card h1,
[data-theme="leto"] body.redesign .card h2,
[data-theme="leto"] body.redesign .card h3 {
  color: #1A1A1A;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
}

[data-theme="leto"] body.redesign .card p,
[data-theme="leto"] body.redesign .card .intro-text {
  color: #6F6A63;
}

/* Feature items inside the main card */
[data-theme="leto"] body.redesign .feature-item {
  background: #FAF8F3;
  border: 0.5px solid #E5DED3;
}

[data-theme="leto"] body.redesign .feature-item .feature-text {
  color: #6F6A63;
}

[data-theme="leto"] body.redesign .feature-item .feature-text strong {
  color: #1A1A1A;
  font-weight: 500;
}

/* Primary CTA button: champagne gold + white text */
[data-theme="leto"] body.redesign button,
[data-theme="leto"] body.redesign .btn,
[data-theme="leto"] body.redesign input[type="submit"] {
  background-color: #C8B38A;
  color: #FFFFFF;
  border: none;
  font-family: 'Inter', -apple-system, sans-serif;
  font-weight: 500;
  letter-spacing: 0.3px;
}

[data-theme="leto"] body.redesign button:hover,
[data-theme="leto"] body.redesign .btn:hover,
[data-theme="leto"] body.redesign input[type="submit"]:hover {
  background-color: #B49C73;
  color: #FFFFFF;
}

/* Secondary buttons (if any with .btn-secondary class) */
[data-theme="leto"] body.redesign .btn-secondary {
  background-color: #FFFFFF;
  color: #1A1A1A;
  border: 0.5px solid #E5DED3;
}

[data-theme="leto"] body.redesign .btn-secondary:hover {
  background-color: #F1ECE4;
}

/* Inputs */
[data-theme="leto"] body.redesign input[type="text"],
[data-theme="leto"] body.redesign input[type="email"],
[data-theme="leto"] body.redesign input[type="password"],
[data-theme="leto"] body.redesign input[type="number"],
[data-theme="leto"] body.redesign select,
[data-theme="leto"] body.redesign textarea {
  background-color: #FFFFFF;
  border: 0.5px solid #E5DED3;
  color: #1A1A1A;
}

[data-theme="leto"] body.redesign input:focus,
[data-theme="leto"] body.redesign select:focus,
[data-theme="leto"] body.redesign textarea:focus {
  border-color: #C8B38A;
  outline: none;
}

/* Intro screen container */
[data-theme="leto"] body.redesign #intro-screen {
  background: #FAF8F3;
}

/* === STATUS PILLS (will use these on report screens later) === */
[data-theme="leto"] .pill-success {
  background: rgba(124, 154, 109, 0.12);
  color: #4F6B45;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
}

[data-theme="leto"] .pill-warning {
  background: rgba(214, 162, 76, 0.15);
  color: #8B6A2C;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
}

[data-theme="leto"] .pill-risk {
  background: rgba(197, 106, 93, 0.12);
  color: #8C443A;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
}

/* ============================================================ */
/* SETTINGS PAGE OVERRIDES (May 26 2026)                         */
/* Settings page uses class-based selectors (no body.redesign)   */
/* ============================================================ */

/* Page header */
[data-theme="leto"] .reports-header {
  background: #FFFFFF;
  border-bottom: 0.5px solid #E5DED3;
}

[data-theme="leto"] .reports-title {
  color: #1A1A1A;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
}

/* Header action buttons (Back to Reports, Logout) */
[data-theme="leto"] .new-report-btn,
[data-theme="leto"] .logout-btn {
  background: #FFFFFF;
  color: #1A1A1A;
  border: 0.5px solid #E5DED3;
}

[data-theme="leto"] .new-report-btn:hover,
[data-theme="leto"] .logout-btn:hover {
  background: #F1ECE4;
  border-color: #C8B38A;
}

/* Intro hint text */
[data-theme="leto"] .settings-intro,
[data-theme="leto"] .settings-intro p,
[data-theme="leto"] .settings-required-note {
  color: #6F6A63;
}

[data-theme="leto"] .settings-loading {
  color: #6F6A63;
}

/* Section cards */
[data-theme="leto"] .settings-section {
  background: #FFFFFF;
  border: 0.5px solid #E5DED3;
  border-radius: 12px;
  box-shadow: none;
}

[data-theme="leto"] .settings-section-title {
  color: #1A1A1A;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  border-bottom: 0.5px solid #E5DED3;
}

/* Form labels */
[data-theme="leto"] .settings-form label,
[data-theme="leto"] .settings-form .field-label {
  color: #1A1A1A;
}

[data-theme="leto"] .settings-form .field-hint,
[data-theme="leto"] .settings-form small {
  color: #6F6A63;
}

/* Inputs */
[data-theme="leto"] .settings-form input[type="text"],
[data-theme="leto"] .settings-form input[type="email"],
[data-theme="leto"] .settings-form input[type="url"],
[data-theme="leto"] .settings-form input[type="tel"],
[data-theme="leto"] .settings-form input[type="number"],
[data-theme="leto"] .settings-form textarea,
[data-theme="leto"] .settings-form select {
  background: #FAF8F3;
  border: 0.5px solid #E5DED3;
  color: #1A1A1A;
}

[data-theme="leto"] .settings-form input:focus,
[data-theme="leto"] .settings-form textarea:focus,
[data-theme="leto"] .settings-form select:focus {
  border-color: #C8B38A;
  outline: none;
  background: #FFFFFF;
}

/* Required tag */
[data-theme="leto"] .required-tag {
  background: rgba(200, 179, 138, 0.18);
  color: #8B6A2C;
}

/* Save button */
[data-theme="leto"] .save-btn {
  background: #C8B38A;
  color: #FFFFFF;
  border: none;
  font-family: 'Inter', -apple-system, sans-serif;
  font-weight: 500;
}

[data-theme="leto"] .save-btn:hover {
  background: #B49C73;
}

[data-theme="leto"] .save-btn:disabled {
  background: #E5DED3;
  color: #6F6A63;
}

/* Photo placeholders */
[data-theme="leto"] .photo-placeholder,
[data-theme="leto"] .photo-preview {
  background: #FAF8F3;
  border: 0.5px solid #E5DED3;
  color: #6F6A63;
}

/* Save status */
[data-theme="leto"] .save-status-success {
  background: rgba(124, 154, 109, 0.12);
  color: #4F6B45;
}

[data-theme="leto"] .save-status-error {
  background: rgba(197, 106, 93, 0.12);
  color: #8C443A;
}

/* App container bg */
[data-theme="leto"] .app-container,
[data-theme="leto"] body {
  background: #FAF8F3;
}

/* ============================================================ */
/* Photo upload zones (settings.css lines 120-180)              */
/* ============================================================ */

[data-theme="leto"] .photo-upload-zone {
  background: #FAF8F3;
  border: 1px dashed #C8B38A;
}

[data-theme="leto"] .photo-label {
  color: #1A1A1A;
  font-weight: 500;
}

[data-theme="leto"] .photo-preview {
  background: #FFFFFF;
  border: 0.5px solid #E5DED3;
}

[data-theme="leto"] .photo-placeholder {
  color: #6F6A63;
}

[data-theme="leto"] .photo-uploading {
  color: #B49C73;
}

/* Choose file button under each photo */
[data-theme="leto"] .photo-choose-btn {
  background: #FFFFFF;
  color: #1A1A1A;
  border: 0.5px solid #E5DED3;
}

[data-theme="leto"] .photo-choose-btn:hover {
  background: #F1ECE4;
  border-color: #C8B38A;
}

/* Sticky save bar at bottom (fade gradient) */
[data-theme="leto"] .settings-save-row {
  background: linear-gradient(to top, #FAF8F3 70%, rgba(250, 248, 243, 0));
}

/* Optional/Required tags consistent in leto */
[data-theme="leto"] .required-tag,
[data-theme="leto"] .optional-tag {
  background: rgba(200, 179, 138, 0.18);
  color: #8B6A2C;
  font-weight: 500;
}

/* Agent PDF upload button — leto override */
[data-theme="leto"] #agent-pdf-upload-btn {
  background: #C8B38A;
  color: #FFFFFF;
}
[data-theme="leto"] #agent-pdf-upload-btn:hover {
  background: #B49C73;
}

/* Agent notes toggle warning subtitle — leto */
[data-theme="leto"] #agent-notes-toggle small {
  color: #C56A5D;
}

/* ============================================================ */
/* Agent / Investor Intelligence sidebar (May 26 2026)          */
/* Overrides hardcoded slate/blue in style.css lines 518-605    */
/* ============================================================ */

/* Toggle header (collapsed/expanded button) */
[data-theme="leto"] .agent-notes-toggle {
  background: #F1ECE4;
  border: 1px dashed #C8B38A;
  color: #1A1A1A;
}

[data-theme="leto"] .agent-notes-toggle:hover {
  background: #E8DFD0;
  border-color: #B49C73;
}

/* Content panel */
[data-theme="leto"] .agent-notes-content {
  background: #FFFFFF;
  border: 0.5px solid #E5DED3;
}

/* Help block headings & text */
[data-theme="leto"] .agent-notes-help .help-title {
  color: #1A1A1A;
}

[data-theme="leto"] .agent-notes-help .help-text {
  color: #6F6A63;
}

[data-theme="leto"] .agent-notes-help .help-list li {
  color: #6F6A63;
}

[data-theme="leto"] .agent-notes-help .help-list li::before {
  color: #C8B38A;
}

[data-theme="leto"] .agent-notes-help .help-list li strong {
  color: #1A1A1A;
}

/* Agent notes textarea */
[data-theme="leto"] .agent-notes-textarea {
  background: #FAF8F3;
  border: 0.5px solid #E5DED3;
  color: #1A1A1A;
}

[data-theme="leto"] .agent-notes-textarea:focus {
  border-color: #C8B38A;
  outline: none;
  background: #FFFFFF;
}

[data-theme="leto"] .agent-notes-textarea::placeholder {
  color: #8A8579;
}

/* Privacy/warning footnotes */
[data-theme="leto"] .notes-privacy {
  color: #6F6A63;
}

/* ============================================================ */
/* Photo screen button semantic palette (May 26 2026)            */
/* Overrides inline styles set in HTML and via photo.js JS       */
/* Uses !important because the inline styles use !important too  */
/* ============================================================ */

/* Back to Dashboard — outline muted terracotta destructive */
[data-theme="leto"] #back-to-dashboard {
  background: transparent !important;
  color: #8C443A !important;
  border: 0.5px solid #C56A5D !important;
  opacity: 1 !important;
}

[data-theme="leto"] #back-to-dashboard:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

/* Photo counter row */
[data-theme="leto"] #photo-counter-row {
  background: #FFFFFF !important;
  border: 0.5px solid #E5DED3 !important;
}

[data-theme="leto"] #photo-counter-row span {
  color: #6F6A63 !important;
}

[data-theme="leto"] #photo-counter {
  color: #1A1A1A !important;
}

/* Photo rows (set by photo.js dynamically) */
[data-theme="leto"] .photo-item {
  background: #FFFFFF !important;
  border: 0.5px solid #E5DED3 !important;
}

[data-theme="leto"] .photo-item:hover {
  background: #FAF8F3 !important;
}

/* Rename button (neutral outline) */
[data-theme="leto"] .photo-item .edit-btn {
  background: transparent !important;
  border: 0.5px solid #E5DED3 !important;
  color: #1A1A1A !important;
}

[data-theme="leto"] .photo-item .edit-btn:hover {
  background: #F1ECE4 !important;
  border-color: #C8B38A !important;
}

/* Delete button (muted terracotta outline) */
[data-theme="leto"] .photo-item .delete-btn {
  background: transparent !important;
  border: 0.5px solid #E5DED3 !important;
  color: #8C443A !important;
}

[data-theme="leto"] .photo-item .delete-btn:hover {
  background: rgba(197, 106, 93, 0.08) !important;
  border-color: #C56A5D !important;
}

/* BUYER REPORT button (champagne primary) */
[data-theme="leto"] #continue-to-analysis {
  background: #C8B38A !important;
  background-color: #C8B38A !important;
  color: #FFFFFF !important;
  border: none !important;
}

[data-theme="leto"] #continue-to-analysis:hover {
  background: #B49C73 !important;
  background-color: #B49C73 !important;
}

/* SELLER REPORT button (also champagne — both are equally primary) */
[data-theme="leto"] #continue-to-analysis-seller {
  background: #C8B38A !important;
  background-color: #C8B38A !important;
  color: #FFFFFF !important;
  border: none !important;
}

[data-theme="leto"] #continue-to-analysis-seller:hover {
  background: #B49C73 !important;
  background-color: #B49C73 !important;
}

/* Disabled state for both buttons (lockout when other is active) */
[data-theme="leto"] #continue-to-analysis:disabled,
[data-theme="leto"] #continue-to-analysis-seller:disabled {
  background: #E5DED3 !important;
  background-color: #E5DED3 !important;
  color: #8A8579 !important;
  cursor: not-allowed !important;
}

/* Upload from phone library disabled label */
[data-theme="leto"] .file-upload-label.disabled {
  background: #F1ECE4 !important;
  color: #6F6A63 !important;
  border: 0.5px dashed #C8B38A !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
}

/* Active (enabled) Upload from phone library button */
[data-theme="leto"] .file-upload-label {
  background: #FFFFFF !important;
  color: #1A1A1A !important;
  border: 0.5px solid #C8B38A !important;
}

[data-theme="leto"] .file-upload-label:hover {
  background: #F1ECE4 !important;
}

/* "Data ready!" green checkmark message (keep muted sage in leto) */
[data-theme="leto"] #loading-status-text {
  color: #4F6B45 !important;
}


/* ============================================================ */
/* BUYER/SELLER continue button — beat photo-desktop.css green   */
/* Specificity-matched override for the gradient                 */
/* ============================================================ */

[data-theme="leto"] #continue-to-analysis:not(:disabled):not(.ps-generate-disabled),
[data-theme="leto"] #continue-to-analysis-seller:not(:disabled):not(.ps-generate-disabled) {
  background: #C8B38A !important;
  background-color: #C8B38A !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #FFFFFF !important;
  border: none !important;
}

[data-theme="leto"] #continue-to-analysis:not(:disabled):not(.ps-generate-disabled):hover,
[data-theme="leto"] #continue-to-analysis-seller:not(:disabled):not(.ps-generate-disabled):hover {
  background: #B49C73 !important;
  background-color: #B49C73 !important;
}

/* Rerun (Update report) buttons — leto override */
[data-theme="leto"] #rerun-ai-verdict-buyer,
[data-theme="leto"] #rerun-ai-verdict-seller {
  background-color: #C8B38A !important;
  background: #C8B38A !important;
  color: #FFFFFF !important;
}
[data-theme="leto"] #rerun-ai-verdict-buyer:hover,
[data-theme="leto"] #rerun-ai-verdict-seller:hover {
  background-color: #B49C73 !important;
  background: #B49C73 !important;
}
