/* Actualización moderna. Se carga después de los temas aprobados.
 * Fondos blancos en claro; en oscuro se conserva la base azul y la legibilidad.
 * La decoración se mantiene. Sin líneas de cuaderno ni marco exterior.
 */
:root {
    --palette-blue: #688B9C;
    --palette-sky: #91B8C7;
    --palette-mist: #B8D2D9;
    --palette-lavender: #C5C0EF;
    --palette-violet: #7A7EB7;
    --modern-radius: 22px;
    --modern-rise: -3px;
    --modern-ease: cubic-bezier(.2,.7,.25,1);
    --dark-brown-deep: #382A24;
    --dark-brown-border: #765B49;
}
:root[data-tema="claro"], :root:not([data-tema]) {
    --bg-page: #FFFFFF;
    --bg-card: #FFFFFF;
    /* Derivados oscuros de la paleta para contraste AA con texto blanco. */
    --blue-deep: #3B5F71;
    --blue-mid: var(--palette-blue);
    --blue-sky: var(--palette-mist);
    --blue-mist: #EFF5F7;
    --brown-deep: #575A8B;
    --brown-mid: var(--palette-violet);
    --sand: #EDF2F5;
    --peach: #EEEAFB;
    --lavender: #EEEAFB;
    --sage: #E9F2F3;
    --text: #2B2B2B;
    --text-soft: #58636C;
    --bg: var(--bg-page);
    --surface: var(--bg-card);
    --surface-soft: var(--sand);
    --muted: var(--text-soft);
    --blue: var(--blue-deep);
    --blue-hover: #2F4F5F;
    --blue-soft: var(--blue-mist);
    --brown: var(--brown-deep);
    --border: #DFE7EB;
    --input: #FFFFFF;
    --focus: #3B5F71;
    --shadow: 0 10px 32px rgba(104,139,156,.09);
    --ui-button-shadow: 0 6px 16px rgba(104,139,156,.15);
    --ui-control-border: #82939C;
    --notice: var(--blue-mist);
    --modern-detail-surface: var(--lavender);
    --modern-detail-ink: var(--brown-deep);
}
:root[data-tema="oscuro"] {
    --modern-detail-surface: var(--dark-brown-deep);
    --modern-detail-ink: var(--brown);
}
/* Las 22 variables oscuras originales se repiten solo para la alternativa sin JS,
 * porque el selector claro por defecto de arriba también coincide en ese caso.
 */
@media (prefers-color-scheme: dark) {
    :root:not([data-tema]) {
        color-scheme: dark;
        --bg:#111d26; --surface:#1a2a35; --surface-soft:#23333d;
        --text:#efece5; --muted:#bac2c8; --blue:#a9cfdf; --blue-hover:#c6e3ee;
        --blue-soft:#263f4d; --brown:#d0ae88; --border:#3a4a54; --input:#15242e;
        --focus:#83c8e3; --shadow:0 14px 48px #00000022;
        --story:#112c3b; --story-ink:#f3f0e9; --story-muted:#cddadd; --story-detail:#c9aa82;
        --error:#ffb7a9; --error-bg:#402e2e; --success:#b5dfc3; --success-bg:#243b35; --notice:#263f4d;
        --bg-page:var(--bg); --bg-card:var(--surface); --blue-deep:var(--blue);
        --blue-mid:var(--blue-hover); --blue-sky:var(--surface-soft); --blue-mist:var(--blue-soft);
        --brown-deep:var(--brown); --brown-mid:var(--brown); --sand:var(--surface-soft);
        --peach:var(--surface-soft); --lavender:var(--surface-soft); --sage:var(--surface-soft);
        --text-soft:var(--muted); --ui-control-border:var(--border);
        --modern-detail-surface:var(--dark-brown-deep); --modern-detail-ink:var(--brown);
        --ui-button-shadow:var(--shadow);
    }
}
:root body.agenda-theme:is(.pages-theme,.dashboard-page) {
    background: var(--bg); background-image:none;
}
:root body.agenda-theme:is(.pages-theme,.dashboard-page)::before { content:none; }
:root .agenda-theme:is(.pages-theme,.dashboard-page) {
    --panel-shell:var(--bg); --panel-border:var(--border);
    --panel-welcome-start:var(--surface); --panel-welcome-end:var(--surface);
    --panel-welcome-border:var(--border); --panel-guide:var(--surface);
    --panel-stat-blue:var(--surface); --panel-stat-peach:var(--surface);
    --panel-stat-lavender:var(--surface); --panel-mood:var(--surface);
    --pages-paper:var(--bg); --pages-backdrop:var(--bg);
    --pages-mood:var(--surface); --pages-tags:var(--surface);
    --pages-sharing:var(--surface); --pages-filter:var(--surface);
    --pages-pdf:var(--surface); --pages-profile-start:var(--surface); --pages-profile-end:var(--surface);
}
:root .agenda-theme:is(.pages-theme,.dashboard-page) :is(.card,.auth-layout,.modal-content,.dropdown-menu,.list-group) {
    border-radius:var(--modern-radius); border-color:var(--border); box-shadow:var(--shadow);
}
:root .agenda-theme:is(.pages-theme,.dashboard-page) :is(.dashboard-welcome,.stat-card,.mood-trend,.guide-card,.writing-card,.mood-card,.sharing-card,.tags-card,.reading-card,.profile-card,.pdf-toolbar,.date-filter-card) {
    background-color:var(--surface); background-image:none;
}
:root .agenda-theme:is(.pages-theme,.dashboard-page) .thought-field textarea {
    background:var(--input); background-image:none; line-height:1.8;
}
:root .agenda-theme:is(.pages-theme,.dashboard-page) .thought-body { border-top:0; padding-top:12px; }
:root .agenda-theme .privacy-badge { border-left-width:0; }
:root .agenda-theme .privacy-badge:not(.is-shared) {
    color:var(--modern-detail-ink); background:var(--modern-detail-surface);
}
:root .agenda-theme .guide-card { border-left-color:var(--brown); }
:root .agenda-theme .main-nav a[aria-current="page"] {
    background:var(--blue-soft); padding-inline:14px; border-radius:12px; box-shadow:none;
}
:root .agenda-theme .brand-symbol { border:0; background:var(--blue-soft); box-shadow:none; color:var(--blue); }
:root .agenda-theme :is(.button,.btn,.icon-button,.theme-toggle,.password-toggle,.read-thought,.calendar-day) {
    transition:transform .2s var(--modern-ease),background-color .2s,box-shadow .2s,border-color .2s,color .2s;
}
:root .agenda-theme :is(.button,.btn):not(:disabled) { position:relative; overflow:hidden; }
:root .agenda-theme .button-ripple {
    position:absolute; pointer-events:none; width:110%; aspect-ratio:1;
    border-radius:50%; background:currentColor; opacity:0; inset:50% auto auto 50%;
    transform:translate(-50%,-50%) scale(.1);
}
:root .agenda-theme .motion-card { transition:box-shadow .2s,transform .2s var(--modern-ease); }
@media(hover:hover) and (pointer:fine) {
    :root .agenda-theme :is(.button,.btn,.icon-button,.theme-toggle):not(:disabled):hover { transform:translateY(var(--modern-rise)); }
    :root .agenda-theme :is(.read-thought,.password-toggle):hover { transform:translateX(2px); }
    :root .agenda-theme .thought-card.motion-card:hover { transform:translateY(-3px); box-shadow:0 16px 34px color-mix(in srgb,var(--blue) 12%,transparent); }
}
:root .agenda-theme :is(.button,.btn):not(:disabled):active { transform:translateY(0) scale(.98); }
:root .agenda-theme .legacy-mood-option {
    display:flex; align-items:flex-start; gap:10px; font-size:12px; margin-top:16px;
    padding:12px; border-radius:12px; background:var(--surface-soft); color:var(--text);
}
:root .agenda-theme .legacy-mood-option input { flex:none; width:20px; height:20px; }
:root .agenda-theme .mood-emoji img { display:block; width:28px; height:28px; }
:root .agenda-theme .animo-emoji-local { display:inline-block; width:28px; height:28px; vertical-align:middle; }
:root .agenda-theme .mood-summary { display:flex; align-items:center; justify-content:center; gap:8px; }
:root .agenda-theme .mood-summary .animo-emoji-local { width:23px; height:23px; flex:none; }
:root .agenda-theme .inline-editor-emoji { display:inline-block; width:1.2em; height:1.2em; vertical-align:-.2em; }
:root .agenda-theme .rich-content { white-space:normal; overflow-wrap:anywhere; }
:root .agenda-theme .rich-content .rich-paragraph { white-space:pre-wrap; margin:0 0 1em; }
:root .agenda-theme .rich-content h2 { font-size:32px; }
:root .agenda-theme .rich-content h3 { font-size:27px; }
:root .agenda-theme .rich-content blockquote {
    border-left:3px solid var(--brown); background:var(--blue-soft); border-radius:0 12px 12px 0;
    padding:16px 20px; color:var(--text);
}
:root .agenda-theme .rich-content :is(ul,ol) { padding-left:1.7em; margin:0 0 1.2em; }
:root .agenda-theme .rich-content li.rich-paragraph { margin-bottom:.35em; }
.editor-align-center { text-align:center; } .editor-align-right { text-align:right; } .editor-align-justify { text-align:justify; }
.editor-indent-1 { margin-left:1.5em!important; } .editor-indent-2 { margin-left:3em!important; }
.editor-indent-3 { margin-left:4.5em!important; } .editor-indent-4 { margin-left:6em!important; }
.editor-indent-5 { margin-left:7.5em!important; } .editor-indent-6 { margin-left:9em!important; }
.editor-indent-7 { margin-left:10.5em!important; } .editor-indent-8 { margin-left:12em!important; }
@media(max-width:700px) {
    :root .agenda-theme .rich-content :is([class*="editor-indent-"]) { margin-left:1.5em!important; }
    :root .agenda-theme .site-header { padding-top:18px; }
}
@media(prefers-reduced-motion:reduce) {
    :root .agenda-theme *, :root .agenda-theme *::before, :root .agenda-theme *::after {
        animation:none!important; transition:none!important; scroll-behavior:auto!important;
    }
    :root .agenda-theme :is(.button,.btn,.motion-card,.read-thought,.icon-button,.theme-toggle):hover { transform:none; }
}
