
/* ==== style.css ==== */
:root{--bg:#faf9f5;--white:#fff;--soft:#f6f3e9;--line:#e8e8e0;--ink:#1e3530;--muted:#80908a;--green:#245c4b;--green-light:#e9f1e9;--gold:#edb76d;--shadow:0 12px 50px rgba(21,44,36,.055);--font-mult:1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",system-ui,-apple-system,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{transition:background .18s,transform .18s,color .18s,box-shadow .18s}button{cursor:pointer}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ca9a4e;outline-offset:2px}::selection{background:#d9e9b9;color:#193b2e}.app{min-height:100vh;display:flex}.sidebar{width:269px;min-width:269px;background:#fff;border-right:1px solid var(--line);padding:27px 17px 22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:11px;margin:2px 9px 45px}.brand strong{font-family:"Playfair Display",serif;font-size:23px;display:block;letter-spacing:-.7px;line-height:1.13}.brand em{font-weight:500;color:#b79057;font-style:normal}.brand small{display:block;font-size:8.5px;letter-spacing:1.35px;margin-top:5px;color:#85938f;font-weight:800}.sidebar-label{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#9aa6a0;margin:0 15px 14px}.sidebar-label-spaced{margin-top:36px}.side-nav{display:flex;flex-direction:column;gap:7px}.nav-link{display:flex;align-items:center;gap:15px;color:#637b72;padding:13px 14px;border-radius:12px;font-weight:700;font-size:12.8px}.nav-link:hover,.nav-link.active{background:#e9f1e9;color:#245c4b}.nav-icon{font-size:23px;font-weight:400;width:23px;line-height:1;text-align:center}.count{font-size:11px;margin-left:auto;color:#77978a}.daily-mini{display:flex;align-items:center;gap:11px;margin:0 5px;padding:15px 11px;border-radius:15px;background:#f7f5eb}.daily-mini-icon{background:#e6d9a9;color:#95733c;border-radius:12px;font-size:22px;display:grid;place-items:center;width:36px;height:36px}.daily-mini strong,.daily-mini small{display:block}.daily-mini strong{font-size:11.8px}.daily-mini small{color:#98a098;font-size:10.5px;margin-top:4px}.daily-mini>span:last-child{margin-left:auto;color:#99a59b}.sidebar-bottom{margin-top:auto}.progress-box{border:1px solid #e5eae4;border-radius:14px;padding:16px 13px}.progress-line{display:flex;justify-content:space-between;gap:5px;font-size:10.5px}.progress-line span{color:#829b8b;white-space:nowrap}.track{height:6px;border-radius:12px;background:#e8efe9;overflow:hidden;margin-top:12px}.track-fill{height:100%;background:#5e977c;width:0%;border-radius:12px}.progress-box small{font-size:9.4px;color:#8d9f95;display:block;margin-top:11px}.sidebar-bottom>p{text-align:center;color:#a1ada7;font-size:11px;margin:25px 0 0}.main-shell{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:81px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 clamp(24px,5vw,72px);background:var(--bg);border-bottom:1px solid var(--line)}.crumb{font-size:13px;font-weight:800}.crumb span{color:#c99c67;margin-left:6px}.top-actions{display:flex;align-items:center;gap:13px}.search-pill{background:#fff;border:1px solid #e7e9e3;border-radius:11px;padding:12px 14px;min-width:220px;display:flex;align-items:center;gap:11px;text-align:left;font-size:12px;color:#9aa49e}.search-pill>span:first-child{font-size:20px;color:#719184}.search-pill kbd{margin-left:auto;border:1px solid #e8eee9;padding:3px 5px;border-radius:5px;color:#9aa8a2;font-size:10px}.icon-btn{width:41px;height:41px;background:#fff;border:1px solid #e9eae2;border-radius:12px;color:#345b4c;font-size:23px;display:grid;place-items:center}.avatar-btn{width:40px;height:40px;background:#dce9da;border:0;border-radius:50%;font-size:23px;color:#3b765e}.mobile-menu{display:none}.content{width:100%;max-width:1550px;margin:0 auto;padding:36px clamp(24px,5vw,72px) 58px;flex:1}.footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:23px clamp(24px,5vw,72px);border-top:1px solid var(--line);font-size:11px;color:#9da9a2}.footer button{border:0;background:none;color:#779488;text-decoration:underline}.eyebrow{font-size:10.5px;letter-spacing:2px;font-weight:800;color:#7c9587;text-transform:uppercase}.title{font-family:"Playfair Display",Georgia,serif;font-size:clamp(32px,3.2vw,48px);letter-spacing:-1.2px;line-height:1.19;font-weight:500;margin:9px 0 13px}.subtitle{color:#81918a;font-size:13px;line-height:1.8}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 25px}.page-heading .title{margin-bottom:5px}.btn{border:0;border-radius:12px;padding:13px 19px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12.5px;white-space:nowrap}.btn-primary{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(31,85,63,.16)}.btn-primary:hover{background:#174936;transform:translateY(-2px)}.btn-light{background:#fff;color:var(--green);border:1px solid #e2e9e1}.btn-light:hover{background:#e9f1e9}.btn-outline{border:1px solid #dee6dc;color:var(--green);background:transparent}.btn-outline:hover{background:var(--green-light)}.btn-sm{padding:10px 14px;font-size:11.5px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:37px 0 20px}.section-title h2{font-family:"Playfair Display",serif;font-size:24px;font-weight:500;margin:0}.section-title a{font-size:12px;font-weight:800;color:#4b8769}.hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;background:linear-gradient(115deg,#1f5041,#1c4036 66%,#315c4b);min-height:335px;border-radius:23px;color:#fff;box-shadow:0 18px 45px rgba(31,68,49,.12)}.hero-copy{padding:43px 24px 42px 45px;position:relative;z-index:2}.hero .eyebrow{color:#d8d9ab}.hero h1{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(34px,3.7vw,52px);line-height:1.19;letter-spacing:-1.25px;margin:17px 0 16px}.hero h1 i{color:#e2c594;font-style:italic}.hero p{color:#d1e3d7;font-size:13px;line-height:1.85;max-width:405px;margin-bottom:24px}.hero .btn{background:#f6e9c9;color:#2d5749}.hero-art{position:relative;min-height:290px;background:radial-gradient(circle at 59% 57%,rgba(247,213,141,.27),transparent 47%)}.hero-art::before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;border:1px solid rgba(255,255,255,.12);left:calc(50% - 160px);top:calc(50% - 160px);box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.025)}.book-illustration{position:absolute;top:50%;left:50%;transform:translate(-50%,-43%) rotate(-8deg);width:min(310px,83%);height:225px;border-radius:6px 19px 19px 6px;background:linear-gradient(115deg,#ead4a7,#fff7da 54%,#d1b37d);box-shadow:8px 21px 28px rgba(9,26,21,.36),inset -5px 0 #b99b6c;display:flex;align-items:center;justify-content:center}.book-illustration::before{content:"";height:100%;width:29px;position:absolute;left:0;background:linear-gradient(90deg,#93734c,#dbc195);opacity:.55;border-radius:6px 0 0 6px}.book-illustration::after{content:"✦";font-size:120px;font-family:serif;color:#ad9269;opacity:.23}.float-star{position:absolute;color:#e7d195;font-size:25px}.star-1{top:39px;right:27%}.star-2{bottom:52px;left:16%;font-size:17px}.star-3{bottom:35px;right:19%;font-size:17px}.home-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:21px}.quote-card,.continue-card,.feature-card{background:#fff;border:1px solid #e8ebe5;border-radius:18px;box-shadow:var(--shadow)}.quote-card{padding:26px 30px;position:relative;overflow:hidden}.quote-card::after{content:'“';position:absolute;right:24px;top:-26px;color:#e9eee7;font-size:165px;font-family:Georgia,serif}.quote-card .eyebrow{color:#bd9659}.quote-card blockquote{font-family:"Playfair Display",serif;font-size:clamp(21px,2vw,28px);font-weight:400;line-height:1.48;margin:18px 0;color:#244e3e;max-width:560px;position:relative;z-index:2}.quote-card footer{display:flex;justify-content:space-between;align-items:center;color:#b08953;font-size:12px;font-weight:800}.quote-card button{border:0;background:#f7f6f0;padding:10px 12px;border-radius:10px;color:#426854}.continue-card{padding:25px 25px;display:flex;flex-direction:column}.continue-card .eyebrow{margin-bottom:12px}.continue-card h3{font-family:"Playfair Display",serif;font-size:24px;margin:0 0 10px;font-weight:500}.continue-card p{font-size:12.5px;color:#93a199;line-height:1.7}.continue-card .bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:15px}.continue-card .badge-circle{font-size:40px;color:#dcb776}.book-teasers{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.book-teaser{border:1px solid #e8ebe4;background:#fff;padding:21px 17px 17px;border-radius:16px;min-height:149px;display:flex;flex-direction:column;align-items:start;text-align:left}.book-teaser:hover,.book-tile:hover{border-color:#9ebaaa;transform:translateY(-3px);box-shadow:0 12px 25px rgba(24,62,45,.07)}.teaser-icon{font-size:25px;color:#a68c58;background:#faf6e9;border-radius:12px;width:44px;height:44px;display:grid;place-items:center;margin-bottom:15px}.book-teaser strong{font-family:"Playfair Display",serif;font-size:16px}.book-teaser small{font-size:11px;color:#93a59b;margin-top:5px}.feature-card{padding:26px;display:flex;align-items:center;gap:23px}.feature-icon{width:63px;height:63px;border-radius:18px;display:grid;place-items:center;font-size:31px;background:#edf4e9;color:#4f805b;flex-shrink:0}.feature-card h3{font-size:15px;margin:0 0 6px}.feature-card p{font-size:12px;color:#8da097;line-height:1.5;margin:0}.chips{display:flex;gap:9px;flex-wrap:wrap}.chip{border:1px solid #e2e9e1;border-radius:100px;padding:10px 15px;background:#fff;color:#74887d;font-size:12px;font-weight:800}.chip.active{background:#285b49;color:#fff;border-color:#285b49}.filter-line{display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;margin-bottom:22px}.field{min-height:45px;border:1px solid #e4e9e1;background:#fff;border-radius:12px;padding:0 13px;color:var(--ink);width:100%}.field::placeholder,textarea::placeholder{color:#a6b2aa}.input-wrap{position:relative;max-width:350px;flex:1;min-width:220px}.input-wrap span{position:absolute;left:15px;top:12px;font-size:23px;color:#8ea393}.input-wrap .field{padding-left:45px}.book-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.book-tile{padding:18px 17px;border:1px solid #e5e9e3;background:#fff;border-radius:16px;display:flex;gap:14px;align-items:center;text-align:left;min-width:0}.book-tile .num{color:#b7c3ba;font-size:13px;min-width:24px}.book-tile strong{font-family:"Playfair Display",serif;font-size:16px;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-tile small{font-size:11px;color:#95a49b;display:block;margin-top:4px}.book-tile .arrow{margin-left:auto;color:#a6b9ab;font-size:16px}.part-title{font-family:"Playfair Display",serif;font-size:24px;font-weight:500;margin:28px 0 17px}.reader-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:29px;align-items:start}.reader-side{border:1px solid #e6ebe5;background:#fff;border-radius:17px;padding:16px;position:sticky;top:22px;max-height:calc(100vh - 34px);overflow-y:auto}.reader-side strong{font-size:12px;display:block;margin-bottom:15px}.reader-side select{margin-bottom:13px}.chapter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.chapter-grid button{background:#f9faf7;color:#85958b;border:1px solid #edf1ec;border-radius:8px;height:36px;font-size:12px;font-weight:700}.chapter-grid button.active{background:var(--green);color:#fff;border-color:var(--green)}.reader-side-note{border-top:1px solid var(--line);padding-top:15px;margin-top:17px;font-size:11px;color:#98a99f;line-height:1.7}.reader-main{min-width:0}.reading-card{background:#fff;border:1px solid #e8eae4;border-radius:21px;padding:clamp(22px,4vw,55px);box-shadow:var(--shadow)}.reading-header{border-bottom:1px solid #edf0ea;padding-bottom:25px;margin-bottom:23px}.read-crumb{font-size:10.8px;color:#8ea092;font-weight:800;letter-spacing:.7px}.reading-header h1{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:-1px;font-size:clamp(33px,3.2vw,47px);margin:13px 0}.reader-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.tool-group{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.tool-btn{min-width:35px;height:35px;border:1px solid #e3e9e1;color:#567868;background:#f9faf7;border-radius:9px;padding:0 11px;font-size:12px;font-weight:800}.tool-btn:hover,.tool-btn.selected{background:#e6f1e8;color:#21583c}.verses{max-width:800px;margin:auto}.verse{font-family:"Playfair Display",Georgia,serif;font-weight:400;line-height:1.94;font-size:calc(19px * var(--font-mult));padding:7px 13px 7px 10px;margin:0 -10px 2px;border-radius:8px;white-space:pre-line;transition:background .15s;position:relative}.verse:hover{background:#f9faf5}.verse.highlight{background:#fff2d2}.verse.focused{outline:2px solid #deb76d;background:#fff9e6}.verse-number{font-family:"DM Sans",sans-serif;font-size:10px;font-weight:800;color:#9baf9f;vertical-align:super;margin-right:8px;user-select:none}.verse-tools{display:none;gap:4px;margin-left:13px;white-space:nowrap;vertical-align:middle}.verse:hover .verse-tools,.verse:focus-within .verse-tools{display:inline-flex}.verse-tools button{border:1px solid #e4e7df;border-radius:7px;background:#fff;width:26px;height:26px;font-family:"DM Sans",sans-serif;font-size:14px;color:#5c7969}.verse-tools button.on{background:#e3eddf;color:#1a7550}.verse-bookmark{color:#c99452;font-size:13px;margin-left:6px}.chapter-nav{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:27px}.chapter-nav .btn{flex:1}.context-panel{margin-top:19px;background:#edf3ea;border-radius:14px;padding:21px 24px;border:1px solid #e1ebdc}.context-panel h3{margin:0 0 8px;font-family:"Playfair Display",serif;font-size:20px;font-weight:500}.context-panel p{font-size:12.5px;color:#71887a;line-height:1.8;margin:0}.context-panel .label{font-size:9px;letter-spacing:1.5px;color:#639072;font-weight:800;margin-bottom:8px}.mark-read{margin-top:20px;padding:21px;border:1px solid #e6ebe5;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff}.mark-read strong{font-size:12px}.mark-read small{display:block;font-size:11px;color:#92a398;margin-top:4px}.empty{background:#fff;border:1px dashed #d7e3d6;text-align:center;padding:65px 22px;border-radius:18px;color:#93a196}.empty .symbol{font-size:48px;color:#88a992}.empty h3{font-family:"Playfair Display",serif;font-size:24px;color:#365849;font-weight:500}.empty p{font-size:13px;line-height:1.7}.results{display:flex;flex-direction:column;gap:11px}.result{padding:18px 21px;background:#fff;border:1px solid #e5eae3;border-radius:14px}.result-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.result-ref{font-size:12px;color:#407859;font-weight:800}.result p{color:#516b5a;line-height:1.8;font-size:14px;margin:0}.result-actions{display:flex;gap:7px}.result-actions button{font-size:11px;border:1px solid #edf0e9;background:#f8faf7;border-radius:8px;padding:7px 9px;color:#47715b}.search-panel{background:#fff;padding:24px;border:1px solid #e6ebe4;border-radius:18px;margin-bottom:23px}.search-panel form{display:flex;gap:10px}.search-panel p{font-size:12px;color:#8e9f93;margin:13px 0 0;line-height:1.6}.search-progress{padding:16px;margin-bottom:16px;background:#eff6ee;border:1px solid #dce9d9;border-radius:13px;color:#49775c;font-size:12px;line-height:1.5}.note-card{background:#fff;border:1px solid #e7eae2;border-radius:15px;padding:18px 21px}.note-card p{font-size:13px;line-height:1.7;white-space:pre-wrap;color:#53695a}.note-card .note-header{display:flex;justify-content:space-between;align-items:center;gap:15px}.note-card .note-header strong{font-size:12px;color:#3c8060}.modal-overlay{position:fixed;inset:0;background:rgba(14,32,25,.55);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}.modal-overlay[hidden]{display:none}.modal{position:relative;background:var(--white);padding:28px;border-radius:20px;width:min(520px,100%);max-height:85vh;overflow-y:auto;box-shadow:0 27px 85px rgba(0,0,0,.2)}.modal h2{font-family:"Playfair Display",serif;font-weight:500;margin:0 0 10px;font-size:26px}.modal p{font-size:12px;color:var(--muted);line-height:1.8}.modal textarea{width:100%;min-height:160px;background:#fafbf8;border:1px solid #e3e9e2;border-radius:12px;padding:14px;resize:vertical;color:var(--ink)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;flex-wrap:wrap}.modal-close{position:absolute;top:15px;right:15px;border:0;background:#f4f5ef;border-radius:50%;width:32px;height:32px;color:#4b6a5c}.toast{position:fixed;z-index:110;right:25px;bottom:25px;background:#234e3f;color:#fff;border-radius:12px;padding:13px 18px;font-size:12.5px;box-shadow:0 10px 30px rgba(0,0,0,.18);opacity:0;transform:translateY(15px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translateY(0)}.initial-loading{padding:60px;text-align:center;color:#9eafa3}.muted{color:#94a399}.credit{text-align:center;font-size:10.5px;color:#91a198;line-height:1.7;margin-top:25px}.bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:22px}.reader-note{color:#a2a99d;font-size:11px;margin-top:12px;line-height:1.6}.overlay{display:none}.loading-shimmer{height:20px;background:linear-gradient(90deg,#eff2ec,#f8faf7,#eff2ec);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:6px;margin:22px 0}.loading-shimmer:nth-child(even){width:79%}@keyframes shimmer{to{background-position:-200% 0}}
body.dark{--bg:#121b18;--white:#1c2b25;--soft:#27342c;--line:#30423a;--ink:#ecf3e9;--muted:#afc0b5;--green:#4e9773;--green-light:#2c4439;--shadow:0 13px 35px rgba(0,0,0,.12)}body.dark .sidebar,body.dark .search-pill,body.dark .icon-btn,body.dark .quote-card,body.dark .continue-card,body.dark .feature-card,body.dark .book-teaser,body.dark .book-tile,body.dark .reader-side,body.dark .reading-card,body.dark .mark-read,body.dark .empty,body.dark .result,body.dark .note-card,body.dark .search-panel,body.dark .field,body.dark .modal{background:#1c2b25}body.dark .nav-link.active,body.dark .nav-link:hover,body.dark .daily-mini,body.dark .teaser-icon,body.dark .chip.active,body.dark .context-panel{background:#2b4439}body.dark .hero{background:linear-gradient(120deg,#285944,#153b31)}body.dark .quote-card blockquote,body.dark .empty h3{color:#e5eacb}body.dark .verse:hover,body.dark .tool-btn,body.dark .chapter-grid button,body.dark .result-actions button,body.dark .verse-tools button,body.dark .modal textarea{background:#2a3b31;color:#d2e4d6}body.dark .verse.highlight,body.dark .verse.focused{background:#615134}body.dark .nav-link,body.dark .subtitle,body.dark .result p{color:#b0c2b4}body.dark .btn-light{background:#284939;color:#d6f0df}body.dark .chip{background:#1c2b25;color:#acc1b2}body.dark .chip.active{background:#4b866c;color:white}body.dark .reader-toolbar .tool-btn.selected{background:#2e5644}body.dark .field{color:#ecf3e9}body.dark .book-illustration{box-shadow:10px 22px 40px rgba(0,0,0,.4)}body.dark .brand strong{color:#fff}
@media(max-width:1200px){.book-list{grid-template-columns:repeat(3,1fr)}.book-teasers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.sidebar{position:fixed;transform:translateX(-100%);transition:transform .25s}.sidebar.open{transform:translateX(0)}.overlay.active{display:block;position:fixed;inset:0;background:rgba(10,30,22,.45);z-index:35}.mobile-menu{display:grid}.main-shell{width:100%}.reader-layout{grid-template-columns:170px minmax(0,1fr);gap:17px}.topbar{height:70px}.content{padding-top:25px}}
@media(max-width:680px){.topbar{padding:0 18px}.content{padding:19px 16px 40px}.crumb{font-size:11.5px}.top-actions{gap:6px}.search-pill{min-width:0;width:42px;height:42px;justify-content:center;padding:0}.search-pill>span:nth-child(2),.search-pill kbd{display:none}.icon-btn,.avatar-btn{width:38px;height:38px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:36px 25px 24px}.hero h1{font-size:38px}.hero-art{min-height:180px;max-height:180px}.book-illustration{height:150px;max-width:200px;top:43%}.book-illustration:after{font-size:75px}.home-grid,.bottom-row{grid-template-columns:1fr}.book-teasers,.book-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.book-teaser{min-height:145px}.book-tile{padding:13px 10px;gap:8px}.book-tile .num{min-width:0;font-size:10px}.book-tile strong{font-size:13px}.book-tile .arrow{display:none}.page-heading{align-items:start;flex-direction:column}.title{font-size:35px}.section-title h2{font-size:22px}.reader-layout{display:flex;flex-direction:column}.reader-side{position:relative;width:100%;max-height:none;padding:13px}.chapter-grid{grid-template-columns:repeat(8,1fr)}.reader-side .reader-side-note{display:none}.reading-card{padding:22px 20px}.verse{font-size:calc(18px * var(--font-mult))}.verse-tools{display:inline-flex;gap:2px;margin-left:5px}.verse-tools button{width:25px;height:25px}.reading-header h1{font-size:35px}.chapter-nav .btn{font-size:10.5px;padding:11px}.search-panel form{flex-wrap:wrap}.search-panel form .btn{width:100%}.footer{padding:20px 17px}.mark-read{flex-direction:column;align-items:stretch}}
@media(max-width:390px){.book-list,.book-teasers{grid-template-columns:1fr 1fr}.book-tile .num{display:none}.book-teaser{padding:17px 12px}.chapter-grid{grid-template-columns:repeat(6,1fr)}.crumb{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* -------------------------------------------------------
   BIBLIA CLARA 2 · SALMO LITÚRGICO Y ESPACIO CATEQUISTAS
   ------------------------------------------------------- */
.sidebar{overflow-y:auto}.private-tag{margin-left:auto;font-size:8px;letter-spacing:.45px;border:1px solid #cdd9d0;border-radius:9px;padding:3px 5px;font-weight:800;color:#688272}.bc-home-feature{min-height:120px;align-items:flex-start;text-align:left}.bc-home-feature:hover{transform:translateY(-3px);box-shadow:0 13px 36px rgba(24,58,45,.09)}
.psalm-banner{display:grid;grid-template-columns:minmax(0,1fr) 200px;position:relative;overflow:hidden;background:linear-gradient(130deg,#214f42 0%,#34735d 100%);color:white;border-radius:25px;min-height:280px;padding:41px 43px;margin-bottom:25px;box-shadow:0 18px 55px #1d523d1c}.psalm-banner .eyebrow{color:#e4ca91}.psalm-banner h1{font:500 clamp(34px,4vw,53px) 'Playfair Display',Georgia,serif;letter-spacing:-1.2px;margin:8px 0 15px}.psalm-banner h1 i{font-style:italic;color:#e6d09c}.psalm-banner p{max-width:550px;color:#e0eee3;line-height:1.75;font-size:14px;margin:0 0 25px}.psalm-banner-art{display:flex;align-items:center;justify-content:center;font-size:165px;color:#f8dda766;position:relative}.psalm-banner-art span{position:absolute;font-size:82px;color:#f4d9a4;top:65px;left:86px}.psalm-picker{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.psalm-picker input{background:#ffffffea;color:#1e3e32;border:0;padding:11px 13px;border-radius:10px;font-weight:700;font-size:12px}.psalm-picker button{min-width:37px;background:#ffffff25;border:1px solid #ffffff3c;color:white;border-radius:10px;padding:11px;font-weight:700}.psalm-picker button:hover{background:#ffffff43}.psalm-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(255px,1fr);gap:20px}.psalm-primary,.psalm-info,.psalm-prayer,.psalm-idea{border:1px solid var(--line);border-radius:23px;background:var(--white);padding:28px;box-shadow:var(--shadow)}.psalm-primary{padding:38px 38px 30px}.psalm-primary>.eyebrow{color:#7c9d85}.psalm-number{font:500 20px 'Playfair Display',serif;color:var(--green);margin:15px 0 6px}.psalm-number span{font-size:58px}.psalm-primary h2{font:500 20px 'Playfair Display',serif;margin:0 0 16px}.psalm-muted{font-size:12px;line-height:1.7;color:var(--muted)}.psalm-verse{padding:20px 0;border-top:1px solid var(--line);margin-top:22px}.psalm-verse p{font:17px/1.9 'Playfair Display',Georgia,serif;color:var(--ink);margin-bottom:16px}.psalm-verse b{font:700 10px 'DM Sans',sans-serif;color:#9aab99;margin-right:9px}.psalm-links{display:flex;gap:9px;flex-wrap:wrap}.psalm-right{display:grid;gap:17px;align-content:start}.psalm-right h3{font:500 27px/1.2 'Playfair Display',serif;margin:13px 0}.psalm-info p,.psalm-prayer p,.psalm-idea p{font-size:14px;color:var(--muted);line-height:1.85}.psalm-icon{font-size:26px;color:#bda167;margin-bottom:14px}.psalm-prayer{background:#f1e9dc;border-color:#e8ddca}.psalm-prayer .eyebrow{color:#a0804e}.psalm-prayer p{color:#5d564a;font-family:'Playfair Display',serif;font-size:18px}.psalm-prayer small{font-size:10px;color:#8b7e6a;line-height:1.5}.psalm-idea{padding:19px 24px}.psalm-idea b{color:var(--green)}.psalm-idea p{margin-bottom:0}.psalm-status,.psalm-error{padding:25px 30px;background:var(--white);border:1px solid var(--line);border-radius:22px;font-size:14px}.psalm-error{text-align:center;padding:48px 22px}.psalm-error h2{font:500 29px 'Playfair Display',serif}.psalm-error p{color:var(--muted);line-height:1.7}.psalm-error-symbol{font-size:50px;color:#bca273}
.cat-top{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:19px}.cat-top h1{font:500 clamp(35px,4.5vw,53px) 'Playfair Display',serif;letter-spacing:-1.4px;margin:9px 0 12px}.cat-top h1 i{font-style:normal;color:#ac8b55}.cat-top p{color:var(--muted);font-size:13px;line-height:1.7;max-width:570px}.cat-top-tools{display:flex;gap:7px;flex-wrap:wrap;justify-content:end}.cat-notice{padding:14px 17px;border:1px solid #e8e0ca;background:#fbf6e8;color:#71644a;border-radius:13px;font-size:12px;line-height:1.7;margin-bottom:25px}.cat-section-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px;gap:15px}.cat-section-head h2,.cat-row-head h2{font:500 26px 'Playfair Display',serif;letter-spacing:-.45px;margin:0 0 4px}.cat-section-head small{color:var(--muted);font-size:12px}.cat-section-head label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.cat-section-head select{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:9px 10px;border-radius:10px;font-weight:700}.cat-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.cat-stat{text-align:left;border:1px solid #e4e9df;background:#f1f7f1;padding:19px 17px;display:flex;flex-direction:column;gap:10px;border-radius:20px;color:#244a3b;min-height:177px;transition:transform .2s,box-shadow .2s,border-color .2s}.cat-stat:hover{transform:translateY(-3px);box-shadow:0 12px 22px #1f4b2c19}.cat-stat.selected{border-color:#4c956d;box-shadow:0 0 0 2px #478b6a22}.cat-stat.cream{background:#faf2e3;color:#715a38;border-color:#f1e4ce}.cat-stat.rose{background:#f7edef;color:#8b5664;border-color:#eddfe3}.cat-stat.lilac{background:#f1eef7;color:#695979;border-color:#e4e0ee}.cat-stat-icon{font-size:25px}.cat-stat-name{font-weight:800;font-size:13px}.cat-stat-number{font-weight:800;font-size:29px;letter-spacing:-1px}.cat-stat-number small{font-size:11px;font-weight:500;letter-spacing:0}.cat-stat>small{font-size:10px;opacity:.8}.cat-track{height:5px;background:#0000000f;border-radius:12px;overflow:hidden}.cat-track span{display:block;height:100%;background:currentColor;opacity:.5}.cat-tabs{margin:27px 0 24px;display:flex;gap:7px;overflow-x:auto;border-bottom:1px solid var(--line)}.cat-tabs button{border:0;background:transparent;color:var(--muted);padding:15px 16px 14px;white-space:nowrap;font-weight:800;font-size:12px;border-bottom:3px solid transparent}.cat-tabs button:hover{color:var(--green)}.cat-tabs button.active{color:var(--green);border-bottom-color:var(--green)}.cat-alert{padding:13px 16px;border-radius:11px;margin:8px 0 16px;font-size:12px}.cat-alert.good{background:#e5f4e8;color:#286748}.cat-alert.error,.cat-error{background:#fff1ef;color:#a13d37}.cat-error:empty{display:none}.cat-error{font-size:12px;padding:7px;border-radius:8px}.cat-overview{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:19px}.cat-overview-main,.cat-goal,.cat-small-card{background:var(--white);border:1px solid var(--line);border-radius:21px;padding:26px}.cat-overview-main h2,.cat-small-card h3{font:500 27px 'Playfair Display',serif;margin:9px 0}.cat-overview-main>p,.cat-small-card p,.cat-goal p{font-size:12px;line-height:1.75;color:var(--muted);margin-bottom:20px}.cat-next{background:transparent;border:0;border-top:1px solid var(--line);display:grid;align-items:center;grid-template-columns:78px 1fr 20px;text-align:left;gap:14px;width:100%;padding:15px 3px;color:var(--ink)}.cat-next:hover{background:var(--soft)}.cat-next-date{font-size:11px;color:var(--green);font-weight:800}.cat-next b{font-size:12px;display:block}.cat-next small{font-size:11px;color:var(--muted);display:block;margin-top:5px}.cat-overview-actions{margin-top:17px}.cat-overview-side{display:grid;gap:16px;align-content:start}.cat-goal{text-align:center}.cat-ring{margin:21px auto;width:132px;height:132px;border-radius:50%;background:conic-gradient(#42765d var(--angle),#e9f0e8 var(--angle));display:grid;place-items:center}.cat-ring span{display:grid;place-items:center;width:99px;height:99px;border-radius:50%;background:var(--white);font:500 33px 'Playfair Display',serif}.cat-small-card{background:#f0f4ec}.cat-row-head{display:flex;align-items:start;justify-content:space-between;gap:13px;margin-bottom:21px}.cat-row-head p{margin:5px 0 0;font-size:12px;color:var(--muted);line-height:1.6}.cat-row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.cat-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.cat-filter{background:var(--white);border:1px solid var(--line);color:var(--muted);padding:9px 13px;border-radius:10px;font-weight:700;font-size:11px}.cat-filter.active{color:#fff;background:var(--green);border-color:var(--green)}.cat-search-line{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.cat-search-line input{min-width:0;flex:1;max-width:400px;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:11px 15px;color:var(--ink);font-size:12px}.cat-search-line div{font-size:11px;color:var(--muted)}.cat-list{display:grid;gap:10px}.cat-lesson{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:18px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:17px;align-items:start}.cat-datebox{background:#edf4e9;border-radius:11px;color:#38604a;text-align:center;padding:9px 4px}.cat-datebox strong{font-size:25px;display:block;font-weight:800}.cat-datebox span{font-size:11px;text-transform:uppercase}.cat-lesson-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cat-group-label{font-size:10px;font-weight:800;color:#67816a}.cat-lesson h3{font:600 20px 'Playfair Display',serif;margin:7px 0}.cat-lesson-body>p{font-size:11px;line-height:1.5;color:var(--muted);margin:3px 0 11px}.cat-tags{display:flex;gap:9px;flex-wrap:wrap}.cat-tags span{font-size:10px;color:#6f8b77;background:var(--soft);border-radius:7px;padding:6px 8px}.cat-pill{border-radius:50px;padding:5px 9px;background:#f0f1ed;color:#8a9990;font-size:9px;font-weight:800}.cat-pill.preparado{background:#fff3db;color:#987332}.cat-pill.realizado{background:#e4f5e9;color:#3b7751}.cat-lesson-buttons{display:grid;gap:8px;justify-items:stretch}.cat-lesson-buttons .btn{font-size:10px}.cat-empty{padding:33px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:17px;font-size:13px;background:var(--white)}.cat-calendar{border:1px solid var(--line);border-radius:20px;padding:17px;background:var(--white);overflow:auto}.cat-calendar-heading{display:flex;justify-content:center;align-items:center;gap:35px;margin-bottom:17px;text-transform:capitalize}.cat-calendar-heading h3{font:600 25px 'Playfair Display',serif;min-width:195px;text-align:center;margin:0}.cat-calendar-heading button{height:34px;width:34px;border-radius:10px;border:1px solid var(--line);background:var(--soft);color:var(--green)}.cat-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:4px}.cat-cal-grid.days>div{font-size:10px;text-align:center;font-weight:800;color:var(--muted);padding:9px}.cat-calendar-empty,.cat-calendar-day{min-height:111px;border:1px solid var(--line);border-radius:9px;padding:9px}.cat-calendar-empty{background:var(--soft);opacity:.45}.cat-day-number{font-size:12px;font-weight:800;color:var(--muted);margin-bottom:7px}.cat-calendar-chip{display:block;border:0;width:100%;text-align:left;background:#e9f3eb;border-radius:6px;color:#47735b;font-size:9px;margin:3px 0;padding:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-calendar-chip.event{background:#fff1d9;color:#996d32}.cat-minor-title{font:500 22px 'Playfair Display',serif;margin:27px 0 13px}.cat-event-list{display:grid;gap:7px}.cat-event-row{background:var(--white);border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:145px minmax(0,1fr) 150px 55px;align-items:center;gap:10px;padding:14px;text-align:left;font-size:11px;color:var(--ink)}.cat-event-row:hover{background:var(--soft)}.cat-event-row span:first-child{color:var(--green);font-weight:700}.cat-event-row small{color:var(--muted)}.cat-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cat-resource{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:19px}.cat-resource-icon{font-size:30px;color:#bb985c}.cat-resource h3{font:600 23px 'Playfair Display',serif;margin:8px 0}.cat-resource small{color:var(--green);font-weight:800;font-size:10px}.cat-resource p{color:var(--muted);line-height:1.6;font-size:12px;white-space:pre-wrap;min-height:42px}.cat-resource-actions{display:flex;gap:8px;flex-wrap:wrap}.cat-resource-grid+.cat-notice{margin-top:22px}.cat-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cat-settings article{border:1px solid var(--line);background:var(--white);padding:27px;border-radius:17px}.cat-settings h2{font:500 26px 'Playfair Display',serif;margin:12px 0}.cat-settings p,.cat-settings-note{font-size:12px;line-height:1.7;color:var(--muted)}.cat-settings-actions{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.cat-upload-label{cursor:pointer}.cat-login{min-height:calc(100vh - 200px);display:grid;grid-template-columns:minmax(195px,1fr) minmax(0,1.2fr);border-radius:25px;overflow:hidden;box-shadow:0 18px 55px #16331d15}.cat-login-graphic{background:linear-gradient(145deg,#224f41,#317258);display:flex;align-items:center;justify-content:center;position:relative;font-size:230px;color:#edd49b33}.cat-login-graphic span{position:absolute;color:#e3cb9b;font-size:100px}.cat-login-panel{background:var(--white);padding:55px clamp(23px,5vw,65px);display:flex;flex-direction:column;justify-content:center}.cat-login-panel h1{font:500 clamp(31px,3.5vw,46px)/1.18 'Playfair Display',serif;letter-spacing:-.6px;margin:16px 0}.cat-login-panel>p{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 23px}.cat-auth-form{display:grid;gap:16px}.cat-auth-form label,.cat-form-grid label{font-weight:700;font-size:11px;color:var(--ink);display:flex;flex-direction:column;gap:7px}.cat-auth-form input,.cat-form-grid input,.cat-form-grid textarea,.cat-form-grid select{font:500 13px 'DM Sans',sans-serif;display:block;width:100%;border:1px solid var(--line);border-radius:9px;background:var(--bg);padding:12px 13px;color:var(--ink);outline-offset:2px}.cat-auth-form .btn{width:100%;margin-top:8px}.cat-help,.cat-server-hint{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:20px}.cat-server-hint{padding:14px;background:var(--soft);border-radius:10px}.cat-modal-overlay{position:fixed;z-index:130;inset:0;background:#12281dbb;display:flex;justify-content:center;align-items:center;padding:20px;backdrop-filter:blur(5px)}.cat-modal-overlay[hidden]{display:none}.cat-modal-card{background:var(--white);border-radius:23px;padding:29px;position:relative;max-height:min(86vh,900px);overflow-y:auto;width:min(680px,100%);box-shadow:0 22px 66px #0004}.cat-modal-card h2{font:500 31px 'Playfair Display',serif;margin:0 0 7px}.cat-modal-card>p{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:22px}.cat-modal-x{position:absolute;right:18px;top:17px;border:0;width:33px;height:33px;border-radius:50%;background:var(--soft);color:var(--ink);font-size:20px}.cat-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.cat-form-grid label.cat-full{grid-column:1 / -1}.cat-form-grid textarea{min-height:78px;resize:vertical}.cat-modal-buttons{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:24px}.cat-modal-buttons .cat-delete{margin-right:auto;border-color:#e9bdba;color:#a74840}.cat-settings .cat-auth-form{margin-top:14px}
body.dark .psalm-primary,body.dark .psalm-info,body.dark .psalm-idea,body.dark .cat-overview-main,body.dark .cat-small-card,body.dark .cat-goal,body.dark .cat-lesson,body.dark .cat-calendar,body.dark .cat-calendar-day,body.dark .cat-resource,body.dark .cat-stat,body.dark .cat-stat.cream,body.dark .cat-stat.rose,body.dark .cat-stat.lilac,body.dark .cat-login-panel,body.dark .cat-settings article,body.dark .cat-modal-card,body.dark .cat-next,body.dark .cat-event-row,body.dark .cat-empty,body.dark .cat-filter,body.dark .cat-search-line input,body.dark .cat-auth-form input,body.dark .cat-form-grid input,body.dark .cat-form-grid textarea,body.dark .cat-form-grid select{background:var(--white);color:var(--ink)}body.dark .psalm-prayer{background:#453d31;border-color:#65543a}body.dark .psalm-prayer p{color:#f4dfbb}body.dark .cat-stat{border-color:#506456}body.dark .cat-stat.cream{color:#d6ad75}body.dark .cat-stat.rose{color:#d39caa}body.dark .cat-stat.lilac{color:#bca7d7}body.dark .cat-calendar-chip{background:#2e4839;color:#c0dbc5}body.dark .cat-calendar-chip.event{background:#5d4d2d;color:#ecd19c}body.dark .cat-notice{background:#403c2e;color:#e5d2ad;border-color:#62553a}body.dark .cat-datebox{background:#2b4838;color:#cdecd6}body.dark .cat-pill.pendiente{background:#39433b}body.dark .cat-pill.realizado{background:#2c5b43}body.dark .cat-tags span{background:#273b30}body.dark .cat-login-graphic{background:linear-gradient(135deg,#1e533f,#132e26)}
@media(max-width:1160px){.cat-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cat-top{flex-direction:column}.cat-top-tools{justify-content:flex-start}.cat-overview{grid-template-columns:1fr}.cat-overview-side{grid-template-columns:1fr 1fr}}
@media(max-width:750px){.psalm-columns,.psalm-banner{grid-template-columns:1fr}.psalm-banner{padding:30px 25px}.psalm-banner-art{display:none}.psalm-primary{padding:27px 24px}.cat-login{grid-template-columns:1fr}.cat-login-graphic{min-height:150px;font-size:110px}.cat-login-graphic span{font-size:60px}.cat-login-panel{padding:27px}.cat-resource-grid,.cat-settings{grid-template-columns:1fr}.cat-lesson{grid-template-columns:52px minmax(0,1fr)}.cat-lesson-buttons{grid-column:1/-1;display:flex}.cat-calendar{overflow-x:auto}.cat-cal-grid{min-width:650px}.cat-event-row{grid-template-columns:110px 1fr}.cat-event-row span:last-child{display:none}}
@media(max-width:550px){.cat-stat{min-height:150px;padding:14px}.cat-stat-number{font-size:25px}.cat-top-tools .btn{flex:1}.cat-section-head{align-items:flex-start}.cat-section-head label{flex-direction:column;align-items:flex-end}.cat-overview-side{grid-template-columns:1fr}.cat-form-grid{grid-template-columns:1fr}.cat-modal-card{padding:23px 17px}.cat-next{grid-template-columns:70px 1fr 10px;gap:7px}.cat-row-head{flex-direction:column}.cat-search-line{flex-direction:column;align-items:stretch}.psalm-verse p{font-size:16px}}
@media print{.sidebar,.topbar,.footer,.cat-top-tools,.cat-tabs,.cat-filters,.cat-row-actions,.cat-lesson-buttons,.cat-lesson button,.cat-overview-actions,.cat-calendar-heading button,.cat-modal-overlay,.cat-section-head select,.cat-search-line,.cat-notice,.cat-settings-actions{display:none!important}.main-shell{width:100%!important}.content{padding:0!important}.cat-top{margin-bottom:16px}.cat-stat,.cat-lesson,.cat-resource,.cat-calendar,.cat-overview-main{break-inside:avoid}.cat-stats{grid-template-columns:repeat(4,1fr)}.cat-calendar{overflow:visible}.cat-cal-grid{min-width:0}body{background:white;color:black}}


/* ==== tema-capilla.css ==== */
/* =======================================================
  IDENTIDAD DE LA CAPILLA VIRGEN DEL MILAGRO · PONTEVEDRA
  Capa visual sobre el sitio original. No cambia el menú,
  la estructura de páginas ni los datos de catequesis.
======================================================= */
:root{
  --bg:#f8f9fd;
  --white:#ffffff;
  --soft:#eef3fb;
  --line:#dfe6f0;
  --ink:#132e50;
  --muted:#667d97;
  --green:#0b3a77;
  --green-light:#e9f0fc;
  --gold:#d5a543;
  --shadow:0 15px 42px rgba(13,48,102,.075);
}
::selection{background:#f5dfac;color:#062a59}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-color:#d8a647}
.sidebar{background:#fff;border-right-color:#e0e7f2}
.brand{gap:10px;margin:0 3px 35px;padding:11px 6px;border-radius:14px}
.brand img{height:59px;width:59px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 3px 5px #05234c1d)}
.brand span{min-width:0}
.brand strong{font-family:"DM Sans",sans-serif;font-size:14px;letter-spacing:-.3px;font-weight:800;line-height:1.33;color:#103970}
.brand em{font-weight:800;color:#b78a32;display:block;font-style:normal}
.brand small{font-size:8px;letter-spacing:.55px;line-height:1.35;color:#7286a3;margin-top:5px}
.sidebar-label{color:#8a98b1}
.nav-link{color:#54708e}
.nav-link:hover,.nav-link.active{background:#e8f0fb;color:#0c3e82}
.count{color:#9a7a36}
.private-tag{border-color:#d0b479;color:#9c772c;background:#fffaec}
.daily-mini{background:#f5f0e3}
.daily-mini-icon{background:#f4e2b9;color:#99722f}
.progress-box{border-color:#dfe6f1}
.track{background:#e8eef9}.track-fill{background:linear-gradient(90deg,#0b3f83,#daa944)}
.search-pill,.icon-btn,.avatar-btn{border-color:#e1e8f2;color:#123f80;background:#fff}
.avatar-btn{background:#e7effe}
.crumb span,.section-title>a,.brand em{color:#b58a38}
.eyebrow{color:#6382ab}
.title{color:#153a6c}
.subtitle{color:#6d809b}
.btn-primary{background:#0b3a77;color:#fff;box-shadow:0 9px 22px #0b3a7722}
.btn-primary:hover{background:#082e63}
.btn-outline{border-color:#b9cbe4;color:#0b3a77}
.btn-outline:hover{background:#e8f0fb}
.btn-light{background:#edf3fb;color:#123c79}
.hero{background:linear-gradient(120deg,#052859 0%,#0a3b7b 63%,#145297 100%);box-shadow:0 24px 50px #14396b2b}
.hero .eyebrow{color:#f3d18a}
.hero h1 i{color:#f6d38a}
.hero p{color:#e3ecfb}
.hero .btn{background:#f1cf85;color:#193962}
.hero .btn:hover{background:#f9dca0}
.hero-art{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#daa84d4a,transparent 62%)}
.hero-art::before{border-color:#fff4d045;box-shadow:0 0 0 32px #e8c46e0a,0 0 0 64px #e8c46e0a}
.hero-chapel-logo{width:clamp(175px,25vw,280px);max-height:90%;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 18px 25px #020d244a)}
.quote-card,.continue-card,.feature-card,.reading-card,.reader-side{background:var(--white);border-color:#e0e7f2}
.quote-card blockquote{color:#173d72}
.quote-card::after{color:#e3eaf4}
.quote-card button,.quote-actions button{background:#eef3fb;color:#14467e}
.quote-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;position:relative;z-index:3}
.quote-card .share-inline,.share-inline{border:1px solid #d2bf8e;background:#fff8e9;color:#8f6820;border-radius:9px;padding:9px 12px;font-weight:800;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.share-inline:hover{background:#f9eacc;color:#714f13}
.continue-card,.feature-card,.book-teaser,.cat-resource{box-shadow:var(--shadow)}
.book-tile:hover,.book-teaser:hover{border-color:#c8a157}
.reader-toolbar,.reading-header{border-color:#e5ebf5}
.chapter-grid button{background:#f1f5fc;border-color:#e1e9f4;color:#57769a}
.chapter-grid button.active{background:#0b3b7b;border-color:#0b3b7b;color:#fff}
.read-crumb{color:#9a742e}
.verse-tools button.verse-share{color:#0c4388;font-weight:800}
.verse-tools button.verse-share:hover{color:#875f1a;background:#f7eacb}
.result-actions button[data-share-verse]{color:#0f447f}
.section-title h2,.part-title,.cat-minor-title{color:var(--ink)}
.psalm-banner{background:linear-gradient(125deg,#072a59,#0c4486 75%,#185699);box-shadow:0 20px 46px #0b357f26}
.psalm-banner .eyebrow,.psalm-banner h1 i{color:#f5d28a}
.psalm-banner p{color:#e2ecfc}
.psalm-primary>.eyebrow,.psalm-verse b{color:#7b91ac}
.psalm-number{color:#0e4585}
.psalm-icon,.psalm-idea b{color:#b68b33}
.psalm-prayer{background:#fdf5e4;border-color:#eeddb9}
.psalm-prayer .eyebrow{color:#987023}
.psalm-prayer p{color:#53462c}
.psalm-excerpt{position:relative}
.psalm-share-verse{display:inline-block;margin-left:12px;border:0;background:#edf3ff;color:#16457f;border-radius:7px;padding:5px 9px;font:700 10px 'DM Sans',sans-serif;cursor:pointer;vertical-align:middle}
.psalm-share-verse:hover{background:#f2dfb2;color:#765819}
.btn-gold-outline{background:#fff8e9;border:1px solid #c9a557;color:#77541c}
.btn-gold-outline:hover{background:#f8e5ba}
.psalm-info .share-inline,.psalm-prayer .share-inline{margin-top:13px}
.cat-top h1 i{color:#b78a33}
.cat-stat{background:#eaf1fc;color:#164277;border-color:#d7e5f8}
.cat-stat.selected{border-color:#cf9d41;box-shadow:0 0 0 2px #d6ab5852}
.cat-stat.cream{background:#fff6e8;color:#886123;border-color:#ead7b4}
.cat-stat.rose{background:#edf0fa;color:#4d6598;border-color:#dce5f4}
.cat-stat.lilac{background:#f3f1fb;color:#56538a;border-color:#e6e1f5}
.cat-tabs button.active{color:#0d437e;border-bottom-color:#d0a044}
.cat-login-graphic{background:linear-gradient(140deg,#052859,#0e4b93)}
.cat-login-graphic span{color:#efcb77}
.cat-calendar-chip{background:#e7f0fd;color:#164982}
.cat-calendar-chip.event{background:#fff1d9;color:#90671e}
.cat-datebox{background:#e7effb;color:#14447f}
.cat-guide-time,.cat-resource-icon{color:#b78a32}
.cat-guide-tip,.cat-library-tip{background:#fff4dd;color:#6f5526;border-color:#e8d6ab}
.cat-notice{background:#fff5de;color:#70572b;border-color:#e6ce92}
.cat-bible-external{background:#fff4da;color:#584222}
/* Compartir, independiente del contenido y del orden de las secciones */
.share-preview{border-radius:15px;background:#f1f5fc;border-left:4px solid #d2a345;padding:16px 18px;margin:15px 0 18px;max-height:220px;overflow:auto}
.share-preview strong{color:#143d70;display:block;font-size:14px}
.share-preview p{line-height:1.7;font-size:13px;white-space:pre-line;color:#435874;margin:9px 0}
.share-preview small{font-size:10px;font-weight:700;color:#8b783f}
.share-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.share-option{border:1px solid #d6e0ef;border-radius:11px;background:#fff;color:#173c71;padding:12px 13px;display:flex;justify-content:center;align-items:center;font-weight:800;font-size:12px;text-align:center;min-height:48px}
.share-option:hover{background:#eaf2ff;transform:translateY(-2px)}
.share-option.share-whatsapp{background:#e8f7ed;border-color:#b9dfc9;color:#196236}
.share-footnote{font-size:11px!important;color:#6a7d95!important;line-height:1.6}
body.dark{
  --bg:#0c172a;--white:#172a45;--soft:#1b3455;--line:#2e4562;--ink:#f1f5ff;--muted:#afc1da;--green:#d5ad56;--green-light:#213c62;--shadow:0 12px 38px #0003;
}
body.dark .sidebar,body.dark .search-pill,body.dark .icon-btn,body.dark .quote-card,body.dark .continue-card,body.dark .feature-card,body.dark .book-teaser,body.dark .reading-card,body.dark .reader-side,body.dark .chapter-grid button,body.dark .share-option{background:#172a45;color:#f0f5fe;border-color:#344d70}
body.dark .brand strong,body.dark .title{color:#f0f5ff}
body.dark .brand em{color:#f0c470}
body.dark .nav-link.active,body.dark .nav-link:hover,body.dark .daily-mini{background:#233f65;color:#e3edfb}
body.dark .hero{background:linear-gradient(120deg,#05152e,#0a356c)}
body.dark .quote-card blockquote{color:#f2e8d5}
body.dark .quote-card button,body.dark .share-inline,body.dark .psalm-share-verse{background:#294365;color:#f4d89e;border-color:#927645}
body.dark .psalm-banner{background:linear-gradient(130deg,#041c40,#0d417e)}
body.dark .psalm-prayer{background:#3e3327;border-color:#67543a}
body.dark .psalm-prayer p{color:#f6e6c3}
body.dark .psalm-number{color:#f1ce8b}
body.dark .psalm-primary>.eyebrow{color:#afc1da}
body.dark .cat-stat{background:#1b385c;color:#e7f0ff;border-color:#345477}
body.dark .cat-stat.cream{background:#3b3425;color:#f0d295;border-color:#665437}
body.dark .cat-stat.rose{background:#252f4d;color:#cdddfa;border-color:#3f5074}
body.dark .cat-stat.lilac{background:#322e4b;color:#dacff6;border-color:#50466d}
body.dark .cat-login-graphic{background:linear-gradient(140deg,#071c3d,#0b3a73)}
body.dark .cat-guide-tip,body.dark .cat-library-tip,body.dark .cat-bible-external{background:#3b3123;color:#f1deb6}
body.dark .share-preview{background:#203757;border-color:#d0a04d}
body.dark .share-preview strong{color:#f6e4bc}
body.dark .share-preview p,body.dark .share-footnote{color:#c3d2e5!important}
body.dark .share-option.share-whatsapp{background:#204c3d;color:#c9eed8;border-color:#4c7b60}
@media(max-width:680px){
  .brand{margin-bottom:24px}.brand img{width:56px;height:56px}
  .hero-chapel-logo{width:175px}
  .quote-actions{gap:6px}
  .share-options{grid-template-columns:1fr}
  .psalm-share-verse{margin-left:7px;margin-top:6px}
}
@media print{.share-inline,.verse-share,.psalm-share-verse,.btn-gold-outline,.share-options{display:none!important}}


/* ==== comunidad.css ==== */
/* Nueva sección al final del menú: respeta la temática azul/dorada original. */
.community-banner{border-radius:22px;background:linear-gradient(113deg,#072b61,#0d488c 77%,#245b98);color:#fff;padding:30px 32px;display:flex;gap:20px;align-items:center;justify-content:space-between;box-shadow:0 16px 38px #1039692a;min-height:185px}
.community-banner h2{color:#fff;font-family:'Playfair Display',Georgia,serif;font-size:clamp(23px,3vw,34px);line-height:1.2;max-width:530px;margin:8px 0 9px}
.community-banner p{color:#deebfc;line-height:1.7;font-size:13px;max-width:550px}
.community-banner .eyebrow{color:#eed39b}
.community-banner img{width:145px;height:145px;object-fit:contain;filter:drop-shadow(0 9px 15px #0003)}
.community-stats{margin:22px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.community-stat{border:1px solid var(--line);border-radius:17px;background:var(--white);padding:17px;display:flex;flex-direction:column;gap:4px;min-height:125px}
.community-stat span{font-size:20px;color:#bd8c38}
.community-stat strong{font-size:clamp(22px,3vw,31px);font-weight:800;letter-spacing:-.7px;color:var(--ink);font-variant-numeric:tabular-nums}
.community-stat small{color:var(--muted);font-size:11px;line-height:1.35}
.community-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.85fr);gap:20px;align-items:start;margin-bottom:35px}
.community-formbox,.community-aside-card{background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:27px}
.community-formbox h2,.community-aside-card h3{font-family:'Playfair Display',Georgia,serif;color:var(--ink);font-size:26px;margin:7px 0 7px}
.community-formbox>p,.community-aside-card p{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 16px}
.community-formbox form{display:flex;flex-direction:column;gap:17px;margin-top:20px}
.community-formbox label,.community-rating legend{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:800;color:var(--ink)}
.community-rating{padding:0;margin:0;border:0}
.community-rating legend{margin-bottom:4px}
.community-stars{display:flex;gap:7px;align-items:center}
.community-star{font-size:32px;line-height:1.1;padding:5px 3px;color:#bcc7da;cursor:pointer;border:0;background:transparent;transition:transform .15s,color .15s}
.community-star:hover{transform:translateY(-2px);color:#d4a247}
.community-star.selected{color:#daa83e}
.community-rating small,.community-small{font-size:11px!important;color:var(--muted)!important;line-height:1.7}
.community-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.community-formbox .field{width:100%;margin:0;min-height:42px;border-radius:9px;padding:11px 13px;box-sizing:border-box;outline-offset:3px}
.community-formbox textarea{resize:vertical;min-height:145px;font-family:inherit;font-size:13px;line-height:1.6}
.community-formbox select.field{background:var(--white);color:var(--ink)}
.community-hp{position:absolute!important;overflow:hidden!important;width:1px!important;height:1px!important;left:-10000px!important;opacity:0!important}
.community-message-status{font-size:13px;font-weight:700;line-height:1.65;color:#145e40}
.community-message-status:empty{display:none}
.community-message-status[data-error=true]{color:#a14231;background:#fff0eb;padding:12px;border-radius:10px}
.community-message-status[data-error=warning]{color:#996414;background:#fff6e3;padding:12px;border-radius:10px}
.community-submit{align-self:flex-start;padding:13px 20px}
.community-side{display:grid;gap:16px}
.community-aside-icon{width:50px;height:50px;display:grid;place-items:center;font-size:31px;color:#c6983f;background:#fff4de;border-radius:14px}
.community-aside-card.alt{background:linear-gradient(135deg,#fff9eb,var(--white))}
.community-like{display:inline-flex;gap:5px;align-items:center;justify-content:center;white-space:nowrap;border-radius:9px;border:1px solid #d9c292;padding:8px 12px;background:#fff7e4;color:#8b662a;font-size:12px;font-weight:800;cursor:pointer;transition:background .2s,transform .2s;font-family:inherit}
.community-like:hover{background:#f5e7c4;transform:translateY(-1px)}
.community-like.liked{background:#f7e0e6;border-color:#db9baf;color:#a62650}
.community-like:disabled{cursor:wait;opacity:.6}
.community-main-like{font-size:14px;padding:13px 17px;margin-bottom:12px}
.community-vote-inline{display:inline-flex;vertical-align:middle;margin-left:6px;padding:5px 8px;font-size:11px;gap:3px}
.result-actions .community-vote-inline{margin:0}
.psalm-links .community-like{font-size:12px}
.community-summary-mini{background:#e9f1fe;border:1px solid #ccdaed;border-radius:13px;padding:13px 16px;color:#17416f;margin-top:22px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.community-summary-mini strong{color:inherit}
.community-summary-mini a{font-size:12px;font-weight:800;color:#1c4f8c;text-decoration:underline}
body.dark .community-stat,body.dark .community-formbox,body.dark .community-aside-card{background:#172a45;border-color:#344d70}
body.dark .community-banner{background:linear-gradient(125deg,#061834,#0a386d)}
body.dark .community-formbox select.field{background:#1a314e;color:#f0f5fe}
body.dark .community-star{color:#526780}
body.dark .community-star.selected{color:#e6b957}
body.dark .community-like{background:#243d5e;border-color:#867449;color:#f5d896}
body.dark .community-like.liked{color:#ffb2c4;border-color:#955e76}
body.dark .community-aside-card.alt{background:#25354a}
body.dark .community-summary-mini{background:#203956;border-color:#3b5478;color:#e4ecf8}
body.dark .community-summary-mini a{color:#f5d98a}
@media(max-width:990px){.community-stats{grid-template-columns:repeat(2,1fr)}.community-layout{grid-template-columns:1fr}.community-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.community-banner{padding:21px;min-height:0}.community-banner img{width:81px;height:81px}.community-banner h2{font-size:23px}.community-row,.community-side{grid-template-columns:1fr}.community-formbox,.community-aside-card{padding:20px}.community-stat{padding:12px;min-height:100px}.community-stats{gap:8px}.community-stat strong{font-size:24px}}
/* Evita que los nuevos contadores se corten en celulares. */
.verse-tools button.community-like,.verse-tools .community-like{width:auto;height:auto;min-height:29px;padding:5px 8px;font-size:10px;border-radius:8px;line-height:1.2}
.result-top,.result-actions{flex-wrap:wrap}
.psalm-verse .community-like{font-family:'DM Sans',sans-serif;font-size:11px}
@media(max-width:680px){.verse-tools{flex-wrap:wrap;max-width:100%;vertical-align:middle}.verse-tools button.community-like{margin:4px 0 2px 3px;white-space:nowrap}.quote-card footer{flex-wrap:wrap;gap:10px}}
.sidebar{overflow-y:auto}
.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:#d0d9e9;border-radius:8px}

/* === ME GUSTA DESTACADO: INICIO Y CABECERA ===
   Mismo voto site@general de MySQL, sin crear un contador paralelo.
*/
.community-welcome-like{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:18px;padding:21px 26px;margin:0 0 20px;border:1px solid #a9843d66;border-radius:20px;background:linear-gradient(115deg,#092c5e 0%,#0d3d79 60%,#174d8b 100%);box-shadow:0 13px 30px rgba(11,49,104,.16);color:#fff}
.community-welcome-like:after{content:'✦';position:absolute;right:19%;top:-35px;font-size:160px;color:#ffffff0b;z-index:-1;pointer-events:none}
.community-welcome-heart{height:68px;width:68px;flex:0 0 68px;display:grid;place-items:center;border:1px solid #f2d08c77;border-radius:19px;background:linear-gradient(145deg,#dcb66a,#9e7129);color:#fffaf1;font-size:39px;text-shadow:0 2px 5px #51371277;box-shadow:inset 0 1px #fff8,0 6px 17px #010e2933}
.community-welcome-text{flex:1;min-width:0}
.community-welcome-kicker{font-size:9px;color:#f7d99e;font-weight:800;letter-spacing:1.15px}
.community-welcome-text h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(22px,2.4vw,30px);font-weight:600;letter-spacing:-.5px;line-height:1.18;margin:5px 0 7px;color:#fff}
.community-welcome-text p{color:#e0e9f7;font-size:12px;line-height:1.6;margin:0}
.community-welcome-action{display:flex;align-items:center;justify-content:center;flex:0 0 auto;flex-direction:column;gap:7px;min-width:180px}
.community-like.community-home-like{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;background:linear-gradient(180deg,#ffe6aa,#edc77b);color:#173b68;border:1px solid #fbe6b9;border-radius:14px;box-shadow:0 8px 21px #04152e42;font-size:14px;font-weight:800;padding:10px 14px}
.community-like.community-home-like:hover{background:linear-gradient(180deg,#fff2c9,#f6d390);transform:translateY(-2px)}
.community-home-like-heart{font-size:25px;line-height:1;transition:transform .2s}
.community-home-like-number{min-width:30px;padding:5px 9px;border-radius:8px;background:#0b366c;color:white;font-weight:800;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.community-like.community-home-like.liked{background:linear-gradient(180deg,#ffcfde,#f6a9c5);border-color:#ffd3e5;color:#742341}
.community-like.community-home-like.liked .community-home-like-heart{transform:scale(1.2);color:#bd164f}
.community-welcome-action small{font-size:10px;line-height:1.5;color:#d5e3f6;text-align:center}
.community-like.community-top-like{background:#fff9eb;border:1px solid #ddc18b;color:#74511e;min-height:41px;border-radius:13px;padding:8px 10px;gap:7px;font-size:11px;box-shadow:0 4px 10px rgba(17,54,91,.05)}
.community-like.community-top-like:hover{background:#fbe8bd}
.community-top-heart{font-size:20px;line-height:1;color:#bf8928;transition:transform .2s}
.community-top-count{display:inline-grid;place-items:center;background:#0d407c;color:#fff;border-radius:7px;min-width:23px;padding:3px 5px;font-size:11px;font-variant-numeric:tabular-nums}
.community-like.community-top-like.liked{color:#8c2450;background:#fff0f4;border-color:#f1bdd1}
.community-like.community-top-like.liked .community-top-heart{color:#d6366c;transform:scale(1.15)}
body.dark .community-welcome-like{background:linear-gradient(115deg,#061b3a,#0c3a71);border-color:#846d43}
body.dark .community-like.community-home-like{background:linear-gradient(180deg,#ffe6aa,#e9c074);color:#15345c}
body.dark .community-like.community-home-like.liked{background:#ffbdd4;color:#742341}
body.dark .community-like.community-top-like{background:#293f5f;color:#f7da9d;border-color:#927748}
body.dark .community-like.community-top-like.liked{background:#4e314a;color:#ffd9e5;border-color:#ae7390}
@media(max-width:1180px){.community-welcome-like{flex-wrap:wrap}.community-welcome-action{margin-left:auto}}
@media(max-width:980px){.community-welcome-like{flex-wrap:nowrap}.community-welcome-action{margin-left:0}}
@media(max-width:780px){.community-welcome-like{flex-wrap:wrap}.community-welcome-action{width:100%;margin-left:0}.community-like.community-home-like{width:100%;min-height:54px}}
@media(max-width:680px){.community-top-like{display:none!important}.community-welcome-like{padding:18px 17px;gap:12px;margin-bottom:17px}.community-welcome-heart{height:50px;width:50px;flex-basis:50px;font-size:30px;border-radius:13px}.community-welcome-text h2{font-size:22px}.community-welcome-kicker{font-size:8px;letter-spacing:.6px}.community-welcome-text p{font-size:11px}}
@media print{.community-welcome-like,.community-top-like{display:none!important}}


/* ==== pwa.css ==== */
/* Instalación PWA — conserva la estética azul y dorado del proyecto. */
.pwa-install-btn[hidden],.pwa-help-overlay[hidden]{display:none!important}
.pwa-install-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border:1px solid #bd9550;border-radius:12px;background:linear-gradient(145deg,#f8e7b8,#dab66b);color:#0b366c;font:800 12px/1.15 "DM Sans",system-ui,sans-serif;white-space:nowrap;box-shadow:0 5px 16px rgba(11,54,108,.13)}
.pwa-install-btn:hover{background:linear-gradient(145deg,#fff1ce,#e8c780);transform:translateY(-1px)}
.pwa-install-btn:focus-visible,.pwa-help-close:focus-visible,.pwa-help-ok:focus-visible{outline:3px solid #c99b3f;outline-offset:3px}
.pwa-download-symbol{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#0b366c;color:#f7e5b3;font-size:17px;font-weight:900}
.pwa-help-overlay{position:fixed;inset:0;background:rgba(5,20,41,.6);z-index:120;display:grid;place-items:center;padding:20px;backdrop-filter:blur(4px)}
.pwa-help-panel{position:relative;width:min(400px,100%);background:#fff;color:#182e4a;border:1px solid #e6c88d;border-radius:24px;padding:28px;box-shadow:0 30px 70px rgba(0,0,0,.24);text-align:center}
.pwa-help-panel img{object-fit:contain;border-radius:18px;box-shadow:0 8px 20px rgba(11,54,108,.12)}
.pwa-help-panel h2{font:600 25px/1.2 "Playfair Display",Georgia,serif;margin:15px 0 12px}
.pwa-help-panel p{line-height:1.65;font-size:14px;color:#52657b;margin:0 0 20px}
.pwa-help-close{position:absolute;right:14px;top:14px;border:0;border-radius:10px;background:#f1f4f9;color:#28415f;width:32px;height:32px;font-size:24px;line-height:1}
.pwa-help-ok{border:0;border-radius:12px;background:#0b366c;color:white;font-weight:800;padding:12px 23px}
body.dark .pwa-help-panel{background:#19283b;color:#f6f0df;border-color:#bd9550}
body.dark .pwa-help-panel p{color:#c5ceda}
@media(max-width:1130px){body.pwa-install-available .crumb{display:none}}
@media(max-width:980px){body.pwa-install-available .topbar{gap:9px}}
@media(max-width:850px){body.pwa-install-available .community-top-like{display:none!important}body.pwa-install-available .search-pill{min-width:0;width:42px;height:42px;justify-content:center;padding:0}body.pwa-install-available .search-pill>span:nth-child(2),body.pwa-install-available .search-pill kbd{display:none}}
@media(max-width:430px){body.pwa-install-available #resume-btn{display:none}body.pwa-install-available .topbar{gap:8px}body.pwa-install-available .top-actions{gap:6px}body.pwa-install-available .pwa-install-btn{padding:9px 8px;gap:6px;font-size:10.5px}}
@media(max-width:355px){body.pwa-install-available #theme-btn{display:none}}
@media print{.pwa-install-btn,.pwa-help-overlay{display:none!important}}


/* ==== noticias.css ==== */
/* Barra informativa ligera: azul y dorado de Capilla Virgen del Milagro - Pontevedra */
.cad-news-banner {
  --news-blue: #0b366c;
  --news-gold: #cba95d;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 10px 23px;
  min-height: 58px;
  background: linear-gradient(105deg, rgba(11,54,108,.065), rgba(203,169,93,.105));
  border-bottom: 1px solid rgba(11,54,108,.09);
  color: var(--news-blue);
  font-family: inherit;
}
.cad-news-tag {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1px solid rgba(203,169,93,.47);
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  font-weight: 800;
  font-size: 11px;
  letter-spacing: .055em;
  white-space: nowrap;
  color: var(--news-blue);
}
.cad-news-tag-symbol {color: #b28c43; font-size: 14px;}
.cad-news-link {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  color: inherit;
  text-decoration: none;
}
.cad-news-link:hover .cad-news-headline {text-decoration: underline; text-underline-offset: 3px;}
.cad-news-headline {min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.cad-news-link-icon {flex-shrink: 0; opacity: .65;}
.cad-news-side {display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0;}
.cad-news-date {font-size: 11px; opacity: .72; white-space: nowrap;}
.cad-news-count {font-size: 11px; opacity: .65; white-space: nowrap;}
.cad-news-arrow {
  display: grid; place-items: center;
  width: 29px; height: 29px; padding: 0;
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(11,54,108,.12);
  color: var(--news-blue);
  border-radius: 8px;
  cursor: pointer;
  font-size: 18px;
  transition: background .15s ease;
}
.cad-news-arrow:hover {background: #fff;}
.cad-news-arrow:focus-visible, .cad-news-link:focus-visible {outline: 3px solid #d7b36b; outline-offset: 2px;}
.cad-news-arrow[hidden] {display:none!important;}
body.dark .cad-news-banner {background: linear-gradient(100deg, rgba(203,169,93,.08),rgba(11,54,108,.22)); color:#e8e3d8; border-color:rgba(203,169,93,.18);}
body.dark .cad-news-tag,body.dark .cad-news-arrow {background:rgba(255,255,255,.07);border-color:rgba(203,169,93,.23); color:#f0d69c;}
@media(max-width:960px){
  .cad-news-banner {gap:9px; padding:9px 14px;}
  .cad-news-tag {font-size:0; padding:7px 8px;}
  .cad-news-tag-symbol {font-size:15px;}
  .cad-news-date {display:none;}
}
@media(max-width:620px){
  .cad-news-banner {flex-wrap:wrap; gap:3px 9px; min-height:76px; padding:9px 14px; align-content:center;}
  .cad-news-tag{font-size:10px; padding:3px 8px; letter-spacing:.02em;}
  .cad-news-tag-symbol{font-size:12px;}
  .cad-news-link{order:3; flex-basis:100%; font-size:12px; padding:1px 0;}
  .cad-news-side{margin-left:auto;gap:5px;}
  .cad-news-count{font-size:10px;}
  .cad-news-arrow{width:25px;height:25px;}
}


/* ==== mejoras-lectura.css ==== */
/* Capilla Virgen del Milagro - Pontevedra · Lectura, audio y Biblia · 2026-10-27 */
.read-bible-banner{position:relative;display:flex;min-height:232px;align-items:center;overflow:hidden;border-radius:28px;margin:24px 0 30px;background:#082953 url('assets/leer-la-biblia.jpg') center center/cover no-repeat;box-shadow:0 24px 48px rgba(5,38,78,.22);border:1px solid rgba(223,188,116,.45);text-decoration:none;color:#fff!important;isolation:isolate;transition:transform .25s,box-shadow .25s}
.read-bible-banner::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,22,52,.96) 0%,rgba(2,31,68,.87) 37%,rgba(2,31,68,.18) 85%);z-index:0;pointer-events:none}
.read-bible-banner:hover{transform:translateY(-3px);box-shadow:0 30px 54px rgba(5,38,78,.30)}
.read-bible-banner:focus-visible{outline:3px solid #e9c879;outline-offset:4px}
.read-bible-content{position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:11px;width:min(62%,550px);padding:32px 35px}
.read-bible-content strong{display:block;font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.08;color:#fff}
.read-bible-content>span:nth-child(3){line-height:1.5;font-size:.99rem;color:#f2f0ee;max-width:410px}
.read-bible-eyebrow{color:#f3d68c!important;font-size:.72rem;letter-spacing:.11em;font-weight:800}
.read-bible-cta{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#f1d58c,#cda252);border-radius:999px;padding:11px 20px;font-size:.88rem;font-weight:800;color:#153355!important;box-shadow:0 6px 20px rgba(10,25,40,.15)}
.read-bible-cta span{font-size:1.1rem}
.read-bible-visual{display:none}
.cad-explication{background:linear-gradient(135deg,#fffefa,#f6f0e5);border:1px solid #e7c988;border-left:5px solid #cba755;border-radius:22px;padding:24px 24px 21px;margin:18px 0 22px;color:#233955;box-shadow:0 14px 32px rgba(17,46,82,.06)}
.exp-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px}
.exp-icon{display:grid;place-items:center;flex:none;height:47px;width:47px;font-size:1.5rem;background:#f5dfad;color:#193e6e;border-radius:15px}
.exp-kicker{display:block;color:#a2752d;font-size:.72rem;letter-spacing:.1em;font-weight:800}
.cad-explication h2{font-family:'Playfair Display',serif;font-size:clamp(1.15rem,2vw,1.5rem);margin:4px 0 0;color:#143664}
.cad-explication h3{font-size:1.08rem;color:#20426c;margin:12px 0 8px}
.cad-explication p{font-size:.99rem;line-height:1.7;margin:0 0 12px;color:#44516a}
.exp-verse{background:#fff;border:1px solid #e8dcba;border-radius:14px;padding:15px 16px;margin:15px 0}
.exp-verse span{display:block;color:#93692f;font-size:.71rem;letter-spacing:.08em;font-weight:800;margin-bottom:7px}
.exp-verse p{margin:0;font-style:italic;color:#354765}
.exp-question{background:rgba(212,179,100,.16);border-radius:13px;padding:14px 16px}
.exp-question b{color:#17416c}
.exp-question p{margin:4px 0 0}
.cad-explication small{display:block;color:#677487;font-size:.76rem;line-height:1.5;margin-top:14px}
.exp-loading{font-size:.92rem;color:#6d778b;padding:15px 0}
.audio-main-btn{background:#0d3a73!important;color:white!important;border:1px solid #0d3a73!important;border-radius:999px!important;padding:10px 16px!important}
.audio-restart-btn{border-radius:999px!important;border:1px solid #c8a35f!important;color:#775122!important;background:#fff9ed!important;padding:10px 14px!important}
.audio-restart-btn:disabled{opacity:.45;cursor:not-allowed}
.voice-status{font-size:.73rem;color:#65758b;min-width:90px;align-self:center}
body.dark .cad-explication{background:linear-gradient(135deg,#1a2b42,#0e1e32);border-color:#806943;color:#f7f3e9}
body.dark .cad-explication h2,body.dark .cad-explication h3,body.dark .exp-question b{color:#f6db9f}
body.dark .cad-explication p,body.dark .exp-verse p{color:#e2e9f3}
body.dark .exp-verse{background:#17283d;border-color:#685633}
body.dark .voice-status{color:#aabbce}
@media(max-width:720px){.read-bible-banner{min-height:290px;background-position:69% center}.read-bible-banner::before{background:linear-gradient(90deg,rgba(3,24,51,.98),rgba(3,24,51,.81) 67%,rgba(3,24,51,.42))}.read-bible-content{width:92%;padding:23px 23px;gap:13px}.read-bible-content>span:nth-child(3){max-width:330px}.cad-explication{padding:18px}.voice-status{width:100%;margin-top:4px}.reader-toolbar .tool-group{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.read-bible-banner{transition:none}.read-bible-banner:hover{transform:none}}
.pwa-update-ready{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);border:1px solid #ead293;border-radius:999px;padding:12px 20px;background:#0b366c;color:#f5da92;z-index:100000;box-shadow:0 12px 24px #0b254744;cursor:pointer;font:600 .87rem 'DM Sans',sans-serif}


/* ==== reflexion.css ==== */
/* Tarjeta de reflexión del día: se adapta a la identidad Capilla Virgen del Milagro - Pontevedra */
.daily-reflection-card{min-height:285px;display:flex;flex-direction:column;gap:11px}
.daily-reflection-card::after{pointer-events:none}
.daily-reflection-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.daily-reflection-date{font-size:11px;line-height:1.4;color:#687995;font-weight:650;text-transform:capitalize}
.daily-reflection-card h3{color:#163c72;font-size:clamp(1.25rem,2.1vw,1.6rem);line-height:1.27;margin:6px 0 1px;position:relative;z-index:1}
.daily-reflection-card blockquote{font-size:clamp(1rem,1.7vw,1.15rem);line-height:1.6;margin:0;padding:0;border:0;position:relative;z-index:1}
.daily-reflection-gospel{font-size:12px;color:#58728e;margin:0}
.daily-reflection-footer{display:flex;flex-direction:column;gap:14px;margin-top:auto;position:relative;z-index:2}
.daily-reflection-footer .quote-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.daily-reflection-link{font-size:12px;font-weight:800;text-decoration:none;color:#14557f;background:#edf4fa;padding:9px 11px;border-radius:9px;display:inline-flex}
.daily-reflection-link:hover{text-decoration:underline}
.daily-reflection-source{font-size:11px;color:#65738b}
.daily-reflection-loading{opacity:.78}
body.dark .daily-reflection-card h3{color:#f0deb6}
body.dark .daily-reflection-date,body.dark .daily-reflection-gospel,body.dark .daily-reflection-source{color:#b5c5d8}
body.dark .daily-reflection-link{background:#294365;color:#f4d89e}


/* ==== explorar-fe.css ==== */
/* Capilla Virgen del Milagro - Pontevedra — módulos de formación y comunidad. No altera estilos de otras páginas. */
.fe-top-card{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:26px 30px;border-radius:22px;background:linear-gradient(130deg,#0d4153,#147485);color:#fff;overflow:hidden;position:relative;margin-bottom:24px;box-shadow:0 12px 36px rgba(18,86,103,.18)}.fe-top-card span{font-size:.72rem;letter-spacing:.13em;color:#e3c98b;font-weight:800}.fe-top-card h2{max-width:600px;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.22;margin:12px 0}.fe-top-card p{max-width:620px;color:#e0f3f4;font-size:.97rem}.fe-top-symbol{font-size:140px;line-height:1;color:rgba(255,255,255,.12);user-select:none}
.fe-filter,.fe-selector,.fe-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:16px 0}.fe-chip{background:var(--surface,#fff);color:var(--text,#19485a);border:1px solid rgba(20,102,122,.25);padding:9px 15px;border-radius:999px;cursor:pointer;font:600 .86rem 'DM Sans',sans-serif}.fe-chip.selected{background:#14667a;color:#fff;border-color:#14667a}.fe-group-title{display:flex;align-items:center;justify-content:space-between;margin:26px 0 14px}.fe-group-title h2{font-size:1.4rem;margin:0}.fe-group-title span{font-size:.81rem;color:var(--muted,#71818c)}
.fe-catalog-grid,.fe-small-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.fe-tile,.fe-mini-card,.fe-panel,.fe-term,.fe-entry{border:1px solid rgba(20,102,122,.14);border-radius:18px;background:var(--card,#fff);box-shadow:0 8px 25px rgba(15,70,90,.05)}.fe-tile{padding:20px;min-height:190px;text-decoration:none!important;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}.fe-tile:hover{transform:translateY(-3px);border-color:#c7a15d}.fe-tile-symbol{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:rgba(20,102,122,.10);color:#14667a;font-weight:800;font-size:1.5rem;margin-bottom:13px}.fe-tile h3{margin:0 0 7px;font-size:1.04rem;color:var(--text,#183e4e)}.fe-tile p{font-size:.83rem;line-height:1.5;margin:0 0 15px;color:var(--muted,#667783);flex:1}.fe-tile>span{font-size:.79rem;color:#148396;font-weight:800}
.fe-back{margin-bottom:12px}.fe-back-link{font-size:.85rem;text-decoration:none;color:#17798a;font-weight:700}.fe-module-head{margin-bottom:23px}.fe-module-head h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.9rem,4vw,2.6rem);margin:7px 0 5px;line-height:1.2}.fe-module-head p{margin:0;color:var(--muted,#667783)}.fe-panel{padding:26px;max-width:1050px}.fe-panel h3{font-size:1.13rem;margin:3px 0 12px}.fe-panel p,.fe-panel li{line-height:1.6}.fe-panel>p{margin-bottom:14px}.fe-muted{font-size:.84rem;color:var(--muted,#6c7b86);margin-top:15px}.fe-today-date{display:inline-flex;border-radius:12px;background:rgba(20,102,122,.10);color:#15687a;padding:6px 10px;font-size:.78rem;font-weight:800;margin-bottom:13px}.fe-prayer{padding:22px;border-radius:16px;background:linear-gradient(110deg,rgba(20,102,122,.08),rgba(221,188,121,.13));border-left:4px solid #c7a15d;margin:18px 0}.fe-prayer span{font-size:.74rem;color:#247085;font-weight:800}.fe-prayer h2{font-size:1.42rem;line-height:1.4;font-family:'Playfair Display',Georgia,serif;margin:8px 0}.fe-prayer p{margin-bottom:0}.fe-source-link{display:inline-flex;margin:10px 0;padding:12px 18px;border-radius:12px;background:#14667a;color:white!important;text-decoration:none!important;font-weight:700}.fe-check-label,.fe-setting{display:flex;align-items:center;gap:12px;cursor:pointer;padding:11px 9px;font-weight:600;border-radius:12px}.fe-check-label input,.fe-setting input{width:19px;height:19px;accent-color:#17798a}.fe-form{display:grid;gap:10px;max-width:740px}.fe-form label{font-weight:700;color:var(--text,#244457);font-size:.88rem}.fe-form input,.fe-form textarea,.fe-input{width:100%;padding:12px 14px;border:1px solid rgba(70,100,120,.28);border-radius:12px;background:var(--surface,#fff);color:var(--text,#1c4756);font:inherit}.fe-form button{justify-self:start}.fe-entry{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:17px;margin-top:12px;box-shadow:none}.fe-entry strong,.fe-entry small{display:block}.fe-entry small{font-size:.75rem;color:var(--muted,#71818c);margin-top:2px}.fe-entry p{white-space:pre-wrap;overflow-wrap:anywhere;max-width:670px;margin:10px 0 0}.fe-mini-card{padding:17px;text-align:left;cursor:pointer;font:inherit;color:var(--text,#1c4756);min-width:0}.fe-mini-card strong,.fe-mini-card small{display:block}.fe-mini-card strong{margin-bottom:7px}.fe-mini-card small{color:var(--muted,#758590);font-size:.78rem;line-height:1.5}.fe-mini-card p{font-size:.82rem;margin:8px 0}.fe-mini-card button{margin-top:10px}.fe-answer{margin-top:18px;background:rgba(20,102,122,.055);border-radius:14px;padding:16px;line-height:1.65}.fe-answer h3{margin-top:0}.fe-timeline{border-left:3px solid rgba(20,102,122,.20);margin:22px 0 14px 17px;padding-left:23px}.fe-era{display:flex;gap:12px;margin:0 0 18px;position:relative}.fe-era>span{width:34px;height:34px;border-radius:50%;background:#14667a;color:white;display:grid;place-items:center;font-weight:700;flex:none}.fe-era h4{margin:1px 0 5px}.fe-era small{color:#ad813c}.fe-era p{margin:6px 0}.fe-accordion details{border:1px solid rgba(20,102,122,.15);border-radius:12px;padding:15px;margin-bottom:10px;background:rgba(20,102,122,.03)}.fe-accordion summary{font-weight:750;cursor:pointer;line-height:1.35}.fe-accordion p{margin:10px 0 0;white-space:pre-wrap}.fe-map-visual{border-radius:18px;background:linear-gradient(155deg,#eef7f6,#f8f1e2);overflow:hidden;margin:15px 0}.fe-map-visual svg{width:100%;height:auto}.fe-term{padding:16px;box-shadow:none}.fe-dictionary{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:11px;margin-top:16px}.fe-term strong{color:#157183}.fe-term p{margin:6px 0 0;font-size:.87rem}.fe-plan-list{max-height:540px;overflow:auto;margin-top:15px}.fe-plan-summary{display:flex;flex-direction:column;gap:5px;padding:13px;background:rgba(20,102,122,.08);border-radius:11px}.fe-plan-summary span,.fe-plan-day small{font-size:.78rem;color:var(--muted,#75838d)}.fe-plan-day{display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(20,102,122,.10);padding:14px 3px}.fe-plan-day label{display:flex;align-items:center;gap:12px;min-width:0;cursor:pointer}.fe-plan-day label input{accent-color:#14667a}.fe-plan-day label span{display:grid;gap:4px}.fe-plan-day a,.fe-plan-tip{font-size:.83rem;flex:none}.fe-rosary-ui{padding:20px;background:rgba(20,102,122,.06);border-radius:18px;text-align:center;margin-top:20px}.fe-rosary-ui>div:first-child{display:grid;gap:4px;font-size:.78rem;color:#14667a}.fe-rosary-count{font-size:4rem;font-family:'Playfair Display',serif;font-weight:700;color:var(--text,#164959)}.fe-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.fe-option{padding:15px;border-radius:12px;border:1px solid rgba(20,102,122,.25);background:var(--card,#fff);color:var(--text,#173a49);font:inherit;font-weight:700;cursor:pointer}.fe-option.correct{background:#d5f2de;color:#164b2a}.fe-option.wrong{background:#fce2e2;color:#862323}.fe-memory-grid{display:grid;grid-template-columns:repeat(4,minmax(55px,1fr));max-width:440px;gap:10px}.fe-memory-card{height:75px;font-size:1.6rem;border:1px solid rgba(20,102,122,.3);border-radius:12px;background:#14667a;color:#fff;cursor:pointer}.fe-memory-card.visible{background:#f5f1e6;color:#153e52}.fe-order-row,.fe-event{display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(20,102,122,.12);padding:12px}.fe-order-row span,.fe-event strong{flex:1}.fe-event span{font-size:.84rem;color:var(--muted,#71818c)}.fe-first-book{background:linear-gradient(155deg,rgba(226,201,155,.2),rgba(20,102,122,.06));padding:28px;border-radius:19px;text-align:center}.fe-first-book h2{font-family:'Playfair Display',serif;font-size:2rem}.fe-first-symbol{font-size:3rem;color:#bc9553}.fe-first-book small,.fe-first-count{color:#157383}.fe-canvas{max-width:100%;height:auto;width:400px;border-radius:14px;margin-top:16px}.fe-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.fe-stat-grid>div{padding:20px;background:rgba(20,102,122,.06);border-radius:13px;text-align:center}.fe-stat-grid strong,.fe-stat-grid span{display:block}.fe-stat-grid strong{font-size:2rem;color:#14667a}.fe-stat-grid span{font-size:.78rem;color:var(--muted,#6f8190)}.fe-verse{white-space:pre-wrap}.fe-large-text #content{font-size:1.12em}.fe-high-contrast #content{filter:contrast(1.25)}.fe-less-motion *, .fe-less-motion *:before,.fe-less-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
body.dark .fe-top-card{background:linear-gradient(135deg,#093447,#175a6a)}body.dark .fe-tile,body.dark .fe-panel,body.dark .fe-mini-card,body.dark .fe-entry,body.dark .fe-term{background:#172936;border-color:rgba(225,220,190,.18)}body.dark .fe-tile h3,body.dark .fe-mini-card,body.dark .fe-form label,body.dark .fe-panel h3,body.dark .fe-rosary-count{color:#e8f2f3}body.dark .fe-tile-symbol{color:#ccefee}body.dark .fe-chip{background:#193340;color:#f4ffff}body.dark .fe-chip.selected{background:#267e91;color:white}body.dark .fe-prayer,body.dark .fe-first-book,body.dark .fe-answer,body.dark .fe-rosary-ui{background:rgba(56,136,153,.16)}body.dark .fe-form input,body.dark .fe-form textarea,body.dark .fe-input{background:#182f3a;color:white}body.dark .fe-option{background:#193340;color:white}
@media(max-width:700px){.fe-top-card{padding:22px}.fe-top-symbol{display:none}.fe-panel{padding:18px}.fe-filter{flex-wrap:nowrap;overflow-x:auto;padding-bottom:7px}.fe-filter .fe-chip{flex:none}.fe-catalog-grid,.fe-small-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fe-tile{padding:14px;min-height:175px}.fe-tile h3{font-size:.97rem}.fe-tile p{font-size:.76rem}.fe-entry{flex-direction:column;align-items:flex-start}.fe-stat-grid{grid-template-columns:1fr 1fr}.fe-plan-day{flex-wrap:wrap}}
@media(max-width:400px){.fe-catalog-grid,.fe-small-grid{grid-template-columns:1fr}.fe-stat-grid{grid-template-columns:1fr}}

.fe-home-entry{margin:24px 0 0;padding:22px;display:flex;gap:20px;align-items:center;justify-content:space-between;border-radius:18px;background:linear-gradient(125deg,rgba(20,102,122,.10),rgba(225,194,132,.16));border:1px solid rgba(20,102,122,.15)}.fe-home-entry h2{margin:7px 0}.fe-home-entry p{margin:0;color:var(--muted,#6a7b86)}@media(max-width:600px){.fe-home-entry{flex-direction:column;align-items:flex-start}}

.fe-plan-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.fe-plan-links a{font-size:.76rem;padding:5px 8px;text-decoration:none;background:rgba(20,102,122,.07);border-radius:7px;color:#14667a;white-space:nowrap}.fe-plan-day{align-items:flex-start}.fe-plan-day label{align-self:center}@media(max-width:700px){.fe-plan-links{width:100%;justify-content:flex-start;margin-left:26px}}


/* ==== mi-espacio.css ==== */
/* Capilla Virgen del Milagro - Pontevedra — panel personal y ocho experiencias. No altera el estilo de las otras pantallas. */
.me-page{--me-accent:#146b7d;--me-border:rgba(36,105,121,.17);--me-soft:#eef9f8;--me-text:#243442;color:var(--text,#263744);max-width:1200px;margin:auto;animation:me-enter .28s ease}
@keyframes me-enter{from{opacity:.6;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.me-intro{font-size:1.03rem;line-height:1.6;max-width:780px;color:var(--muted,#536a76);margin:16px 0 26px}
.me-cards,.me-section-grid,.me-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.me-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:18px 0 25px}
.me-card{border:1px solid var(--me-border);background:var(--card-bg,#fff);padding:24px 22px;display:flex;flex-direction:column;gap:12px;border-radius:22px;box-shadow:0 12px 34px rgba(22,70,83,.07);text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.me-card:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(22,70,83,.13)}
.me-card-icon{font-family:Georgia,serif;display:grid;place-items:center;width:54px;height:54px;background:linear-gradient(145deg,#e2f4f4,#fff8e8);color:#086c80;border-radius:16px;font-size:1.9rem}
.me-card strong{font-size:1.16rem;line-height:1.3}.me-card small{font-size:.89rem;line-height:1.55;color:var(--muted,#58717d)}.me-arrow{margin-top:auto;color:var(--me-accent);font-weight:800;font-size:.89rem}
.me-privacy{font-size:.88rem;line-height:1.65;padding:17px 20px;border-radius:15px;border:1px solid var(--me-border);background:rgba(29,140,146,.045);margin-top:18px;color:var(--muted,#526977)}
.me-nav{display:flex;justify-content:space-between;gap:16px;padding:4px 0 18px}.me-nav a{color:var(--me-accent);font-weight:700}
.me-lead{border:1px solid rgba(20,116,132,.13);background:linear-gradient(115deg,#e9f9f7,#fdf7ea);border-radius:24px;padding:28px;margin:18px 0}.me-lead h2{font-family:Georgia,serif;color:#174e5d;font-size:clamp(1.55rem,3vw,2.2rem);margin:10px 0}.me-lead p{max-width:750px;line-height:1.7;margin-bottom:18px}
.me-panel{border:1px solid var(--me-border);background:var(--card-bg,#fff);box-shadow:0 12px 36px rgba(20,75,85,.055);border-radius:23px;padding:25px;margin:16px 0;min-width:0}
.me-panel h3{font-size:1.15rem;margin:0 0 14px;color:#176879}.me-panel h2{color:#176879}.me-panel p{line-height:1.7}.me-panel a:not(.btn){color:#117d93;font-weight:700}.me-panel small,.me-muted{color:var(--muted,#526975);font-size:.87rem;line-height:1.6}
.me-prompt{background:linear-gradient(110deg,#ecf9f6,#fdf9ef)}
.me-check{display:flex;align-items:center;gap:11px;font-weight:650;margin:16px 0;cursor:pointer;line-height:1.5}
.me-check input{width:19px;height:19px;flex:none;accent-color:#147487}
.me-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.me-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin:22px 0}.me-stats>div{display:grid;gap:7px;border:1px solid var(--me-border);padding:20px;text-align:center;background:var(--card-bg,#fff);border-radius:18px}.me-stats strong{font-size:2.3rem;color:#15768d;line-height:1.1}.me-stats span{font-size:.84rem;color:var(--muted,#586b74)}
.me-progress{background:var(--card-bg,#fff);padding:18px 22px;border-radius:18px;margin:20px 0;border:1px solid var(--me-border)}.me-track{height:9px;background:#dce9e9;border-radius:20px;overflow:hidden;margin-top:12px}.me-track span{display:block;height:100%;background:#15a1aa;transition:width .2s}
.me-lessons{display:grid;gap:12px}.me-lesson{border:1px solid var(--me-border);border-radius:18px;background:var(--card-bg,#fff);overflow:hidden}.me-lesson summary{display:flex;align-items:center;gap:14px;cursor:pointer;padding:19px 23px;font-weight:700}.me-lesson summary span{font-size:.86rem;color:#0e7a88}.me-lesson summary strong{flex:1}.me-lesson-body{padding:0 23px 22px;line-height:1.75}.me-lesson-body p{margin:10px 0}.me-reference{background:var(--me-soft);border-radius:10px;padding:11px;margin:10px 0}.me-reference a{color:#0b6677!important;font-weight:700}
.me-form{display:grid;gap:16px}.me-form label{display:grid;gap:7px;font-weight:650;font-size:.92rem}.me-form label.me-check{display:flex}.me-form textarea,.me-form input,.me-form select,.me-select{width:100%;background:var(--bg,#fff);border:1px solid rgba(38,100,115,.28);color:inherit;padding:12px 13px;border-radius:12px;font:inherit;min-height:44px}.me-form textarea{resize:vertical}
.me-form input:focus-visible,.me-form textarea:focus-visible,.me-form select:focus-visible,.me-select:focus-visible{outline:3px solid rgba(0,155,170,.32);outline-offset:1px}
#me-postal-canvas{width:100%;height:auto;aspect-ratio:auto;border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.me-candle-wrap{text-align:center}.me-candle{width:140px;height:190px;position:relative;margin:26px auto 23px}.me-wax{position:absolute;bottom:0;left:30px;width:80px;height:130px;background:linear-gradient(90deg,#e9f2f2,#fff,#dfece8);border-radius:16px 16px 12px 12px;box-shadow:0 10px 30px rgba(51,93,95,.12)}.me-wick{position:absolute;bottom:129px;left:68px;width:4px;height:18px;background:#534632}.me-flame{display:none;position:absolute;z-index:1;bottom:143px;left:55px;width:32px;height:48px;background:radial-gradient(ellipse at 50% 80%,#fff6bc,#ffb831 60%,#ef833d 80%);border-radius:70% 5% 55% 45%;transform:rotate(45deg);box-shadow:0 0 48px 22px rgba(245,175,74,.28)}.me-candle.lit .me-flame{display:block;animation:me-flame 2s ease-in-out infinite alternate}@keyframes me-flame{to{transform:rotate(38deg) scale(.92,1.08)}}.me-intention{border-top:1px solid var(--me-border);display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:10px;padding-top:12px}.me-intention p{margin:0;overflow-wrap:anywhere}.me-intention button{color:#ad4242;background:none;border:0;padding:8px;cursor:pointer}
.me-history-result{padding:12px 0}.me-reader-context{background:rgba(20,126,140,.06);border:1px solid rgba(20,126,140,.2);padding:18px;border-radius:16px;margin:18px 0;font-size:.92rem}.me-reader-context summary{color:#0b7388;font-weight:800;cursor:pointer}.me-reader-context div{margin-top:14px}.me-reader-context p{line-height:1.6;margin:10px 0}.me-reader-context small{color:var(--muted,#546b76)}
body.dark .me-page{--me-border:rgba(180,220,222,.2);--me-soft:#213d49;--me-accent:#8be1e6}.dark .me-card,.dark .me-panel,.dark .me-lesson,.dark .me-progress,.dark .me-stats>div{background:#172c37;color:#e5eef0}.dark .me-card small,.dark .me-panel small{color:#bdd1d7}.dark .me-lead,.dark .me-prompt{background:linear-gradient(120deg,#183c45,#33372f);color:#e6f5f4}.dark .me-lead h2,.dark .me-panel h3,.dark .me-panel h2{color:#8be1e6}.dark .me-form input,.dark .me-form select,.dark .me-form textarea{background:#13232e;color:#fff}.dark .me-reader-context summary{color:#93dfeb}.dark .me-card-icon{background:rgba(30,121,133,.15);color:#b1e3e5}
@media(max-width:760px){.me-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.me-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.me-section-grid{grid-template-columns:1fr}.me-panel{padding:20px}.me-card{padding:16px}.me-lead{padding:20px}}@media(max-width:490px){.me-cards{grid-template-columns:1fr}.me-card{min-height:140px}.me-stats strong{font-size:1.75rem}.me-nav{font-size:.84rem}.me-actions .btn{max-width:100%}}
@media(prefers-reduced-motion:reduce){.me-card,.me-page,.me-flame{animation:none!important;transition:none!important}}


/* ==== cancionero.css ==== */
/* Capilla Virgen del Milagro - Pontevedra · Cancionero (estilos encapsulados) */
.cad-songbook{max-width:1150px;margin:auto;color:var(--text,#182a3b);font-family:inherit;padding-bottom:35px}
.cad-song-hero{border-radius:28px;background:linear-gradient(115deg,#103a50 0%,#14667a 62%,#268c93 100%);padding:34px;display:grid;grid-template-columns:1fr 170px;gap:20px;align-items:center;color:#fff;box-shadow:0 18px 48px rgba(20,102,122,.16);margin-bottom:28px;overflow:hidden}
.cad-song-kicker{font-size:11px;letter-spacing:2px;font-weight:800;color:#d7b77c;margin-bottom:8px}
.cad-song-hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,4vw,46px);margin:3px 0 12px;color:#fff;line-height:1.12}
.cad-song-hero p{font-size:15px;line-height:1.7;max-width:620px;color:#e8f5f6;margin:0}
.cad-song-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;font-weight:700;font-size:12px}
.cad-song-hero-actions span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.20);border-radius:999px;padding:8px 12px}
.cad-song-hero-visual{position:relative;display:grid;place-items:center;width:155px;height:155px;border-radius:50%;border:2px solid rgba(235,203,152,.55);background:rgba(255,255,255,.06)}
.cad-song-hero-visual span:first-child{font-size:94px;line-height:1;color:#f0d5a2;text-shadow:0 8px 25px rgba(0,0,0,.18)}
.cad-song-hero-visual span:last-child{position:absolute;right:-8px;top:3px;color:#fff;font-size:32px}
.cad-song-heading,.cad-song-detail-header,.cad-song-admin-title{display:flex;justify-content:space-between;align-items:center;gap:16px}
.cad-song-heading h2,.cad-song-admin-title h2{font-family:'Playfair Display',Georgia,serif;font-size:26px;margin:0 0 4px}
.cad-song-heading p{font-size:13px;color:var(--muted,#657080);margin:0 0 18px}
.cad-song-btn{appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;cursor:pointer;background:#14667a;color:#fff;border-radius:12px;padding:12px 17px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.cad-song-btn.secondary{background:rgba(20,102,122,.10);color:#166476;border:1px solid rgba(20,102,122,.20)}
.cad-song-btn.danger{background:#a13447}
.cad-song-btn:focus-visible,.cad-song-chip:focus-visible,.cad-song-read:focus-visible,.cad-song-toolbar button:focus-visible{outline:3px solid #d2a25c;outline-offset:3px}
.cad-song-search{position:relative;display:flex;align-items:center;gap:10px;border:1px solid rgba(20,102,122,.18);border-radius:16px;background:var(--surface,#fff);padding:4px 12px;box-shadow:0 5px 25px rgba(17,48,71,.04)}
.cad-song-search>span{font-size:23px;color:#177a8b}
.cad-song-search input{width:100%;min-height:45px;border:0;background:transparent;outline:0;font-size:14px;color:inherit}
.cad-song-search button{background:none;border:0;font-size:22px;cursor:pointer;color:#748494}
.cad-song-filters{display:flex;gap:8px;overflow-x:auto;margin:15px 0 10px;padding:2px 2px 8px;scrollbar-width:thin}
.cad-song-chip{white-space:nowrap;border:1px solid rgba(20,102,122,.2);background:transparent;color:var(--text,#233a4c);border-radius:999px;padding:8px 13px;cursor:pointer;font-size:12px;font-weight:700}
.cad-song-chip.active{background:#14667a;color:#fff;border-color:#14667a}
.cad-song-fav-toggle{display:flex;justify-content:space-between;align-items:center;margin:9px 2px 19px;font-size:12px;color:var(--muted,#647587);gap:10px}
.cad-song-fav-toggle label{display:flex;align-items:center;gap:8px;cursor:pointer}
.cad-song-fav-toggle input{accent-color:#14667a}
.cad-song-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.cad-song-card{background:var(--surface,#fff);border:1px solid rgba(20,102,122,.13);border-radius:20px;padding:18px;display:flex;flex-direction:column;min-height:218px;box-shadow:0 8px 28px rgba(19,55,72,.06);transition:transform .2s,box-shadow .2s}
.cad-song-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(19,55,72,.10)}
.cad-song-card-top{display:flex;align-items:center;justify-content:space-between}
.cad-song-icon{background:linear-gradient(135deg,#e8f5f5,#f7e9c8);display:grid;place-items:center;width:52px;height:52px;border-radius:15px;font-size:23px}
.cad-song-heart{cursor:pointer;background:none;border:0;color:#91a1ac;font-size:22px;padding:6px}
.cad-song-heart.on,.cad-song-toolbar button.on{color:#ca4260}
.cad-song-category{text-transform:uppercase;font-size:10px;letter-spacing:1.6px;color:#bc9253;font-weight:800;margin-top:12px}
.cad-song-card h3{font-family:'Playfair Display',Georgia,serif;margin:6px 0 5px;font-size:20px;line-height:1.2;color:inherit}
.cad-song-card p{margin:0 0 17px;font-size:12px;color:var(--muted,#657b89)}
.cad-song-read{display:flex;justify-content:space-between;margin-top:auto;background:none;border:0;border-top:1px solid rgba(20,102,122,.12);padding:15px 0 0;text-align:left;color:#17788b;cursor:pointer;font-weight:800;font-size:12px}
.cad-song-note{margin:25px 3px 10px;line-height:1.6;color:var(--muted,#647587);font-size:12px}
.cad-song-empty,.cad-song-loading{border:1px dashed rgba(20,102,122,.20);border-radius:22px;text-align:center;padding:34px 18px;margin-top:12px;color:var(--muted,#647587)}
.cad-song-empty>div{font-size:42px;color:#d1ae73}.cad-song-empty h3{margin:10px 0 5px}
.cad-song-alert{border:1px solid #e1c483;background:rgba(255,205,103,.12);border-radius:13px;padding:12px;margin-bottom:15px;font-size:13px}
.cad-song-alert span{color:var(--muted,#687987)}.cad-song-alert button{color:#17788b;border:0;background:none;text-decoration:underline;cursor:pointer}
.cad-song-detail{max-width:790px;margin:auto;background:var(--surface,#fff);border:1px solid rgba(20,102,122,.14);border-radius:24px;padding:clamp(22px,4vw,40px);box-shadow:0 16px 40px rgba(16,56,73,.07)}
.cad-song-back{text-decoration:none;color:#147b8f;font-weight:700;font-size:13px}
.cad-song-detail-header{display:flex;flex-direction:column;text-align:center;gap:6px;margin:20px 0}
.cad-song-detail-icon{display:grid;place-items:center;width:80px;height:80px;border-radius:22px;font-size:40px;background:linear-gradient(135deg,#e3f1f0,#ffeaca)}
.cad-song-detail-header h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(26px,4vw,37px);margin:4px 0 0}
.cad-song-detail-header p{font-size:13px;color:var(--muted,#657b89);margin:0}
.cad-song-toolbar{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:26px 0 22px;padding:15px 0;border-block:1px solid rgba(20,102,122,.13)}
.cad-song-toolbar button{padding:10px 12px;border:1px solid rgba(20,102,122,.15);border-radius:10px;background:transparent;cursor:pointer;color:inherit;font-size:12px;font-weight:700}
.cad-song-lyrics{line-height:1.88;white-space:pre-wrap;overflow-wrap:break-word;text-align:center;padding:15px 0 25px;color:inherit;font-family:Georgia,serif}
.cad-song-attribution{border-top:1px solid rgba(20,102,122,.12);padding-top:16px;font-size:12px;color:var(--muted,#697987);line-height:1.5}
.cad-song-attribution strong{color:var(--text,#253a4b)}.cad-song-attribution p{margin:6px 0}
.cad-song-admin-panel{background:var(--surface,#fff);border:1px solid rgba(20,102,122,.20);border-radius:20px;padding:24px;margin:30px 0;box-shadow:0 12px 34px rgba(17,57,81,.08)}
.cad-song-admin-title button{background:none;border:0;font-size:28px;color:inherit;cursor:pointer}
.cad-song-admin-panel>p{font-size:13px;color:var(--muted,#647587)}
.cad-song-form{display:grid;gap:16px;margin-top:20px}
.cad-song-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.cad-song-form label{display:grid;gap:7px;font-size:12px;font-weight:800}
.cad-song-form input:not([type=checkbox]),.cad-song-form select,.cad-song-form textarea{min-width:0;border:1px solid rgba(20,102,122,.24);border-radius:11px;padding:12px;background:var(--surface,#fff);color:inherit;font:inherit;font-weight:400;outline-offset:3px}
.cad-song-form textarea{resize:vertical;line-height:1.7}
.cad-song-form .cad-song-check{display:flex;align-items:center;gap:10px;font-weight:600;cursor:pointer}
.cad-song-check input{accent-color:#14667a}
.cad-song-admin-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
body.dark .cad-songbook .cad-song-btn.secondary{background:rgba(146,221,231,.1);color:#b7e9ef}
body.dark .cad-song-chip{color:#dce9f0}
body.dark .cad-song-card,body.dark .cad-song-detail,body.dark .cad-song-admin-panel,body.dark .cad-song-search{background:rgba(10,23,35,.72);border-color:rgba(221,244,247,.16)}
body.dark .cad-song-read,body.dark .cad-song-back{color:#97e6eb}
body.dark .cad-song-attribution strong{color:#f3f6f8}
@media(max-width:720px){.cad-song-hero{padding:24px;grid-template-columns:1fr 95px}.cad-song-hero-visual{width:95px;height:95px}.cad-song-hero-visual span:first-child{font-size:60px}.cad-song-heading{align-items:flex-start;flex-direction:column}.cad-song-form-grid{grid-template-columns:1fr}.cad-song-admin-panel{padding:18px}}
@media(max-width:480px){.cad-song-hero{grid-template-columns:1fr}.cad-song-hero-visual{display:none}.cad-song-hero h1{font-size:30px}.cad-song-grid{grid-template-columns:1fr}.cad-song-detail{padding:20px}.cad-song-toolbar{gap:5px}}
@media print{.sidebar,.topbar,.cad-news-banner,.footer,.cad-song-back,.cad-song-toolbar,.cad-song-attribution,.cad-song-admin-actions{display:none!important}.main-shell,.content,.cad-songbook,.cad-song-detail{margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;max-width:none!important}.cad-song-lyrics{font-size:17pt!important;color:#000!important}.cad-song-detail-header{margin-top:0}}

/* Administración visible justo debajo de su botón */
.cad-song-heading{margin-bottom:10px}
.cad-song-admin-panel{margin:12px 0 24px;scroll-margin-top:88px;border:2px solid rgba(20,102,122,.38);background:var(--surface,#fff)}
.cad-song-admin-panel:focus-within{box-shadow:0 14px 36px rgba(20,102,122,.13)}
.cad-song-admin-warning{padding:10px 14px;background:#fff0db;border-radius:10px;color:#7b3708;font-size:13px}
body.dark .cad-song-admin-warning{background:rgba(160,100,32,.20);color:#ffe2b9}

/* Vista publica: la edicion solo se realiza desde el Panel administrador */
.cad-song-admin-public-note{font-size:12px;color:#698198;padding:8px 12px;background:rgba(183,156,109,.10);border-radius:16px}


/* ==== entender-biblia.css ==== */
/* Capilla Virgen del Milagro - Pontevedra - Curso: Entender la Biblia desde cero */
.cadb-page{max-width:1060px;margin:0 auto;padding:4px 0 45px;color:var(--text,#213348)}
.cadb-page h1,.cadb-page h2,.cadb-page h3{line-height:1.22}
.cadb-page h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2rem,4vw,3rem);margin:7px 0 15px;color:#12677b}
.cadb-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.17em;color:#b48c49;text-transform:uppercase}
.cadb-lead{font-size:clamp(1rem,1.7vw,1.12rem);line-height:1.85;color:#627486;max-width:810px;margin:0 0 22px}
.cadb-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(140px,.65fr);align-items:center;gap:20px;padding:30px;border-radius:26px;background:linear-gradient(120deg,#0a455b,#167b8d);color:white;overflow:hidden;box-shadow:0 14px 36px rgba(14,79,94,.16)}
.cadb-hero-tag{font-size:.78rem;color:#f3dca6;font-weight:800;letter-spacing:.06em}
.cadb-hero h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.6rem,2.6vw,2.4rem);margin:12px 0;color:white}
.cadb-hero p{line-height:1.75;color:#e9f6f7;margin:10px 0 22px}
.cadb-hero-btn{display:inline-flex;text-decoration:none;border-radius:40px;padding:12px 20px;background:#fff;color:#135367;font-weight:800}
.cadb-hero-btn:hover{background:#f4e1b3}
.cadb-hero-art{font-size:clamp(5rem,12vw,9rem);position:relative;text-align:center;filter:drop-shadow(0 20px 23px rgba(0,0,0,.14))}
.cadb-hero-art span{position:absolute;font-size:3rem;right:0;top:0;color:#e0c48b}
.cadb-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.cadb-summary>div{display:flex;align-items:center;gap:10px;padding:16px;border-radius:16px;background:rgba(20,102,122,.07)}
.cadb-summary strong{font-size:1.6rem;color:#11667a}.cadb-summary span{font-size:.9rem;color:#546b7a}
.cadb-note,.cadb-notice{padding:18px 22px;border-radius:18px;background:rgba(196,160,88,.14);line-height:1.7;font-size:.94rem;color:#475d67;border:1px solid rgba(196,160,88,.18)}
.cadb-section-title{font-size:clamp(1.35rem,2vw,1.7rem);margin:30px 0 17px;font-family:'Playfair Display',Georgia,serif}
.cadb-lesson-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.cadb-lesson-card{display:flex;gap:14px;text-decoration:none!important;padding:20px;border-radius:20px;border:1px solid rgba(20,102,122,.15);background:#fff;box-shadow:0 10px 24px rgba(20,102,122,.05);transition:transform .18s ease,box-shadow .18s ease}
.cadb-lesson-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(20,102,122,.12)}
.cadb-card-number{color:#c29e60;font-size:1.4rem;font-weight:800;flex:none;line-height:1.2}
.cadb-card-cat{color:#a17d41;font-size:.75rem;font-weight:800}
.cadb-lesson-card h3{font-size:1.08rem;margin:8px 0;color:#135c70}
.cadb-lesson-card p{font-size:.88rem;line-height:1.65;color:#647789;margin:0 0 14px}
.cadb-card-link{color:#116b7c;font-size:.87rem;font-weight:800}
.cadb-notice{margin-top:24px}
.cadb-back{display:inline-block;margin:3px 0 23px;color:#126c7a;text-decoration:none;font-weight:700}
.cadb-audio{border:1px solid rgba(13,115,139,.18);background:linear-gradient(125deg,rgba(17,113,134,.09),rgba(236,216,164,.17));padding:24px;border-radius:22px;margin:24px 0 26px}
.cadb-audio-title{display:flex;gap:16px;align-items:center}
.cadb-audio-icon{font-size:1.9rem;background:white;border-radius:16px;width:60px;height:60px;display:grid;place-items:center;box-shadow:0 9px 19px rgba(11,90,107,.1)}
.cadb-audio-title strong{display:block;font-size:1.23rem;color:#0d6277}
.cadb-audio-title p{font-size:.88rem;color:#657a88;margin:6px 0 0}
.cadb-audio-controls{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 16px}
.cadb-audio button,.cadb-finish{min-height:46px;cursor:pointer;border-radius:999px;border:1px solid rgba(20,102,122,.22);background:#fff;color:#0b6172;padding:10px 19px;font-weight:800;font-size:.91rem}
.cadb-audio button.cadb-primary,.cadb-finish{background:#136b80;color:#fff;border-color:#136b80}
.cadb-audio button:disabled{opacity:.47;cursor:not-allowed}
.cadb-audio button:focus-visible,.cadb-page a:focus-visible,.cadb-page select:focus-visible,.cadb-page button:focus-visible{outline:3px solid #cfaa60;outline-offset:3px}
.cadb-audio-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;font-size:.88rem;color:#586f78}
.cadb-audio-bottom label{font-weight:700}
.cadb-audio-bottom select{border:1px solid #aac6cc;background:#fff;border-radius:10px;padding:7px;color:#1e5260;min-height:39px}
.cadb-audio-status{flex:1;min-width:190px}
.cadb-progress{margin-top:16px;height:7px;border-radius:9px;background:rgba(18,106,125,.15);overflow:hidden}
.cadb-progress>div{height:100%;width:0;background:linear-gradient(90deg,#cfa451,#11738b);transition:width .25s}
.cadb-audio-hint{font-size:.79rem;color:#617885;line-height:1.6;margin:12px 0 0}
.cadb-reading-content{display:grid;gap:16px}
.cadb-part{padding:23px 25px;border:1px solid rgba(20,102,122,.13);background:#fff;border-radius:20px;transition:border .2s,background .2s}
.cadb-part h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.3rem,2vw,1.55rem);color:#126277;margin:0 0 13px}
.cadb-part p{font-size:1.05rem;color:#445e6b;line-height:1.95;margin:0}
.cadb-part.cadb-reading{border-color:#bd9148;background:#fff9eb;box-shadow:0 0 0 2px rgba(189,145,72,.15)}
.cadb-example,.cadb-question,.cadb-prayer{margin-top:18px;padding:23px 25px;border-radius:20px;border:1px solid rgba(20,102,122,.14);background:#fff}
.cadb-example{background:#f2f9fb}
.cadb-example strong,.cadb-prayer strong{font-size:1.13rem;color:#116b7e}
.cadb-example p,.cadb-prayer p{line-height:1.8;color:#4b6473;margin:11px 0 13px}
.cadb-example a{display:inline-flex;align-items:center;padding:10px 14px;border-radius:12px;border:1px solid #b8d3d8;color:#12687b;text-decoration:none;margin:0 8px 5px 0;font-weight:700}
.cadb-question h2{margin:0 0 9px;font-size:1.35rem;color:#126277}
.cadb-question>p{font-size:1rem;line-height:1.7}
.cadb-choices{display:grid;gap:9px}
.cadb-choices button{padding:13px 16px;text-align:left;font-size:.96rem;border:1px solid #c9d8da;border-radius:12px;background:#f9fcfc;color:#244f60;cursor:pointer}
.cadb-choices button:hover{background:#eef7f8}
.cadb-choices button.cadb-answer-good{border-color:#309471;background:#e9f8ef;color:#166342}
.cadb-choices button.cadb-answer-bad{border-color:#c46a70;background:#fff0f0;color:#8c3038}
#cadb-feedback{min-height:1em;font-weight:700;color:#895b32}#cadb-feedback.cadb-ok{color:#1c875e}
.cadb-prayer{background:linear-gradient(125deg,rgba(17,113,134,.07),rgba(236,216,164,.12))}
.cadb-lesson-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:25px 0}
.cadb-lesson-nav>div{display:flex;gap:14px;flex-wrap:wrap}
.cadb-lesson-nav a{color:#126b7e;font-size:.92rem;font-weight:800;text-decoration:none}
.cadb-finish.cadb-done{background:#2c8768;border-color:#2c8768}
body.dark .cadb-page h1,body.dark .cadb-section-title,body.dark .cadb-part h2,body.dark .cadb-lesson-card h3,body.dark .cadb-question h2{color:#9bd9e5}
body.dark .cadb-lead,body.dark .cadb-lesson-card p,body.dark .cadb-lesson-card .cadb-card-cat,body.dark .cadb-part p,body.dark .cadb-audio-hint,body.dark .cadb-audio-bottom,body.dark .cadb-example p,body.dark .cadb-prayer p{color:#c6d5de}
body.dark .cadb-lesson-card,body.dark .cadb-part,body.dark .cadb-question,body.dark .cadb-prayer,body.dark .cadb-audio,body.dark .cadb-example{background:#192d3b;border-color:#3f5563}
body.dark .cadb-hero{background:linear-gradient(120deg,#0a3b4f,#0b5b70)}
body.dark .cadb-summary>div,body.dark .cadb-note,body.dark .cadb-notice{background:#223944;color:#dce7e9}
body.dark .cadb-audio-title strong,body.dark .cadb-card-link,body.dark .cadb-lesson-nav a,body.dark .cadb-back,body.dark .cadb-example strong,body.dark .cadb-prayer strong{color:#9bd9e5}
body.dark .cadb-part.cadb-reading{background:#36402d;border-color:#cfaa60}
body.dark .cadb-choices button{background:#233746;color:#d7e6ed;border-color:#4b616e}
body.dark .cadb-choices button.cadb-answer-good{background:#1a5845;color:#e6fff1}
body.dark .cadb-choices button.cadb-answer-bad{background:#67363b;color:#fff5f6}
@media(max-width:760px){.cadb-hero{grid-template-columns:1fr;padding:24px}.cadb-hero-art{display:none}.cadb-summary{grid-template-columns:1fr 1fr}.cadb-summary>div:last-child{grid-column:1/-1}.cadb-audio{padding:18px}.cadb-audio-controls button{flex:1;min-width:140px}.cadb-part,.cadb-example,.cadb-question,.cadb-prayer{padding:19px}.cadb-lesson-nav{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.cadb-page *{transition:none!important}}

.cadb-home-link{display:flex;align-items:center;gap:16px;text-decoration:none!important;margin:22px 0;padding:20px 24px;border-radius:22px;border:1px solid rgba(20,102,122,.2);background:linear-gradient(100deg,#eef9fa,#fff7e7);color:#105e72}
.cadb-home-icon{font-size:2.4rem;flex:none}.cadb-home-link>span:nth-child(2){display:grid;gap:5px;flex:1}.cadb-home-link strong{font-size:1.13rem;color:#0c5b6e}.cadb-home-link small{font-size:.91rem;color:#567181}.cadb-home-link b{white-space:nowrap;font-size:.89rem}.cadb-home-link:focus-visible{outline:3px solid #cfa451;outline-offset:3px}body.dark .cadb-home-link{background:linear-gradient(100deg,#1b3945,#394132);color:#fff}body.dark .cadb-home-link strong,body.dark .cadb-home-link small{color:#e1f2f4}@media(max-width:640px){.cadb-home-link{flex-wrap:wrap;padding:17px}.cadb-home-link b{margin-left:58px}}


/* ==== identidad-capilla.css ==== */
/* Complemento visual: identidad Virgen del Milagro, sin modificar el orden ni las funciones. */
:root{--bg:#f7f9fd;--white:#fff;--ink:#16365f;--muted:#607792;--soft:#e9f1fc;--line:#dce7f4;--green:#0b3a77;--gold:#d7ae55;--gold-dark:#9d762a;--shadow:0 16px 42px rgba(11,51,103,.09)}
body{background:var(--bg)}
.brand strong{color:#103d76!important}.brand em{color:#bc913b!important}.brand img{background:transparent!important;object-fit:contain!important}
.topbar,.sidebar,.footer{border-color:#dce4ef}
.nav-link.active{background:#e9f0fb!important;color:#0e417e!important}
.crumb,.title,.section-title h2{color:#123966}
.btn-primary{background:#0d427e!important;color:#fff!important}.btn-primary:hover{background:#082d5f!important}
.hero{background:linear-gradient(118deg,#082958 0%,#0b3d7d 66%,#165899 100%)!important;color:#fff}
.hero h1,.hero h1 i{color:#fff}.hero h1 i{color:#f3ce79!important}
.hero-chapel-logo{filter:drop-shadow(0 15px 28px rgba(0,10,29,.33));max-width:260px;object-fit:contain}
.community-welcome-like,.community-banner{background:linear-gradient(112deg,#073065,#0c4385,#145a99)!important;border:1px solid rgba(237,200,128,.3)}
.community-home-like,.community-top-like{border-color:#d8af5a!important}
.eyebrow,.reader-note{letter-spacing:.025em}
.kids-story-card,.kids-prayer-card,.kids-value-card,.kids-family-box,.kids-modal-box{border-color:#eadbb5}
.kids-story-card h3,.kids-prayer-card h3,.kids-value-card h3{color:#0e3b75}
.cad-site-footer h3,.cad-site-footer-names strong,.footer-authors h3,.footer-names strong{color:#0c3a73!important}
.cad-site-footer-whatsapp,.footer-whatsapp{background:#20c668!important;color:#fff!important}
.cad-news-banner,.cad-news-bar,.cad-news-ticker{border-color:rgba(214,174,83,.45)}
button:focus-visible,a:focus-visible{outline:3px solid #deb969;outline-offset:2px}
body.dark{--bg:#0c182c;--white:#152a47;--soft:#1e3556;--line:#2b486a;--ink:#f6f7fb;--muted:#b6c7db;--green:#e4bc70;--shadow:0 16px 42px rgba(0,0,0,.2)}
body.dark .brand strong,body.dark .footer-authors h3,body.dark .footer-names strong{color:#dfbd72!important}
body.dark .nav-link.active{background:#213d62!important;color:#ffe2a2!important}
@media(max-width:650px){.hero-chapel-logo{max-width:170px}.brand img{width:48px;height:48px}}


/* ==== capilla-info.css ==== */
/* Secciones públicas y panel privado de Capilla Virgen del Milagro */
:root{--ci-blue:#123f76;--ci-deep:#092e5a;--ci-gold:#c9a25c;--ci-cream:#fff9ed;--ci-border:rgba(27,63,98,.13);--ci-text:#223d56;--ci-muted:#677b8c}
.ci-loading,.ci-error,.ci-empty{border:1px solid var(--ci-border);border-radius:22px;padding:40px 22px;text-align:center;background:rgba(255,255,255,.64);color:var(--ci-muted)}
.ci-error strong{color:var(--ci-deep)}.ci-error p{line-height:1.6}.ci-empty-icon{font-size:34px;color:var(--ci-gold);margin-bottom:6px}.ci-empty h3{margin:8px 0;color:var(--ci-deep)}.ci-empty p{max-width:500px;margin:0 auto;line-height:1.7}
.ci-intro{display:flex;gap:16px;align-items:center;background:linear-gradient(100deg,#0a396d,#144f89);border-radius:23px;padding:24px;color:#fff;margin:14px 0 28px;box-shadow:0 14px 38px rgba(16,55,110,.11)}.ci-intro-mark{font-size:36px}.ci-intro p{color:#dbe8f5;margin:6px 0 0;line-height:1.6}
.ci-category{margin:0 0 29px}.ci-category-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ci-border);padding:0 0 12px;margin-bottom:16px}.ci-category-heading h2,.ci-secretariat h2,.ci-section-head h2{font:600 27px 'Playfair Display',Georgia,serif;margin:3px 0;color:var(--ci-deep)}.ci-overline{letter-spacing:1.6px;font-size:10px;color:#b78d45;font-weight:800}.ci-bullet{font-size:28px;color:var(--ci-gold)}.ci-schedules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:13px}.ci-schedule-card{border:1px solid var(--ci-border);background:#fff;border-radius:19px;padding:22px;box-shadow:0 7px 25px rgba(15,56,102,.05)}.ci-schedule-card h3{color:var(--ci-deep);font-size:19px;margin:8px 0}.ci-mini-label{font-size:11px;letter-spacing:.7px;color:#a57737;text-transform:uppercase;font-weight:800}.ci-time{color:var(--ci-blue);font-size:24px;font-weight:800}.ci-time span{font-size:13px}.ci-schedule-card p{margin:9px 0 0;font-size:13px;color:var(--ci-muted);line-height:1.65}.ci-subtle{font-size:14px;color:var(--ci-muted);margin:8px 0 20px}.ci-secretariat{background:linear-gradient(135deg,#faf4e6,#edf5fb);padding:24px;border-radius:23px;border:1px solid #ead8b6;margin-top:30px}
.ci-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:25px;background:linear-gradient(110deg,#0a3267,#1a5b92);padding:30px;color:white;margin-bottom:23px;overflow:hidden}.ci-banner span:first-child{font-size:11px;letter-spacing:1.7px;color:#ebc67b;font-weight:700}.ci-banner h2{font:600 29px 'Playfair Display',Georgia,serif;color:white;margin:9px 0}.ci-banner p{color:#e3ebf7;line-height:1.7;margin:0}.ci-banner-emoji{font-size:60px;opacity:.9}.ci-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.ci-post-card{background:#fff;border:1px solid var(--ci-border);border-radius:22px;overflow:hidden;box-shadow:0 15px 37px rgba(8,37,75,.08);display:flex;flex-direction:column}.ci-post-cover{appearance:none;border:0;padding:0;background:#e8eef7;width:100%;height:200px;cursor:pointer}.ci-post-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.ci-post-cover:hover img{transform:scale(1.035)}.ci-post-art{height:200px;display:grid;place-items:center;background:linear-gradient(135deg,#e7effb,#f6e6bd);font-size:66px;color:#b99042}.ci-post-body{padding:21px;display:flex;flex-direction:column;flex:1}.ci-post-body h3{font:600 21px 'Playfair Display',Georgia,serif;color:var(--ci-deep);margin:9px 0}.ci-post-body p{white-space:pre-line;line-height:1.7;font-size:14px;color:var(--ci-muted);overflow-wrap:anywhere}.ci-post-actions{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px}.ci-link{border:0;background:transparent;color:var(--ci-blue);font-weight:750;cursor:pointer}.ci-share{border:1px solid var(--ci-border);border-radius:30px;padding:9px 13px;background:#f6f8fb;color:var(--ci-blue);font-weight:700;font-size:12px;cursor:pointer}
.ci-calendar{background:#fff;border:1px solid var(--ci-border);border-radius:24px;padding:20px;box-shadow:0 12px 34px rgba(8,37,75,.06)}.ci-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:17px}.ci-calendar-head h2{font:600 27px 'Playfair Display',Georgia,serif;color:var(--ci-deep);margin:4px 0}.ci-month-nav{display:flex;gap:7px}.ci-month-nav button{background:#f3f6fb;border:1px solid #d5e1f0;border-radius:12px;padding:8px 12px;color:#123f76;font-weight:700;cursor:pointer}.ci-weekdays,.ci-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.ci-weekdays span{font-size:11px;font-weight:700;text-align:center;padding:8px 1px;color:var(--ci-muted)}.ci-day{min-height:83px;border:1px solid #edf1f7;border-radius:10px;padding:7px 4px;min-width:0;overflow:hidden}.ci-today{background:#fff9ed;border-color:#d9b878}.ci-date-number{display:block;color:#2d4d70;font-size:12px;font-weight:700;margin-left:5px;margin-bottom:7px}.ci-day-event{border:0;border-radius:5px;background:#e8eef9;color:#123f76;font-size:10px;line-height:1.3;padding:4px;text-align:left;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;margin:2px 0;width:100%}.ci-more{font-size:10px;color:var(--ci-muted)}.ci-section-head{margin:27px 0 13px}.ci-event-list{display:grid;gap:12px}.ci-event-row{display:flex;gap:15px;align-items:center;border:1px solid var(--ci-border);border-radius:17px;padding:15px;background:#fff}.ci-event-date{border-radius:14px;background:#e9eff8;min-width:62px;text-align:center;padding:12px;color:#144574}.ci-event-date span{font-size:25px;font-weight:800;display:block}.ci-event-date small{font-size:12px;text-transform:uppercase}.ci-event-details{flex:1;min-width:0}.ci-event-details h3{color:var(--ci-deep);margin:4px 0;font-size:18px}.ci-event-details p{font-size:13px;color:var(--ci-muted);line-height:1.5;margin:3px 0}.ci-preline{white-space:pre-line;overflow-wrap:anywhere}.ci-muted{color:var(--ci-muted)}
.ci-overlay{position:fixed;inset:0;z-index:9999;background:rgba(9,26,51,.78);display:flex;align-items:center;justify-content:center;padding:12px}.ci-dialog{background:#fff;border-radius:24px;max-height:92vh;overflow:auto;max-width:850px;width:100%;padding:26px;box-shadow:0 22px 65px rgba(0,0,0,.25);position:relative}.ci-dialog h2{font:600 26px 'Playfair Display',Georgia,serif;margin:9px 34px 15px 0;color:var(--ci-deep)}.ci-dialog p{line-height:1.7;color:var(--ci-text)}.ci-close{position:absolute;top:12px;right:15px;border:0;border-radius:50%;font-size:27px;background:#eff4fa;width:36px;height:36px;cursor:pointer}.ci-photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:22px 0}.ci-photo-gallery img{display:block;width:100%;max-height:400px;object-fit:contain;border:1px solid #e9eff6;background:#eff2f7;border-radius:12px}
.ci-btn{border:1px solid var(--ci-border);border-radius:11px;padding:11px 18px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px}.ci-primary{background:var(--ci-blue);color:#fff;border-color:var(--ci-blue)}.ci-primary:hover{background:#082c55}.ci-ghost{background:#fff;color:var(--ci-blue)}.ci-login{max-width:500px;margin:auto;padding:35px;background:#fff;border:1px solid var(--ci-border);border-radius:24px;box-shadow:0 17px 42px rgba(3,41,81,.08)}.ci-login-icon{font-size:44px}.ci-login h2{font:600 25px 'Playfair Display',Georgia,serif;color:var(--ci-deep);margin:9px 0}.ci-login p,.ci-helper{font-size:13px;line-height:1.75;color:var(--ci-muted)}.ci-login form,.ci-editor{display:grid;gap:15px}.ci-login label,.ci-editor label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--ci-blue);font-weight:700}.ci-login input,.ci-editor input,.ci-editor select,.ci-editor textarea{width:100%;box-sizing:border-box;border:1px solid #d4e0ed;border-radius:10px;background:#fff;padding:11px 12px;color:#193952;font:inherit;font-weight:400}.ci-editor textarea{resize:vertical;line-height:1.6}.ci-editor{background:#fff;border:1px solid var(--ci-border);border-radius:20px;padding:24px}.ci-editor h3{font:600 23px 'Playfair Display',Georgia,serif;margin:0 0 6px;color:var(--ci-deep)}.ci-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ci-editor .ci-check{flex-direction:row;align-items:center}.ci-check input{width:auto}.ci-form-actions{display:flex;flex-wrap:wrap;gap:11px}.ci-admin-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:23px;border-radius:20px;background:linear-gradient(110deg,#0a3265,#1a5487);color:white;margin-bottom:18px}.ci-admin-top h2{margin:0 0 6px;color:white}.ci-admin-top p{margin:0;color:#e6edf6;font-size:13px}.ci-admin-actions{display:flex;gap:8px;flex-wrap:wrap}.ci-admin-actions .ci-btn{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.11);color:white}.ci-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 22px}.ci-tabs button{border-radius:25px;padding:10px 18px;border:1px solid #dbe3ec;background:white;color:#174273;cursor:pointer;font-weight:700}.ci-tabs button.active{background:var(--ci-blue);border-color:var(--ci-blue);color:white}.ci-admin-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.ci-admin-bar p{color:var(--ci-muted);font-size:13px}.ci-admin-list{display:grid;gap:10px}.ci-admin-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 18px;background:#fff;border-radius:15px;border:1px solid var(--ci-border)}.ci-admin-row strong{display:block;color:var(--ci-blue);margin-bottom:5px}.ci-admin-row span{font-size:12px;color:var(--ci-muted)}.ci-admin-row .ci-admin-actions button{border:1px solid #d4e0ed;border-radius:10px;padding:9px 12px;color:var(--ci-blue);background:#f3f7fb;cursor:pointer}.ci-admin-row .ci-admin-actions .ci-danger{color:#a62338;background:#fff4f5;border-color:#f4c5ca}.ci-admin-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.ci-admin-photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:11px}.ci-admin-photo-grid button{border:0;background:transparent;color:#ad2e48;font-size:12px;cursor:pointer}
.ci-preview{display:grid;grid-template-columns:1fr .8fr;gap:24px;margin:10px 0 25px;border:1px solid #e1d6bc;border-radius:24px;background:linear-gradient(110deg,#f9f3e9,#f0f5fc);padding:26px}.ci-preview h2{font:600 28px 'Playfair Display',Georgia,serif;margin:9px 0;color:#0e3e72}.ci-preview p{color:#5f7387;line-height:1.6}.ci-preview-actions{display:flex;flex-wrap:wrap;gap:8px}.ci-preview-actions a,.ci-preview-fallback a{background:#113e74;border-radius:24px;padding:10px 14px;font-size:12px;color:white;text-decoration:none;font-weight:700}.ci-preview-next{display:grid;gap:8px}.ci-preview-next>strong{font-size:12px;color:#a77b35;letter-spacing:1px;text-transform:uppercase}.ci-preview-next a{display:grid;gap:4px;padding:10px;border-radius:12px;background:rgba(255,255,255,.78);text-decoration:none;color:#1a4268}.ci-preview-next a span{font-size:11px;color:#8a6e41}.ci-preview-next a b{font-size:13px}.ci-preview-fallback{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
body.dark .ci-category-heading h2,body.dark .ci-secretariat h2,body.dark .ci-section-head h2{color:#e3c989}body.dark .ci-schedule-card,body.dark .ci-post-card,body.dark .ci-event-row,body.dark .ci-calendar,body.dark .ci-login,body.dark .ci-editor,body.dark .ci-admin-row{background:#182b40;border-color:#35506c}body.dark .ci-schedule-card h3,body.dark .ci-post-card h3,body.dark .ci-event-details h3,body.dark .ci-login h2,body.dark .ci-editor h3{color:#e2c17c}body.dark .ci-schedule-card p,body.dark .ci-post-body p{color:#b8c7d7}body.dark .ci-secretariat,body.dark .ci-preview{background:#192c40;border-color:#3b5270}body.dark .ci-preview h2{color:#e3c989}body.dark .ci-preview p{color:#b8c7d7}body.dark .ci-calendar-head h2{color:#e3c989}body.dark .ci-date-number{color:#e5c988}body.dark .ci-day{border-color:#354962}body.dark .ci-today{background:#2a3c4c}body.dark .ci-day-event{background:#31547b;color:#f1f6fb}body.dark .ci-tabs button{background:#1d3550;color:#f0d79f;border-color:#476181}body.dark .ci-tabs button.active{background:#275787;color:white}body.dark .ci-editor input,body.dark .ci-editor select,body.dark .ci-editor textarea,body.dark .ci-login input{background:#1a3048;color:#fff;border-color:#45617d}body.dark .ci-editor label,body.dark .ci-login label{color:#e3c989}body.dark .ci-dialog{background:#172a42}body.dark .ci-dialog h2,body.dark .ci-dialog p{color:#f2ebdc}
@media(max-width:900px){.ci-preview{grid-template-columns:1fr}.ci-banner-emoji{font-size:46px}}@media(max-width:650px){.ci-intro,.ci-banner,.ci-admin-top{flex-direction:column;align-items:flex-start}.ci-form-grid{grid-template-columns:1fr}.ci-calendar{padding:9px}.ci-calendar-head{flex-wrap:wrap}.ci-calendar-head h2{font-size:23px}.ci-day{min-height:65px;padding:4px 1px}.ci-date-number{font-size:11px}.ci-day-event{font-size:9px}.ci-posts-grid{grid-template-columns:1fr}.ci-admin-row{align-items:flex-start;flex-direction:column}.ci-event-row{gap:9px}.ci-event-date{min-width:44px;padding:8px}.ci-event-date span{font-size:20px}.ci-event-row>.ci-share{align-self:flex-start}.ci-preview{padding:20px}.ci-dialog{padding:20px}.ci-photo-gallery{grid-template-columns:1fr}}

/* Editor de canciones en el panel unificado */
.ci-song-editor textarea[name=letra]{min-height:260px;white-space:pre-wrap;font-family:inherit;font-size:15px;line-height:1.75}
.ci-song-hint{font-size:13px;color:var(--ci-muted);line-height:1.7;margin:0}
.ci-tabs [data-ci-tab=canciones]{border-color:#d7b16e}


/* ==== web-publica-final.css ==== */
/* Capilla Virgen del Milagro – diseño público final, sin acceso de edición */
:root{--cad-blue:#103d75;--cad-gold:#cfa553;--cad-bg:#f8f9fc}
.topbar{display:flex;align-items:center;gap:12px;min-height:76px;height:auto!important;padding:12px 24px!important;background:#fff!important;border-bottom:1px solid #e5eaf2;box-shadow:0 3px 15px rgba(12,46,91,.025);flex-wrap:wrap}
.public-top-brand{display:inline-flex;align-items:center;gap:9px;color:#0d3d78;text-decoration:none;min-width:0;flex:none}
.public-top-brand img{width:37px;height:37px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}
.public-top-brand span{font-size:12px;font-weight:800;white-space:nowrap;line-height:1.2}
.public-top-brand small{display:block;font-size:10px;color:#94712b;letter-spacing:.05em;font-weight:600}
.topbar .crumb{font-size:12px!important;color:#627897!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px;flex:0 1 auto}
.topbar .top-actions{margin-left:auto;display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:nowrap}
.top-actions .pwa-install-btn{font-size:11px!important;min-height:40px;box-shadow:none!important;border-radius:11px!important;white-space:nowrap}
.top-actions .search-pill{min-height:40px;border-radius:11px}
.top-actions .icon-btn,.top-actions .avatar-btn{width:40px;height:40px;border-radius:11px}
/* Un solo Me gusta, legible y sin el bloque azul invasivo. */
.content .community-welcome-like{isolation:isolate!important;margin:17px 0 27px!important;display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:17px!important;background:linear-gradient(110deg,#fff 0%,#fff9ee 100%)!important;border:1px solid #e5d5ad!important;color:#183859!important;padding:18px 22px!important;border-radius:19px!important;box-shadow:0 7px 24px rgba(13,55,113,.055)!important}
.content .community-welcome-like::after{display:none!important}
.content .community-welcome-like .community-welcome-heart{color:#a77927!important;background:#fff4dc!important;border:1px solid #e8cb94!important;box-shadow:none!important;width:54px!important;height:54px!important;flex:0 0 54px!important;font-size:31px!important;border-radius:15px!important}
.content .community-welcome-like .community-welcome-kicker{color:#9a752c!important;font-size:10px!important}
.content .community-welcome-like .community-welcome-text h2{color:#153a68!important;font-size:clamp(19px,2.1vw,24px)!important;margin:4px 0 5px!important}
.content .community-welcome-like .community-welcome-text p{color:#5a7190!important;font-size:12px!important;line-height:1.6!important}
.content .community-welcome-like .community-welcome-action{min-width:166px;max-width:230px;align-items:stretch!important;margin-left:auto!important}
.content .community-welcome-like .community-like.community-home-like{background:#104480!important;color:#fff!important;border-color:#104480!important;box-shadow:none!important;min-height:45px!important;padding:9px 15px!important;font-size:13px!important}
.content .community-welcome-like .community-home-like-number{background:rgba(255,255,255,.18)!important;color:#fff!important}
.content .community-welcome-like .community-welcome-action small{color:#7285a0!important;font-size:10px!important}
.content .community-welcome-like .community-like.community-home-like.liked{background:#a82f5a!important;color:#fff!important;border-color:#a82f5a!important}
/* Noticias en una sola línea, sin barra de publicidad */
.cad-news-banner{min-height:42px!important;padding:7px 17px!important;gap:11px!important;background:#fbfaf6!important}
.cad-news-tag{padding:5px 8px!important;font-size:9px!important;border-radius:8px!important}
.cad-news-link{font-size:12px!important;min-width:0;overflow:hidden}
.cad-news-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Evitar que reglas genéricas de botones de las páginas se apliquen al bloque */
.community-welcome-like button,.topbar button{font-family:'DM Sans',Arial,sans-serif}
@media(min-width:1150px){.public-top-brand{display:none}.topbar .crumb{max-width:none}}
@media(max-width:1149px){.topbar .crumb{display:none!important}}
@media(max-width:800px){.topbar{padding:10px 15px!important;gap:7px;min-height:64px}.public-top-brand img{width:30px;height:30px}.public-top-brand span{font-size:10px}.public-top-brand small{font-size:9px}.topbar .top-actions{gap:6px}.top-actions .search-pill{width:39px;min-width:39px;padding:0;justify-content:center}.top-actions .search-pill>span:nth-child(2),.top-actions .search-pill kbd{display:none}.top-actions .pwa-install-btn{padding:8px!important}.top-actions .pwa-install-btn span:last-child{font-size:0}.top-actions .pwa-install-btn span:last-child::after{content:'Instalar';font-size:10px}.top-actions .avatar-btn{display:none}.content .community-welcome-like .community-welcome-action{margin-left:0!important;max-width:none;width:100%!important}}
@media(max-width:420px){.topbar{flex-wrap:nowrap!important}.public-top-brand img{width:27px;height:27px}.public-top-brand span{font-size:9px}.public-top-brand small{font-size:8px}.top-actions .icon-btn,.top-actions .search-pill{width:35px;height:35px;min-width:35px}.top-actions .pwa-install-btn{min-width:34px;padding:6px!important}.top-actions .pwa-install-btn span:last-child{display:none}.content .community-welcome-like{padding:15px!important}.content .community-welcome-like .community-welcome-heart{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:24px!important}}
body.dark .topbar{background:#142842!important;border-color:#324b68}
body.dark .public-top-brand{color:#f2d59c}
body.dark .content .community-welcome-like{background:linear-gradient(120deg,#192f4d,#263650)!important;border-color:#876d3e!important;color:#f6e7cb!important}
body.dark .content .community-welcome-like .community-welcome-text h2{color:#ffe6b5!important}
body.dark .content .community-welcome-like .community-welcome-text p{color:#c1cee0!important}
body.dark .cad-news-banner{background:#182c48!important}


/* ==== diseno-premium-2026.css ==== */
/* =====================================================
   CAPILLA VIRGEN DEL MILAGRO · RENOVACION VISUAL 2026
   Capa final: debe ser la última hoja CSS del index.
   No cambia los datos, llamadas PHP ni eventos JS.
   ===================================================== */
:root {
 --vdm-navy:#102e57;
 --vdm-blue:#174979;
 --vdm-blue-2:#23659c;
 --vdm-gold:#c99c4b;
 --vdm-gold-soft:#f8edd3;
 --vdm-canvas:#f4f7fb;
 --vdm-ink:#203653;
 --vdm-muted:#627890;
 --vdm-line:#e1e8f1;
 --vdm-radius:22px;
 --vdm-shadow:0 12px 34px rgba(15,47,85,.065);
 --bg:var(--vdm-canvas);
 --white:#fff;
 --soft:#eef3fa;
 --line:var(--vdm-line);
 --ink:var(--vdm-ink);
 --muted:var(--vdm-muted);
 --green:#154675;
 --green-light:#eef3fa;
 --gold:var(--vdm-gold);
 --shadow:var(--vdm-shadow);
}
html {scroll-padding-top:100px}
body {background:var(--vdm-canvas);color:var(--vdm-ink);line-height:1.6}
.content {max-width:1400px;padding:clamp(20px,3vw,36px) clamp(16px,3.2vw,52px) 76px;min-width:0}
.content>*,.content>section {min-width:0}
.content .eyebrow {color:#a47a36;font-size:11px;font-weight:800;letter-spacing:1.5px}
.content .title,.content .section-title h2,.content .page-heading h1 {color:#133b6b}
.content .section-title{margin:34px 0 17px;align-items:center}
.content .section-title h2 {font-size:clamp(21px,2vw,29px);line-height:1.28;font-weight:600}
.content .section-title>a{color:#13538d;font-weight:800}
.content .subtitle {color:var(--vdm-muted)}
.content .btn,.content button {transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,color .18s ease}
.content .btn-primary {background:#16477e!important;color:#fff!important;border:1px solid #16477e!important;box-shadow:none}
.content .btn-primary:hover {background:#0e3565!important;border-color:#0e3565!important;transform:translateY(-2px)}
.content a:focus-visible,.content button:focus-visible,.topbar button:focus-visible {outline:3px solid #d5ad5a;outline-offset:3px}

/* Barra superior ordenada */
body:not(.dark) .topbar {background:#fff!important;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 18px rgba(13,45,83,.035)}
.topbar {min-height:76px;gap:14px;flex-wrap:nowrap!important;padding:11px clamp(15px,2.8vw,42px)!important}
.topbar .public-top-brand {gap:9px;min-width:0;flex:0 1 auto}
.topbar .public-top-brand img {height:42px;width:42px;flex-shrink:0;object-fit:contain}
.topbar .public-top-brand span {font-size:13px;line-height:1.18;color:#143b6e}
.topbar .public-top-brand small {margin-top:2px;letter-spacing:.06em;font-size:10px;color:#a17d40}
.topbar .top-actions {gap:10px;flex:0 0 auto}
.topbar .search-pill {border:1px solid #dde6f0;min-height:44px;background:#f8fafd;border-radius:14px;font-size:12px;color:#66819d;box-shadow:none}
.topbar .search-pill:hover {border-color:#afc5df;background:white}
.topbar .icon-btn,.topbar .avatar-btn {border:1px solid #e2eaf2;background:#fff;border-radius:13px;color:#205386;box-shadow:none}
.topbar .pwa-install-btn {border-radius:13px!important;box-shadow:none!important;min-height:44px;border-color:#d6ac59!important;background:#f6e6bf!important;color:#163d6e!important;font-size:12px!important;font-weight:800}
.topbar .pwa-install-btn:hover {background:#f1d79d!important}
.topbar .crumb {color:#5b7390!important;font-weight:700!important}
.sidebar {background:#fff;border-right-color:#e3eaf2;box-shadow:3px 0 24px rgba(20,56,95,.02)}
.sidebar .brand {margin-bottom:23px}
.sidebar .nav-link {min-height:42px;line-height:1.3;border-radius:12px;font-size:12px;color:#5c728c}
.sidebar .nav-link.active {color:#13477c!important;background:#edf3fb!important;box-shadow:inset 3px 0 #c99c4b}
.sidebar .nav-link:hover {background:#f3f6fb}
.sidebar .sidebar-label {color:#8695a9;letter-spacing:1.2px}
.sidebar .private-tag {font-size:9px}
.sidebar-bottom .progress-box {background:#f9fbfe}

/* Noticias finas: no son un segundo encabezado */
.cad-news-banner {min-height:44px!important;padding:7px clamp(14px,3vw,46px)!important;gap:13px!important;background:#fcfaf5!important;border-bottom:1px solid #ecdfc7!important;box-shadow:none}
.cad-news-banner .cad-news-tag {background:#fff!important;border:1px solid #ecd9b1!important;border-radius:999px!important;color:#8c6322!important;font-size:10px!important;letter-spacing:.55px}
.cad-news-banner .cad-news-headline {font-size:12px;color:#305579;font-weight:700}
.cad-news-banner .cad-news-link {overflow:hidden;min-width:0}
.cad-news-banner .cad-news-date,.cad-news-banner .cad-news-count {color:#8190a2;font-size:10px}
.cad-news-banner .cad-news-arrow {background:#fff;border:1px solid #e3e8ef;border-radius:10px;color:#25517b}

/* Inicio: hero con texto legible y sello de la capilla */
#content .hero {border-radius:28px!important;min-height:310px;background:linear-gradient(115deg,#092b5a 0%,#104478 56%,#1d5c92 100%)!important;box-shadow:0 16px 38px rgba(14,52,91,.14);isolation:isolate;border:1px solid rgba(255,255,255,.09);overflow:hidden}
#content .hero::after {content:'';position:absolute;inset:auto -120px -230px auto;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(249,209,119,.17),transparent 65%);pointer-events:none}
#content .hero-copy {padding:clamp(28px,4.2vw,57px) 28px clamp(30px,4vw,50px) clamp(26px,4vw,52px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
#content .hero .eyebrow {color:#f2d28f!important;font-size:11px;letter-spacing:1.5px}
#content .hero h1 {color:#fff!important;font-size:clamp(30px,3.5vw,52px);line-height:1.17;margin:15px 0 12px;max-width:640px;text-wrap:balance}
#content .hero h1 i {color:#ffdf9e!important}
#content .hero p {font-size:13.5px;line-height:1.8;color:#e3ebf7!important;max-width:430px;margin:0 0 25px}
#content .hero .btn {background:#f3d695!important;color:#123963!important;border:1px solid #fbe5b9;border-radius:13px;font-size:13px;padding:12px 20px;box-shadow:none}
#content .hero .btn:hover {background:#ffebba!important;transform:translateY(-2px)}
#content .hero-art {background:radial-gradient(circle at center,rgba(218,165,74,.22),transparent 68%)}
#content .hero-chapel-logo {width:min(73%,300px);max-height:270px;filter:drop-shadow(0 15px 23px rgba(1,15,34,.3))}

/* COMUNIDAD - corrección crítica: no volver a escribir oscuro sobre azul */
body:not(.dark) #content.content .community-welcome-like,
body:not(.dark) .content .community-welcome-like {background:linear-gradient(110deg,#fff 0%,#fffaf1 100%)!important;border:1px solid #ead7b1!important;color:#16385e!important;box-shadow:var(--vdm-shadow)!important;padding:18px 22px!important;min-height:104px!important;border-radius:22px!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:17px!important;margin:22px 0 26px!important;isolation:isolate!important;overflow:visible!important}
#content .community-welcome-like::after {display:none!important}
#content .community-welcome-like .community-welcome-heart {width:54px!important;height:54px!important;flex:0 0 54px!important;display:grid!important;place-items:center!important;background:#fff1d7!important;border:1px solid #efd6a5!important;border-radius:16px!important;color:#bc8330!important;font-size:29px!important;box-shadow:none!important;text-shadow:none!important}
#content .community-welcome-like .community-welcome-text {flex:1 1 260px;min-width:0!important}
#content .community-welcome-like .community-welcome-kicker {color:#92703c!important;font-size:10px!important;line-height:1.5;letter-spacing:.7px}
#content .community-welcome-like .community-welcome-text h2 {color:#173d68!important;font-family:'Playfair Display',Georgia,serif;font-size:clamp(19px,2vw,25px)!important;line-height:1.23;margin:3px 0 5px!important}
#content .community-welcome-like .community-welcome-text p {color:#617893!important;font-size:12px!important;line-height:1.6;margin:0!important}
#content .community-welcome-like .community-welcome-action {flex:0 1 180px;min-width:165px;max-width:245px;display:flex;flex-direction:column;align-items:stretch!important;justify-content:center;gap:5px;margin-left:auto!important}
#content .community-welcome-like button.community-like.community-home-like {min-height:47px!important;padding:9px 17px!important;background:#123f77!important;color:white!important;border:1px solid #123f77!important;border-radius:13px!important;box-shadow:none!important;font-size:13px!important;line-height:1.2;display:flex;align-items:center;justify-content:center;gap:10px;width:100%}
#content .community-welcome-like button.community-like.community-home-like:hover {background:#092f60!important;transform:translateY(-2px)}
#content .community-welcome-like button.community-like.community-home-like.liked {background:#a52e59!important;border-color:#a52e59!important;color:#fff!important}
#content .community-welcome-like .community-home-like-heart {color:inherit!important;font-size:22px!important;text-shadow:none}
#content .community-welcome-like .community-home-like-number {background:rgba(255,255,255,.16)!important;color:#fff!important;border-radius:8px;font-size:13px!important}
#content .community-welcome-like .community-welcome-action small {color:#70839d!important;font-size:10px!important;text-align:center!important;line-height:1.4!important}
/* Prevención adicional cuando el tema oscuro esté activo */
body.dark #content.content .community-welcome-like {background:linear-gradient(115deg,#233653,#1a2d47)!important;color:#f4e5bf!important;border:1px solid #8b7149!important;box-shadow:none!important}
body.dark #content .community-welcome-like .community-welcome-text h2 {color:#ffe4af!important}
body.dark #content .community-welcome-like .community-welcome-text p {color:#c5d2e3!important}
body.dark #content .community-welcome-like button.community-home-like {color:#fff!important;background:#1d5889!important;border-color:#598ab0!important}

/* Portada informativa: más aire y accesos claros */
#content .ci-preview {padding:clamp(20px,2.7vw,32px);margin:25px 0 29px;background:linear-gradient(115deg,#fffdf9 0%,#eff5fd 100%);border:1px solid #e5d8bf;border-radius:24px;box-shadow:0 8px 28px rgba(15,47,85,.05);gap:24px;align-items:center}
#content .ci-preview h2 {font-size:clamp(23px,2.6vw,34px);line-height:1.25;color:#153d6b}
#content .ci-preview p {color:#617995;font-size:13px;line-height:1.75}
#content .ci-preview-actions a {background:#16477b;color:#fff;border-radius:999px;padding:10px 16px;font-size:12px}
#content .ci-preview-actions a:hover {background:#0b3564;transform:translateY(-1px)}
#content .ci-preview-next {background:#ffffffa8;border:1px solid #e4e9ef;border-radius:19px;padding:20px;min-height:160px}
#content .ci-preview-next>strong {font-size:11px;letter-spacing:1px;color:#97703b}
#content .ci-preview-next a {background:#f6f9fe;border:1px solid #e5ebf3;padding:12px 14px;border-radius:13px}
#content .ci-preview-next p {margin:4px 0;color:#647991}

/* Tarjetas y banners de Inicio */
#content .read-bible-banner {border-radius:23px;overflow:hidden;border:1px solid rgba(196,151,72,.18);box-shadow:0 13px 30px rgba(11,46,89,.1);min-height:235px}
#content .read-bible-banner:hover {transform:translateY(-2px);box-shadow:0 18px 40px rgba(11,46,89,.15)}
#content .quote-card,#content .continue-card,#content .feature-card,#content .book-teaser {border:1px solid #e1e8f1!important;background:#fff;border-radius:20px;box-shadow:var(--vdm-shadow)}
#content .quote-card {padding:27px}
#content .quote-card blockquote {color:#143b67;font-size:clamp(21px,1.8vw,27px)}
#content .continue-card {padding:27px}
#content .continue-card h3 {color:#143b67}
#content .continue-card p,#content .feature-card p {color:#647890}
#content .feature-card {min-height:142px;gap:17px;padding:23px;transition:transform .18s,box-shadow .18s}
#content a.feature-card:hover {transform:translateY(-3px);box-shadow:0 16px 34px rgba(16,53,92,.09)}
#content .feature-icon {background:#edf3fa;color:#19558d;border-radius:16px}
#content .feature-card h3 {font-size:16px;color:#143963;margin:0 0 7px}
#content .book-teaser {min-height:152px;padding:21px}
#content .teaser-icon {background:#fcf2df;color:#a47b36}
#content .book-teaser strong {color:#193b67}
#content .book-teaser:hover {border-color:#cfb47b!important;box-shadow:0 15px 30px rgba(16,53,92,.10)}
#content .home-grid {gap:18px}
#content .community-summary-mini {border-color:#dce5f0;border-radius:16px;background:#f0f5fc;color:#214e7b;line-height:1.6;gap:12px}
#content .community-summary-mini a {color:#174c83}
#content .fe-home-entry,#content .cadb-home-link {border-radius:21px;border:1px solid #e0e7f0;box-shadow:var(--vdm-shadow)}

/* Lecturas, biblioteca, catequesis y formularios */
#content .page-heading {margin-bottom:26px}
#content .page-heading .title {font-size:clamp(29px,3vw,44px)}
#content .book-tile,#content .reader-side,#content .reading-card,#content .context-panel,#content .cat-resource,#content .kids-story-card,#content .kids-prayer-card,#content .kids-value-card {border-color:#e0e8f2;border-radius:19px;box-shadow:var(--vdm-shadow)}
#content .book-tile:hover {border-color:#c8a56c;box-shadow:0 12px 28px rgba(16,53,92,.08)}
#content .reader-main .reading-card {padding:clamp(20px,2.4vw,40px)}
#content .verses {line-height:1.94;color:var(--ink)}
#content .verse {line-height:inherit}
#content .context-panel {background:#f6f9fd;border-color:#dde8f3}
#content .quote-card footer {gap:12px;flex-wrap:wrap}
#content .quote-card footer span {white-space:normal}
#content .ci-schedule-card,#content .ci-post-card,#content .ci-calendar,#content .ci-event-row {border-radius:20px;border-color:#e1e9f2;box-shadow:var(--vdm-shadow)}
#content .ci-schedule-card:hover,#content .ci-post-card:hover {box-shadow:0 16px 33px rgba(16,53,92,.09)}
#content .ci-day {min-height:76px}
#content .ci-today {border-color:#cda75f;background:#fff9eb}
#content .community-formbox,#content .community-aside-card {border:1px solid #e1e8f1;border-radius:21px;box-shadow:var(--vdm-shadow)}
#content .field,#content input,#content textarea,#content select {max-width:100%}
#content .community-like:not(.community-home-like) {border-radius:10px}
#content .reader-toolbar,#content .modal-actions {flex-wrap:wrap;gap:9px}

/* Footer centrado, visible y espaciado */
.footer.cad-site-footer {background:#fff;border-top:1px solid #e1e9f3;padding:40px 18px 25px!important}
.cad-site-footer-inner h2 {color:#153f6b;font-size:clamp(22px,2vw,27px)}
.cad-site-footer-whatsapp {box-shadow:none}

/* Oscuro coherente, no basta con invertir el fondo */
body.dark {--bg:#101d31;--white:#1b2e48;--soft:#213752;--line:#35506e;--ink:#edf2fa;--muted:#b0c3d7;--green:#eac980;--shadow:0 16px 30px rgba(0,0,0,.1);background:#101d31;color:#edf2fa}
body.dark .topbar {background:#152741!important;border-color:#2d4260}
body.dark .public-top-brand span {color:#f5d997}
body.dark .sidebar {background:#14243a;border-color:#314963}
body.dark .cad-news-banner {background:#1c2d45!important;border-color:#655632!important}
body.dark .cad-news-headline {color:#dbe5f2}
body.dark #content .ci-preview {background:linear-gradient(110deg,#1b2e47,#243852);border-color:#65583b}
body.dark #content .ci-preview h2 {color:#f1d49b}
body.dark #content .ci-preview p,body.dark #content .continue-card p,body.dark #content .feature-card p {color:#c0d0e0}
body.dark #content .ci-preview-next {background:#21334c;border-color:#435571}
body.dark #content .ci-preview-next a {background:#273f5e;border-color:#465d79;color:#eaf2ff}
body.dark #content .quote-card,body.dark #content .continue-card,body.dark #content .feature-card,body.dark #content .book-teaser,body.dark #content .community-formbox,body.dark #content .community-aside-card {background:#192e47!important;border-color:#334c69!important}
body.dark #content .quote-card blockquote,body.dark #content .continue-card h3,body.dark #content .feature-card h3,body.dark #content .book-teaser strong {color:#f3e1b9}
body.dark #content .feature-icon,body.dark #content .teaser-icon {background:#293f5b;color:#e7c783}
body.dark #content .community-summary-mini {background:#233957;border-color:#395370;color:#e5eefa}
body.dark #content .context-panel {background:#203550;border-color:#395370}
body.dark .footer.cad-site-footer {background:#14253e;border-color:#2e4866}
body.dark #content .community-welcome-like .community-welcome-heart {background:#31455e!important;color:#f5d8a5!important;border-color:#866e45!important}
body.dark #content .community-welcome-like .community-welcome-kicker {color:#ebc889!important}
body.dark #content .community-welcome-like .community-welcome-action small {color:#c2d0e3!important}

@media(min-width:1150px) {
 .topbar .public-top-brand {display:inline-flex!important}
 .topbar .crumb {display:none!important}
}
@media(max-width:1020px) {
 .topbar .top-actions {gap:7px}
 .topbar .search-pill {min-width:175px}
 #content .hero {grid-template-columns:1.2fr .8fr}
 #content .hero-art {min-height:245px}
 #content .hero-chapel-logo {width:75%}
}
@media(max-width:780px) {
 .topbar {min-height:66px;padding:9px 14px!important;gap:8px}
 .topbar .public-top-brand img{height:32px;width:32px}
 .topbar .public-top-brand span{font-size:11px}
 .topbar .public-top-brand small{font-size:9px}
 .topbar .top-actions .search-pill {width:39px;min-width:39px;justify-content:center;padding:0}
 .topbar .top-actions .search-pill>span:nth-child(2),.topbar .top-actions .search-pill kbd {display:none}
 #content .hero {min-height:0;grid-template-columns:1fr .76fr;border-radius:22px!important}
 #content .hero-copy {padding:25px}
 #content .hero-art {min-height:230px}
 #content .hero h1 {font-size:clamp(27px,4.6vw,37px)}
 #content .community-welcome-like .community-welcome-action {margin-left:0!important;max-width:none;flex:1 0 100%}
 #content .ci-preview {grid-template-columns:1fr}
}
@media(max-width:600px) {
 .content {padding:20px 15px 50px}
 .topbar .public-top-brand span {font-size:10px;max-width:130px;white-space:normal}
 .topbar .public-top-brand small {display:none}
 .topbar .top-actions {gap:6px}
 .topbar .top-actions .pwa-install-btn {padding:8px!important;min-width:37px;min-height:39px}
 .topbar .top-actions .pwa-install-btn span:last-child {display:none}
 .topbar .top-actions .icon-btn,.topbar .top-actions .search-pill {width:38px;height:38px;min-width:38px}
 .topbar .avatar-btn {display:none}
 .cad-news-banner {padding:7px 12px!important;min-height:42px!important}
 .cad-news-banner .cad-news-tag {font-size:0!important;min-width:31px;text-align:center}
 .cad-news-banner .cad-news-tag-symbol {font-size:13px!important}
 .cad-news-banner .cad-news-date {display:none}
 #content .hero {display:flex;flex-direction:column-reverse;border-radius:22px!important}
 #content .hero-copy {padding:14px 22px 26px}
 #content .hero-art {min-height:165px;max-height:182px}
 #content .hero-chapel-logo {width:145px;max-height:145px}
 #content .hero .eyebrow {font-size:10px}
 #content .hero h1 {font-size:29px;margin:10px 0}
 #content .hero p {font-size:12px;margin:0 0 18px}
 #content .hero .btn {width:100%}
 body:not(.dark) #content .community-welcome-like {padding:16px!important;gap:12px!important;border-radius:18px!important}
 #content .community-welcome-like .community-welcome-heart {width:47px!important;height:47px!important;flex-basis:47px!important;font-size:24px!important}
 #content .community-welcome-like .community-welcome-text {flex:1 1 60%;min-width:0}
 #content .community-welcome-like .community-welcome-kicker {font-size:9px!important}
 #content .community-welcome-like .community-welcome-text h2 {font-size:20px!important}
 #content .community-welcome-like .community-welcome-text p {font-size:11.5px!important}
 #content .community-welcome-like .community-welcome-action {flex:1 0 100%;max-width:none}
 #content .ci-preview {padding:18px;border-radius:20px}
 #content .ci-preview h2 {font-size:25px}
 #content .home-grid {grid-template-columns:1fr;gap:13px}
 #content .section-title {align-items:flex-start;flex-direction:column;gap:6px}
 #content .book-teasers {grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 #content .feature-card {padding:19px;min-height:128px}
 #content .read-bible-banner {min-height:180px}
 #content .reader-main .reading-card {padding:20px}
 #content .community-stats {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:380px) {
 .topbar .public-top-brand span {max-width:92px}
 .topbar .public-top-brand img {width:28px;height:28px}
 .topbar .top-actions .search-pill,.topbar .top-actions .icon-btn {width:34px;height:34px;min-width:34px}
 #content .hero h1 {font-size:26px}
}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}


/* ==== consolidación final ==== */

/* === CAPILLA 2026 / ONE AUTHORITATIVE VISUAL PASS === */
:root{--bg:#f3f6fa;--white:#fff;--soft:#eef3fa;--line:#dfe7f1;--ink:#102c50;--muted:#60758e;--green:#123e73;--green-light:#eaf2fa;--gold:#d9b16a;--shadow:0 12px 38px rgba(13,46,85,.07);--ci-blue:#123e73;--ci-deep:#0d315f;--ci-gold:#d9b16a;--ci-border:#dfe7f1;--ci-muted:#60758e;--ci-text:#173658}
html{scroll-behavior:smooth}body{background:#f3f6fa;color:var(--ink);line-height:1.6}body,button,input,select,textarea{font-family:'DM Sans',system-ui,Arial,sans-serif}
button,input,select,textarea{font-size:inherit}button{font-weight:600}a{color:inherit}img{max-width:100%}
.sidebar{background:#fff;border-right:1px solid #e2eaf2;box-shadow:4px 0 28px #10365a09;padding-top:21px}.brand{margin:4px 8px 31px;align-items:center;min-width:0}.brand img{width:52px;height:52px;object-fit:contain;flex-shrink:0}.brand strong{font-family:'DM Sans',sans-serif;font-weight:800;font-size:14px;letter-spacing:-.2px;line-height:1.4}.brand em{color:#123e73;font-weight:800}.brand small{letter-spacing:.6px;color:#a37d46;line-height:1.4}.sidebar-label{color:#91a1b6;font-size:9px}.nav-link{border-radius:13px;min-height:43px;color:#58718c;font-size:12px;gap:12px;padding:10px 12px}.nav-link.active,.nav-link:hover{color:#123e73;background:#eaf2fa}.nav-icon{font-size:20px;color:#6b819b}.sidebar-bottom{padding-bottom:8px}
.main-shell{background:#f3f6fa}.topbar{position:sticky;top:0;z-index:25;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid #e2e9f1;padding:0 clamp(18px,3.8vw,60px);min-height:79px;height:auto;flex-wrap:wrap}.top-actions{gap:10px}.search-pill{min-width:min(240px,26vw);background:white;border:1px solid #dce5ee;border-radius:13px;color:#75899f}.icon-btn{border-color:#e0e8f0;color:#254c7a}.crumb{color:#183c6b;font-size:12px}.crumb span{color:#bc9252}
.content{padding:35px clamp(19px,3.8vw,60px) 62px;max-width:1440px;width:100%;min-height:450px}.eyebrow{color:#ab7f3d;letter-spacing:1.7px;font-size:10px}.title,.section-title h2,.page-heading h1{color:#0d315f}.subtitle,.page-heading .subtitle{color:#657991;font-size:13px;max-width:760px}.page-heading{margin-bottom:28px}.btn-primary,.ci-primary{background:#124579!important;color:#fff!important;border-color:#124579!important}.btn-light,.btn-outline{color:#124579;border-color:#d6e2ee}
.hero{background:linear-gradient(119deg,#092952 0%,#114577 62%,#236198 100%)!important;color:white;min-height:320px;border-radius:26px;box-shadow:0 18px 43px #092a5830}.hero h1{color:#fff}.hero .eyebrow{color:#f4d58f}.hero h1 i{color:#f4d58f}.hero p{color:#e7edf9}.hero .btn{background:#f6dfac;color:#0b3260}.hero .hero-chapel-logo{width:min(280px,80%);filter:drop-shadow(0 16px 30px #0a234845)}
.cad-news-banner{border-bottom:1px solid #e1e8f2;background:#fffcf7;padding:10px clamp(16px,3.8vw,60px);min-height:49px;gap:12px}.cad-news-tag{font-size:10px;border:1px solid #f0dcad;background:#fff8e9;color:#915e17;white-space:nowrap}.cad-news-headline{font-size:12px;color:#173d71}.cad-news-link{min-width:0;overflow:hidden}.cad-news-date{white-space:nowrap}.cad-news-side{flex-shrink:0}
.section-title{margin-top:32px}.quote-card,.continue-card,.feature-card,.book-teaser,.book-tile,.ci-category,.ci-schedule-card,.ci-secretariat,.ci-post-card,.ci-calendar,.ci-event-row,.ci-banner,.ci-intro,.ci-preview,.kids-story-card,.kids-value-card,.kids-prayer-card,.cat-lesson,.cat-small-card,.cat-stat,.cad-song-card{border:1px solid #dfe7f1!important;background:#fff;box-shadow:0 10px 30px #0d315f0b;border-radius:19px}
.quote-card blockquote{color:#123c70}.quote-card footer{color:#a67937}.feature-card h3,.continue-card h3,.book-teaser strong{color:#153a67}.feature-card p,.continue-card p{color:#6a7f96}.feature-icon,.teaser-icon{background:#edf3fb;color:#1b5084}
/* Single visible community call-to-action: bright card, never dark text on dark surface */
.community-welcome-like{background:#fffaf2!important;border:1px solid #ead5ac!important;color:#18385f!important;border-radius:23px!important;box-shadow:0 11px 30px rgba(11,51,98,.07)!important;padding:24px!important;display:grid!important;grid-template-columns:62px minmax(0,1fr) auto!important;align-items:center!important;gap:20px!important;min-height:0!important;margin:0 0 24px!important;overflow:visible!important}
.community-welcome-like::before,.community-welcome-like::after{display:none!important}.community-welcome-heart{width:58px!important;height:58px!important;border-radius:18px!important;background:#f8eac9!important;border:1px solid #edce89!important;color:#ac7a2b!important;display:grid!important;place-items:center!important;font-size:31px!important;line-height:1!important;position:static!important;box-shadow:none!important}.community-welcome-text{min-width:0!important}.community-welcome-kicker{color:#b0833f!important;font-weight:800!important;font-size:10px!important;letter-spacing:1.1px!important;line-height:1.5}.community-welcome-text h2{font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(20px,2vw,25px)!important;line-height:1.3!important;color:#113a6d!important;margin:5px 0!important;text-shadow:none!important}.community-welcome-text p{color:#627a93!important;font-size:13px!important;line-height:1.6!important;margin:0!important}.community-welcome-action{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;min-width:165px!important;position:static!important;margin:0!important}.community-home-like{background:#124579!important;color:white!important;border:1px solid #124579!important;border-radius:13px!important;min-height:47px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;font-size:13px!important;padding:10px 18px!important}.community-home-like:hover{background:#0d315f!important}.community-home-like-number{background:#ffffff2d!important;color:#fff!important;border-radius:7px!important;padding:2px 7px!important;min-width:23px!important;text-align:center!important}.community-welcome-action small{color:#8592a2!important;font-size:10px!important;line-height:1.4!important;text-align:center!important}
/* Public hours, album, calendar: consistent grids and cards */
.ci-intro{display:flex;align-items:center;gap:16px;background:#fffaf1!important;border:1px solid #ecdcb9!important;border-radius:19px;padding:19px 22px;margin-bottom:24px}.ci-intro-mark{width:51px;height:51px;display:grid;place-items:center;background:#f5e7c6;border-radius:14px;font-size:26px;flex-shrink:0}.ci-intro strong{color:#153a66}.ci-intro p{color:#61758a;font-size:13px;margin:7px 0 0}.ci-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ci-category{padding:22px!important}.ci-category-heading{display:flex!important;justify-content:space-between!important;align-items:center!important;margin:0 0 15px!important}.ci-category-heading h2{font:700 21px/1.3 'Playfair Display',Georgia,serif;color:#123a67;margin:5px 0}.ci-category-heading .ci-overline{color:#a98042;font-weight:800;font-size:10px;letter-spacing:1px}.ci-bullet{color:#bd9454;font-size:21px}.ci-schedules-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;gap:12px!important}.ci-schedule-card{padding:17px!important;box-shadow:none!important;background:#f7faff!important}.ci-schedule-card h3{font-size:17px;color:#123f70;margin:9px 0}.ci-time{font-size:20px;color:#b17f32;font-weight:800}.ci-subtle,.ci-muted{color:#708399!important;line-height:1.6;font-size:13px}.ci-secretariat{padding:23px;margin-top:20px}
.ci-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px!important;background:linear-gradient(110deg,#eef4fc,#fff9ec)!important;box-shadow:none!important}.ci-banner h2{font:700 27px/1.2 'Playfair Display',Georgia,serif;color:#10396b;margin:8px 0}.ci-banner p{font-size:13px;color:#60758c;margin:5px 0}.ci-banner span{font-size:11px;letter-spacing:.09em;color:#a67d3b}.ci-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px;margin:22px 0}.ci-post-body{padding:20px}.ci-post-body h3{font-size:19px;color:#133d72}.ci-post-body p{font-size:13px;color:#647b92}.ci-post-art{min-height:145px;display:grid;place-items:center;font-size:60px;background:linear-gradient(120deg,#eaf2fc,#fbf1dc)}
.ci-calendar{padding:23px!important;margin:10px 0 24px;overflow:hidden}.ci-calendar-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin-bottom:17px!important}.ci-calendar-head h2{font-size:26px!important;color:#0b3569!important;margin:2px 0!important}.ci-month-nav{display:flex!important;gap:8px!important}.ci-month-nav button{border:1px solid #d4e2f1!important;background:#eef4fb!important;border-radius:10px!important;color:#164777!important;min-width:38px;min-height:37px}.ci-weekdays,.ci-days{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important}.ci-weekdays span{display:block;text-align:center;font-size:11px!important;font-weight:800;color:#6b8199;padding:7px 1px}.ci-day{min-width:0;min-height:94px!important;border:1px solid #e9eef5!important;border-radius:11px!important;padding:7px 5px!important;background:#fff!important}.ci-day-blank{background:#f8fafc!important;border-color:transparent!important}.ci-today{background:#fff9ea!important;border-color:#ddb56c!important}.ci-date-number{color:#173d6b!important;font-size:12px!important;font-weight:800;display:block;margin-bottom:7px}.ci-day-event{font-size:10px!important;background:#e7eff9!important;color:#16467a!important;padding:5px!important;border-radius:6px!important;margin-top:4px!important;line-height:1.25;white-space:normal!important;word-break:break-word}.ci-event-list{display:grid;gap:12px}.ci-event-row{display:flex;align-items:center;gap:16px;padding:17px!important}.ci-event-date{background:#eef3fb;color:#154577;border-radius:12px;padding:10px 15px}.ci-event-details h3{color:#10396e;font-size:17px}.ci-empty{padding:45px 25px!important;border:1px dashed #d5e0ec;background:#fff;border-radius:20px;text-align:center;margin:18px 0;color:#6b7f94}.ci-empty h3{color:#123e70;font-size:20px;margin:8px 0}.ci-empty p{font-size:13px}.ci-empty-icon{font-size:29px;color:#c69a53}
/* All 30 tools + children and educational modules should look like organized cards */
:where(.ef-card,.ef-resource,.ef-tile,.fe-card,.fe-tile,.cad-explore-card,.mi-card,.mi-section,.kids-story-card,.kids-prayer-card,.cad-song-card){background:#fff!important;border:1px solid #dfe7f1!important;border-radius:18px!important;box-shadow:0 9px 26px #0d315f0a!important;overflow:hidden}
:where(.ef-grid,.ef-resource-grid,.ef-cards,.mi-grid,.mi-cards,.cad-explore-grid,.kids-stories-grid,.kids-prayers-grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px}
:where(.ef-card,.ef-resource,.ef-tile,.fe-card,.fe-tile,.cad-explore-card,.mi-card,.mi-section){padding:20px}.cad-songbook{width:100%}.cad-song-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:15px!important}.cad-song-card{padding:22px!important}.cad-song-card h3{color:#0c396b}.cad-song-read{color:#15497d}
:is(.chips,.cad-song-tabs,.cat-tabs,.ef-filters) button{border-radius:11px;white-space:normal}.cad-song-controls{gap:10px}
.footer.cad-site-footer{display:block!important;background:#fff!important;border-top:1px solid #dfe8f1!important;padding:40px 20px 26px!important;text-align:center;color:#71839a}.cad-site-footer-inner{max-width:650px;margin:0 auto}.cad-site-footer h2{color:#0d315f;font-family:'Playfair Display',Georgia,serif;font-size:26px;margin:8px 0}.cad-site-footer-description{color:#73869d;font-size:13px;line-height:1.7}.cad-site-footer-whatsapp{background:#1ac65f!important;color:white!important}.cad-site-footer-bottom{margin-top:22px;padding-top:18px;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;gap:14px;color:#8191a7}.cad-site-footer-bottom button{background:transparent;border:0;color:#174b83;font-weight:700}
/* Dark mode contrast */
body.dark{--bg:#0e1b2d;--white:#17283d;--soft:#1b2f46;--line:#31465e;--ink:#edf3fa;--muted:#b0c0d2;--ci-border:#314962;--ci-text:#edf3fa;--ci-muted:#b7c5d5;background:#0e1b2d;color:#e8f0f9}.dark .content,.dark .main-shell{background:#0e1b2d}.dark .sidebar,.dark .topbar,.dark .footer.cad-site-footer{background:#14253a!important;border-color:#30435a!important}.dark .nav-link{color:#bac9db}.dark .nav-link.active,.dark .nav-link:hover{color:#f2d79d;background:#213d5b}.dark :is(.ci-category,.ci-calendar,.ci-schedule-card,.ci-post-card,.ci-event-row,.ci-secretariat,.ci-intro,.ci-banner,.ci-empty,.community-welcome-like){background:#1a2d45!important;color:#e9f1fc!important;border-color:#36506e!important}.dark :is(.ci-category h2,.ci-calendar h2,.ci-empty h3,.community-welcome-text h2,.ci-post-body h3){color:#f1ddae!important}.dark :is(.ci-weekdays span,.ci-date-number,.ci-subtle,.ci-muted,.community-welcome-text p){color:#b9c9dc!important}.dark .ci-day{background:#20364f!important;border-color:#314e6b!important}.dark .ci-today{background:#473c29!important}.dark .ci-day-event{background:#2e547f!important;color:#fff!important}.dark .ci-schedule-card{background:#233d56!important}.dark .cad-site-footer h2{color:#f4dcaa}
@media(max-width:1100px){.ci-categories{grid-template-columns:1fr}.community-welcome-like{grid-template-columns:58px minmax(0,1fr)!important}.community-welcome-action{grid-column:1/-1!important;max-width:250px;margin-left:78px!important}}
@media(max-width:770px){.content{padding:22px 16px 45px}.hero{grid-template-columns:1fr}.hero-copy{padding:29px 23px 18px}.hero-art{min-height:215px}.topbar{padding:10px 15px;min-height:65px}.cad-news-banner{padding:9px 14px}.ci-calendar{padding:12px!important}.ci-day{min-height:64px!important;padding:4px 3px!important}.ci-date-number{font-size:10px!important}.ci-day-event{font-size:9px!important}.ci-calendar-head h2{font-size:21px!important}.ci-weekdays,.ci-days{gap:3px!important}.ci-event-row{align-items:flex-start}.ci-categories{gap:13px}.ci-category{padding:17px!important}}
@media(max-width:530px){.community-welcome-like{grid-template-columns:45px minmax(0,1fr)!important;gap:12px!important;padding:16px!important}.community-welcome-heart{width:44px!important;height:44px!important;font-size:24px!important}.community-welcome-text h2{font-size:19px!important}.community-welcome-action{margin-left:0!important;max-width:none!important}.ci-month-nav button{min-width:30px;min-height:32px;padding:4px 7px!important}.ci-calendar-head h2{font-size:18px!important}.ci-day{min-height:54px!important}.ci-weekdays span{font-size:9px!important}.ci-event-row{flex-wrap:wrap}.cad-site-footer-bottom{flex-direction:column}.ci-banner{padding:17px!important}}


/* Nueva instalación: estilos finales consistentes para información de la capilla */
#content .ci-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#content .ci-category{display:block;margin:0!important;padding:22px!important;background:#fff!important;border:1px solid #dae5f1!important;border-radius:20px!important;min-width:0}
#content .ci-category-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e6edf5;padding-bottom:13px;margin-bottom:14px}
#content .ci-category-heading h2{font:700 clamp(19px,2vw,24px)/1.3 'Playfair Display',Georgia,serif;color:#143c69}
#content .ci-category-heading .ci-overline{display:block;color:#b28a4b;font-size:10px;letter-spacing:1.1px}
#content .ci-schedules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px}
#content .ci-schedule-card{background:#f5f8fc!important;padding:17px!important;border-radius:14px!important;box-shadow:none!important}
#content .ci-calendar{padding:22px!important;background:#fff!important;border:1px solid #dde7f1!important;border-radius:20px!important;overflow:hidden}
#content .ci-weekdays,#content .ci-days{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important}
#content .ci-weekdays>span{min-width:0;text-align:center}
#content .ci-day{min-height:95px!important;padding:7px 5px!important;border:1px solid #e8eef5!important;border-radius:11px!important;background:#fff!important;min-width:0;overflow:hidden}
#content .ci-day-blank{border:0!important;background:#f7f9fc!important}
#content .ci-day.ci-today{background:#fff8e8!important;border-color:#caa45f!important}
#content .ci-month-nav{display:flex;gap:8px}
#content .ci-month-nav button{min-width:36px;min-height:37px;padding:6px 10px;border:1px solid #cfdfef;border-radius:10px;background:#eaf1f9;color:#123d72;cursor:pointer}
#content .ci-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:20px}
#content .ci-post-card{background:#fff!important;border:1px solid #dce5ee!important;border-radius:19px!important;overflow:hidden;min-width:0}
#content .ci-post-art,#content .ci-post-cover{min-height:165px}
#content .ci-event-row{background:#fff!important;padding:18px!important;border-radius:16px!important}
#content .ci-empty{border:1px dashed #d5e0ec;background:#fff!important;border-radius:20px!important;padding:43px 22px!important;text-align:center}
#content .ci-intro{background:#fff8e8!important;padding:20px!important;border-radius:20px!important}
#content .ci-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(120deg,#123e72,#1b598d)!important;color:#fff!important;padding:25px!important;border-radius:20px!important}
#content .ci-banner h2,#content .ci-banner p,#content .ci-banner span{color:#fff!important}
#content .ci-secretariat{background:#fdf7e9!important;border:1px solid #e9d7af!important;border-radius:20px;padding:25px!important}
#content .ci-category h2,#content .ci-secretariat h2{color:#143c69!important}
#content .ef-page,#content .ef-grid,#content .mi-grid,#content .kids-stories-grid{min-width:0}
#content .cad-songbook{max-width:100%}
#content button,#content a{touch-action:manipulation}
@media(max-width:850px){#content .ci-categories{grid-template-columns:1fr}#content .ci-calendar{padding:12px!important}#content .ci-day{min-height:66px!important;padding:4px 2px!important}#content .ci-weekdays,#content .ci-days{gap:3px!important}#content .ci-day-event{font-size:9px!important;padding:3px 2px!important}}
@media(max-width:450px){#content .ci-day{min-height:56px!important}#content .ci-date-number{font-size:10px!important}#content .ci-month-nav button{min-width:31px;padding:5px}#content .ci-calendar-head h2{font-size:21px!important}}
body.dark #content .ci-category,body.dark #content .ci-calendar,body.dark #content .ci-post-card,body.dark #content .ci-event-row{background:#1a2d45!important;border-color:#345271!important}
body.dark #content .ci-day{background:#1e334b!important;border-color:#334e69!important}body.dark #content .ci-day.ci-today{background:#463b27!important}
body.dark #content .ci-category h2,body.dark #content .ci-secretariat h2{color:#efd9a7!important}
