/* ============================================================
   BOOKING SYSTEM — THEME OVERRIDES
   ESS (Embark Sailing Standard) = default :root in main.css
   Additional themes activate via html[data-theme="X"]
   ============================================================ */

/* ── Theme Fonts ─────────────────────────────────────────────
   Logbook:  Playfair Display + Lora
   Amalfi:   Cormorant Garamond + Nunito
   Fjordvik: Fraunces + Outfit
   Cyclades: Cinzel + Crimson Pro
   ─────────────────────────────────────────────────────────── */
/* Theme fonts loaded lazily by theme.js only when a custom theme is active */

/* ═══════════════════════════════════════════════════════════
   CSS VARIABLE BLOCKS
   ═══════════════════════════════════════════════════════════ */

/* ── Logbook — Vintage Nautical Catalog ──────────────────── */
[data-theme="logbook"] {
  --color-primary:    #0d1f3c;
  --color-primary-d:  #08162b;
  --color-accent:     #b8762a;
  --color-accent-d:   #9a6020;
  --color-dark:       #0d1f3c;
  --color-gray-l:     #faf6ee;
  --color-bg:         #f5e6c8;
  --font-display:     'Playfair Display', Georgia, serif;
  --font-body:        'Lora', Georgia, serif;
}

/* ── Amalfi — Mediterranean Luxury ──────────────────────── */
[data-theme="amalfi"] {
  --color-primary:    #1e4fa0;
  --color-primary-d:  #163d7a;
  --color-accent:     #c5432a;
  --color-accent-d:   #a8361f;
  --color-dark:       #1a1a2e;
  --color-bg:         #fafaf7;
  --font-display:     'Cormorant Garamond', Georgia, serif;
  --font-body:        'Nunito', Arial, sans-serif;
}

/* ── Fjordvik — Nordic Coastal ───────────────────────────── */
[data-theme="fjordvik"] {
  --color-primary:    #2d4a3e;
  --color-primary-d:  #1f3429;
  --color-accent:     #7ba8c4;
  --color-accent-d:   #5d90b0;
  --color-dark:       #1f2f28;
  --color-gray-l:     #f0e9d8;
  --color-bg:         #f8f9fc;
  --font-display:     'Fraunces', Georgia, serif;
  --font-body:        'Outfit', Arial, sans-serif;
}

/* ── Cyclades — Greek Island Aegean ──────────────────────── */
[data-theme="cyclades"] {
  --color-primary:    #1752a0;
  --color-primary-d:  #0f3c7a;
  --color-accent:     #c45c30;
  --color-accent-d:   #a84920;
  --color-dark:       #0f1e3c;
  --color-bg:         #f9f9f7;
  --font-display:     'Cinzel', Georgia, serif;
  --font-body:        'Crimson Pro', Georgia, serif;
}


/* ═══════════════════════════════════════════════════════════
   LOGBOOK — Component Overrides
   DNA: square corners, parchment bg, amber accents,
        bottom-border inputs, offset card shadows
   ═══════════════════════════════════════════════════════════ */

/* Buttons */
[data-theme="logbook"] .btn                { border-radius: 0; }
[data-theme="logbook"] .btn-primary,
[data-theme="logbook"] .btn-accent         { letter-spacing: .07em; text-transform: uppercase; font-size: .82rem; }
[data-theme="logbook"] .btn-outline        { border-radius: 0; }

/* Headings */
[data-theme="logbook"] h1,
[data-theme="logbook"] h2,
[data-theme="logbook"] h3,
[data-theme="logbook"] h4                  { letter-spacing: -.01em; }
[data-theme="logbook"] .section-label      { font-family: var(--font-display); letter-spacing: .14em; text-transform: uppercase; font-size: .72rem; }

/* Cards */
[data-theme="logbook"] .card,
[data-theme="logbook"] .boat-card          { border-radius: 0; border: 1px solid #c9b48a; box-shadow: none; background: #faf6ee; }
[data-theme="logbook"] .boat-card:hover    { box-shadow: 4px 4px 0 rgba(184,118,42,.35); border-color: #b8762a; }
[data-theme="logbook"] .boat-card-footer   { background: #f0ddb8; border-top-color: #c9b48a; }

/* Feature cards */
[data-theme="logbook"] .feature-card       { border-radius: 0; border: none; border-left: 3px solid #b8762a; box-shadow: none; background: #faf6ee; }
[data-theme="logbook"] .feature-icon       { background: rgba(184,118,42,.12); }

/* Inputs / search box */
[data-theme="logbook"] .form-input,
[data-theme="logbook"] .form-select,
[data-theme="logbook"] .form-textarea      { border-radius: 0; border: none; border-bottom: 1.5px solid #c9b48a; background: transparent; }
[data-theme="logbook"] .form-input:focus,
[data-theme="logbook"] .form-select:focus  { border-bottom-color: #b8762a; box-shadow: none; }
[data-theme="logbook"] .search-box         { border-radius: 0; border: 1px solid #c9b48a; background: rgba(250,246,238,.98); box-shadow: 4px 4px 0 rgba(184,118,42,.15); }

/* Sections */
[data-theme="logbook"] .section-alt        { background: #f0ddb8; }

/* Sidebars */
[data-theme="logbook"] .search-sidebar,
[data-theme="logbook"] .filters-sidebar    { border-radius: 0; border: 1px solid #c9b48a; border-top: 3px solid #b8762a; background: #faf6ee; }
[data-theme="logbook"] .filter-apply { background: #faf6ee; }

/* Nav / header — :not(.transparent) preserves white links on dark hero */
[data-theme="logbook"] .site-header:not(.transparent) { background: rgba(250,246,238,.97); border-bottom-color: #c9b48a; }

/* Profile */
[data-theme="logbook"] .profile-sidebar             { border-radius: 0; }
[data-theme="logbook"] .profile-sidebar-header      { background: linear-gradient(155deg, #0d1f3c, #1a3a5c); }

/* Auth */
[data-theme="logbook"] .auth-card          { border-radius: 0; }


/* ═══════════════════════════════════════════════════════════
   AMALFI — Component Overrides
   DNA: square corners (luxury), gold hairline dividers,
        zero box-shadow, tight letter-spacing, terracotta
   ═══════════════════════════════════════════════════════════ */

/* Buttons */
[data-theme="amalfi"] .btn                 { border-radius: 0; }
[data-theme="amalfi"] .btn-primary,
[data-theme="amalfi"] .btn-accent          { letter-spacing: .07em; text-transform: uppercase; font-size: .82rem; }
[data-theme="amalfi"] .btn-outline         { border-radius: 0; }

/* Headings */
[data-theme="amalfi"] h1,
[data-theme="amalfi"] h2,
[data-theme="amalfi"] h3,
[data-theme="amalfi"] h4                   { letter-spacing: -.02em; font-weight: 400; }
[data-theme="amalfi"] .section-label       { letter-spacing: .16em; text-transform: uppercase; font-size: .72rem; color: #c5432a; }

/* Cards */
[data-theme="amalfi"] .card,
[data-theme="amalfi"] .boat-card           { border-radius: 0; border: none; border-bottom: 1px solid #e8d5a0; box-shadow: none; background: #fff; }
[data-theme="amalfi"] .boat-card:hover     { box-shadow: 0 8px 32px rgba(30,79,160,.1); border-bottom-color: #c5432a; }
[data-theme="amalfi"] .boat-card-footer    { background: #fafaf2; border-top-color: #e8d5a0; }

/* Feature cards */
[data-theme="amalfi"] .feature-card        { border-radius: 0; border: none; border-top: 1px solid #e8d5a0; box-shadow: none; }
[data-theme="amalfi"] .feature-icon        { background: rgba(197,67,42,.1); }

/* Inputs / search box */
[data-theme="amalfi"] .form-input,
[data-theme="amalfi"] .form-select,
[data-theme="amalfi"] .form-textarea       { border-radius: 0; }
[data-theme="amalfi"] .search-box          { border-radius: 0; border: 1px solid #e8d5a0; background: rgba(255,255,250,.98); box-shadow: none; }

/* Sections */
[data-theme="amalfi"] .section-alt         { background: #f2ebe0; }

/* Sidebars */
[data-theme="amalfi"] .search-sidebar,
[data-theme="amalfi"] .filters-sidebar     { border-radius: 0; border: 1px solid #e8d5a0; border-top: 2px solid #e8d5a0; background: #fff; box-shadow: none; }

/* Nav / header — :not(.transparent) preserves white links on dark hero */
[data-theme="amalfi"] .site-header:not(.transparent) { background: rgba(250,250,247,.97); border-bottom: 1px solid #e8d5a0; }

/* Profile */
[data-theme="amalfi"] .profile-sidebar              { border-radius: 0; }
[data-theme="amalfi"] .profile-sidebar-header       { background: linear-gradient(155deg, #1e4fa0, #2a65c0); }

/* Auth */
[data-theme="amalfi"] .auth-card           { border-radius: 0; }
[data-theme="amalfi"] .auth-page           { background: linear-gradient(135deg, #1e4fa0 0%, #3a72cc 100%); }


/* ═══════════════════════════════════════════════════════════
   FJORDVIK — Component Overrides
   DNA: pill/rounded shapes, forest-green left-border cards,
        large-radius birch-cream inputs, organic softness
   ═══════════════════════════════════════════════════════════ */

/* Buttons */
[data-theme="fjordvik"] .btn,
[data-theme="fjordvik"] .btn-primary,
[data-theme="fjordvik"] .btn-accent,
[data-theme="fjordvik"] .btn-outline,
[data-theme="fjordvik"] .btn-ghost,
[data-theme="fjordvik"] .btn-sm,
[data-theme="fjordvik"] .btn-lg,
[data-theme="fjordvik"] .btn-xl            { border-radius: var(--radius-full); }

/* Headings */
[data-theme="fjordvik"] h1,
[data-theme="fjordvik"] h2,
[data-theme="fjordvik"] h3,
[data-theme="fjordvik"] h4                 { font-weight: 700; letter-spacing: -.005em; }
[data-theme="fjordvik"] .section-label     { letter-spacing: .1em; }

/* Cards */
[data-theme="fjordvik"] .card,
[data-theme="fjordvik"] .boat-card         { border-radius: var(--radius-lg); border: none; border-left: 4px solid #2d4a3e; box-shadow: var(--shadow-sm); background: #fff; }
[data-theme="fjordvik"] .boat-card:hover   { box-shadow: var(--shadow-md); border-left-color: #7ba8c4; }
[data-theme="fjordvik"] .boat-card-footer  { background: #f5f0e8; border-top-color: #d8cdb8; }

/* Feature cards */
[data-theme="fjordvik"] .feature-card      { border-radius: var(--radius-lg); border: none; border-left: 4px solid #2d4a3e; box-shadow: none; }
[data-theme="fjordvik"] .feature-icon      { background: rgba(45,74,62,.1); border-radius: var(--radius-full); }

/* Inputs / search box */
[data-theme="fjordvik"] .form-input,
[data-theme="fjordvik"] .form-select,
[data-theme="fjordvik"] .form-textarea     { border-radius: var(--radius-xl); background: #f0e9d8; border-color: #d0c5a8; }
[data-theme="fjordvik"] .form-input:focus,
[data-theme="fjordvik"] .form-select:focus { border-color: #2d4a3e; box-shadow: 0 0 0 3px rgba(45,74,62,.12); }
[data-theme="fjordvik"] .search-box        { border-radius: var(--radius-xl); border: none; background: rgba(240,233,216,.97); box-shadow: 0 8px 32px rgba(45,74,62,.12); }

/* Sections */
[data-theme="fjordvik"] .section-alt       { background: #ede6d5; }

/* Sidebars */
[data-theme="fjordvik"] .search-sidebar,
[data-theme="fjordvik"] .filters-sidebar   { border-radius: var(--radius-lg); border: none; border-left: 4px solid #2d4a3e; background: #fff; box-shadow: var(--shadow-sm); }

/* Nav / header — :not(.transparent) preserves white links on dark hero */
[data-theme="fjordvik"] .site-header:not(.transparent) { background: rgba(248,249,252,.97); border-bottom-color: #d0c5a8; }

/* Profile */
[data-theme="fjordvik"] .profile-sidebar            { border-radius: var(--radius-xl); }
[data-theme="fjordvik"] .profile-sidebar-header     { background: linear-gradient(155deg, #2d4a3e, #3d6352); border-radius: var(--radius-xl) var(--radius-xl) 0 0; }

/* Auth */
[data-theme="fjordvik"] .auth-card         { border-radius: var(--radius-xl); }
[data-theme="fjordvik"] .auth-page         { background: linear-gradient(135deg, #2d4a3e 0%, #3d6352 100%); }

/* Modal */
[data-theme="fjordvik"] .modal             { border-radius: var(--radius-xl); }


/* ═══════════════════════════════════════════════════════════
   CYCLADES — Component Overrides
   DNA: cobalt shadows (painted-sign feel), circular icons,
        light blue-white sections, tracked uppercase labels
   ═══════════════════════════════════════════════════════════ */

/* Buttons */
[data-theme="cyclades"] .btn-primary,
[data-theme="cyclades"] .btn-accent        { box-shadow: 0 2px 8px rgba(23,82,160,.3); letter-spacing: .07em; text-transform: uppercase; font-size: .82rem; }
[data-theme="cyclades"] .btn-primary:hover,
[data-theme="cyclades"] .btn-accent:hover  { box-shadow: 0 4px 16px rgba(23,82,160,.4); }

/* Headings */
[data-theme="cyclades"] h1,
[data-theme="cyclades"] h2,
[data-theme="cyclades"] h3,
[data-theme="cyclades"] h4                 { letter-spacing: .03em; }
[data-theme="cyclades"] .section-label     { letter-spacing: .2em; text-transform: uppercase; font-size: .72rem; }

/* Cards */
[data-theme="cyclades"] .card,
[data-theme="cyclades"] .boat-card         { border-radius: var(--radius-lg); border: 1px solid #dce8f5; box-shadow: 0 2px 12px rgba(23,82,160,.07); background: #fff; }
[data-theme="cyclades"] .boat-card:hover   { border-color: #1752a0; box-shadow: 0 6px 24px rgba(23,82,160,.15); }
[data-theme="cyclades"] .boat-card-footer  { background: #f0f5fb; border-top-color: #dce8f5; }

/* Feature cards */
[data-theme="cyclades"] .feature-card      { border-radius: var(--radius-lg); border: 1px solid #dce8f5; box-shadow: 0 2px 12px rgba(23,82,160,.06); }
[data-theme="cyclades"] .feature-icon      { background: rgba(23,82,160,.1); border-radius: 50%; }

/* Inputs / search box */
[data-theme="cyclades"] .form-input,
[data-theme="cyclades"] .form-select,
[data-theme="cyclades"] .form-textarea     { border-color: #b8d0ee; }
[data-theme="cyclades"] .form-input:focus,
[data-theme="cyclades"] .form-select:focus { border-color: #1752a0; box-shadow: 0 0 0 3px rgba(23,82,160,.1); }
[data-theme="cyclades"] .search-box        { border-radius: var(--radius-xl); border: 1px solid #b8d0ee; background: rgba(255,255,255,.99); box-shadow: 0 8px 32px rgba(23,82,160,.1); }

/* Sections */
[data-theme="cyclades"] .section-alt       { background: #eef4fc; }

/* Sidebars */
[data-theme="cyclades"] .search-sidebar,
[data-theme="cyclades"] .filters-sidebar   { border-radius: var(--radius-lg); border: 1px solid #dce8f5; border-top: 3px solid #1752a0; }

/* Nav / header — :not(.transparent) preserves white links on dark hero */
[data-theme="cyclades"] .site-header:not(.transparent) { background: rgba(255,255,255,.98); border-bottom: 1px solid #dce8f5; }

/* Profile */
[data-theme="cyclades"] .profile-sidebar-header     { background: linear-gradient(155deg, #1752a0, #2468cc); }

/* Auth */
[data-theme="cyclades"] .auth-card         { border-radius: var(--radius-lg); }
[data-theme="cyclades"] .auth-page         { background: linear-gradient(135deg, #1752a0 0%, #2468cc 100%); }
