:root{color-scheme:dark;--bg:#0b0b0d;--panel:#141416;--gold:#d4ad61;--muted:#a5a5ac;--line:#2c2a26;--text:#f7f4ed;--prayer:#f4f0e8;--button:#1b1b1e;--field:#19191c;--field-border:#45434a;--nav:#101012f5;--accent-bg:#322918;--progress:#303033;--notice:#32291a;--bead:#34302a;--bead-edge:#8c7448;--bead-done:#d4ad61;--bead-current:#ffffff;--chain:#534632;--cta:#d4ad61;--cta-text:#19150d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,sans-serif}header{max-width:1160px;margin:auto;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.brand{display:flex;align-items:center;gap:16px;font-weight:750;letter-spacing:4px;font-size:19px}.brand small{display:block;font-size:10px;letter-spacing:4.8px;color:var(--gold);font-weight:500}.cross{font-size:32px;font-weight:300;color:var(--gold)}.header-note{font-size:12px;color:var(--muted)}main{max-width:1060px;margin:auto;padding:44px 28px 120px;outline:none}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(36px,5vw,60px)/1.12 Georgia,serif;letter-spacing:-1px;margin-bottom:24px}h2{font:400 32px/1.2 Georgia,serif}h3{font-size:19px;font-weight:550}p{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:650}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:50px;align-items:center;padding:20px 0 40px}.hero p{max-width:450px}.hero em{font-weight:400;color:var(--gold)}.rosary{width:100%;max-height:320px;display:block;margin:auto}.hero-art{position:relative;background:radial-gradient(ellipse,#29221866,transparent 68%)}.hero-art .eyebrow{text-align:center}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px;text-align:left}.mode{cursor:pointer;color:inherit;font:inherit;transition:border-color .2s,transform .2s}.mode:hover:not(:disabled){border-color:var(--gold);transform:translateY(-3px)}.mode p{font-size:13px;margin:10px 0 0}.mode .symbol{display:block;color:var(--gold);font-size:25px;margin-bottom:22px}.mode:disabled{opacity:.5;cursor:not-allowed}.tag{display:inline-block;font-size:10px;border:1px solid var(--line);padding:3px 8px;border-radius:20px;color:var(--gold)}.section-label{display:flex;justify-content:space-between;align-items:center;margin:20px 0}.section-label h2{font:500 17px system-ui;margin:0}.today{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);margin-top:28px;padding-top:20px;font-size:13px}.today strong{display:block;color:var(--text)}.today p{margin:0}.button,button,input,select,textarea{font:inherit}button,.button{min-height:48px;border-radius:9px;padding:12px 20px;border:1px solid var(--line);background:var(--button);color:var(--text);cursor:pointer;display:inline-block}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:var(--cta);color:var(--cta-text);border-color:var(--cta);font-weight:650}.wide{width:100%}.secondary{background:transparent}.actions{display:flex;gap:12px;align-items:center;margin:24px 0}.actions>*{flex:1;text-align:center}label{display:block;font-size:14px;margin:18px 0 8px}input,select,textarea{display:block;background:var(--field);color:var(--text);border:1px solid var(--field-border);border-radius:8px;padding:13px;width:100%}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.narrow{max-width:620px;margin:auto}.muted{color:var(--muted);font-size:13px}.prayer-layout{display:grid;grid-template-columns:320px 1fr;gap:40px}.prayer-text{font:400 23px/1.7 Georgia,serif;color:var(--prayer);white-space:pre-line}.prayer-card{padding:30px}.prayer-card h1{font-size:35px}.instruction{padding:12px 16px;border-left:2px solid var(--gold);background:#d4ad6108;font-size:14px}.progress-head{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:10px}progress{width:100%;height:5px;border:0;accent-color:var(--gold);margin-bottom:26px}progress::-webkit-progress-bar{background:var(--progress);border-radius:5px}progress::-webkit-progress-value{background:var(--gold);border-radius:5px}.responsible{color:var(--gold);font-size:14px}.legend{font-size:11px;text-align:center;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;font-size:18px;color:var(--text)}details p{padding-top:18px}.intention{margin-top:16px;overflow-wrap:anywhere}.intention p{white-space:pre-wrap;color:var(--text)}.intention button{font-size:12px;padding:6px 12px}.empty{text-align:center;padding:40px 20px}.complete{text-align:center;padding:35px 10px}.complete .cross{font-size:60px}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:50px;background:var(--nav);border-top:1px solid var(--line);padding:12px 15px max(12px,env(safe-area-inset-bottom));z-index:5;backdrop-filter:blur(15px)}nav a{min-width:55px;text-align:center;color:var(--muted);font-size:21px}nav span{display:block;font-size:10px}nav a[aria-current=page]{color:var(--gold)}#notice:not(:empty){position:fixed;top:16px;left:50%;transform:translateX(-50%);padding:15px;background:var(--notice);border:1px solid var(--gold);border-radius:8px;z-index:10;width:min(90%,500px)}.footer-note{text-align:center;letter-spacing:2px;font-size:9px;margin-top:35px;color:var(--muted)}.count{color:var(--gold);font-size:13px}@media(max-width:700px){header{padding:18px 20px}.header-note{display:none}main{padding:28px 20px 110px}.hero{grid-template-columns:1fr;gap:0;padding:5px 0 25px}.hero-art{display:none}h1{font-size:42px}.cards{grid-template-columns:1fr;gap:12px}.mode{position:relative;padding:20px 20px 20px 65px}.mode .symbol{position:absolute;left:22px;top:18px;margin:0}.mode h3{margin-bottom:3px}.mode p{margin:0}.prayer-layout{display:flex;flex-direction:column;gap:18px}.prayer-layout aside{display:flex;flex-direction:column;align-items:center;gap:8px}.prayer-layout .rosary{width:220px;max-width:100%;height:282px;margin:0}.prayer-layout .legend{max-width:290px;text-align:center;margin:0}.prayer-card{padding:22px}.prayer-text{font-size:22px}.prayer-card h1{font-size:30px}nav{gap:0;justify-content:space-around}.actions{gap:8px}.actions button{padding:13px 10px}.today{margin-top:22px}}

/* Contraste explícito para títulos em todos os navegadores. */
h1,h2,h3,summary{color:var(--text)}

.confirm-dialog{width:min(90vw,460px);background:var(--panel);color:var(--text);border:1px solid var(--gold);border-radius:16px;padding:25px}.confirm-dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}

.prepare-intentions{margin-top:22px}.check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;overflow-wrap:anywhere}.check input{width:20px;height:20px;flex:none;accent-color:var(--gold);margin-top:3px}.check small{display:block;color:var(--muted);font-size:12px}.mystery-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.mystery-tabs [aria-pressed=true]{color:var(--gold);border-color:var(--gold);background:var(--accent-bg)}.mystery-list{padding-left:24px}.mystery-list li{padding:8px}.mystery-list p{font-size:14px;margin:6px 0 10px}#mystery-list>.primary{margin-top:20px}.prayer-text{overflow-wrap:anywhere}@media(max-width:700px){nav a{min-width:0;flex:1}nav{padding-left:5px;padding-right:5px}nav span{font-size:10px}.section-label{gap:10px}.section-label .eyebrow{font-size:8px;letter-spacing:1px}}

:root[data-theme="light"]{color-scheme:light;--bg:#f6f3ed;--panel:#ffffff;--gold:#795711;--muted:#5e5a54;--line:#d8d0c2;--text:#24211c;--prayer:#29251f;--button:#eee8de;--field:#fff;--field-border:#aaa08f;--nav:#fbf8f2f5;--accent-bg:#eee0c4;--progress:#ded6c9;--notice:#fff0cc;--bead:#e3dbce;--bead-edge:#8b7959;--bead-done:#a87921;--bead-current:#24211c;--chain:#a6977d;--cta:#795711;--cta-text:#fffaf0}
.header-actions{display:flex;gap:22px;align-items:center}.theme-toggle{font-size:12px;padding:9px 12px;white-space:nowrap;background:var(--panel);color:var(--text);min-height:44px}.prayer-layout aside>.rosary{max-height:420px}.prayer-layout aside{align-self:start}.prayer-layout .legend{line-height:1.7}.hero-art{background:radial-gradient(ellipse,#d4ad6118,transparent 68%)}@media(min-width:701px){.prayer-layout aside>.rosary{height:410px}}@media(max-width:700px){.prayer-layout aside{align-self:stretch}.header-actions{gap:0}header{gap:10px}.brand{gap:9px;font-size:16px;letter-spacing:2.5px}.brand small{font-size:9px;letter-spacing:3px}.cross{font-size:28px}}@media(max-width:360px){header{padding:16px 14px}.theme-toggle{font-size:11px;padding:8px}.brand{font-size:15px}.prayer-layout .rosary{width:210px;height:270px}}

#recording-home{max-width:1004px;margin:0 auto 120px;padding:0 28px}#recording-home:has([hidden]){display:none}#recording-panel{margin:0 0 22px;border-color:var(--gold);padding:20px}#recording-panel[hidden],#recording-dock[hidden]{display:none}.record-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.record-head h2{font:600 20px/1.4 system-ui;margin-bottom:12px}.record-head .eyebrow{margin-bottom:6px}.record-help{font-size:12px;line-height:1.6;margin:12px 0 0;color:var(--muted)}.record-message{padding:12px;border-radius:8px;background:var(--accent-bg);color:var(--text);font-size:14px}.record-controls{display:flex;gap:8px;flex-wrap:wrap}.record-controls>*{flex:1;min-width:115px;text-align:center;padding:10px 12px;font-size:13px}.audio-card{padding:16px 0;border-top:1px solid var(--line)}.audio-card h3{font-size:16px;margin-bottom:6px}.audio-card audio{display:block;width:100%;margin:14px 0}.record-library summary{font-size:16px}.rec-time{font-variant-numeric:tabular-nums;color:var(--gold);white-space:nowrap}.rec-state{color:var(--text);font-weight:650}.start-choice{margin-top:22px}#recording-dock{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);width:min(94%,600px);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--panel);color:var(--text);border:1px solid var(--gold);border-radius:12px;padding:10px 14px;z-index:6;box-shadow:0 5px 30px #0003;font-size:13px}#recording-dock button{min-height:44px;font-size:13px;padding:8px 12px}.is-recording main{padding-bottom:200px}.is-recording .prayer-card{scroll-margin-top:14px}#recording-slot:empty{display:none}@media(max-width:700px){#recording-home{padding:0 20px}.record-head h2{font-size:18px}#recording-dock{bottom:calc(72px + env(safe-area-inset-bottom))}.record-controls>*{min-width:105px}}

.record-collapse{font-size:12px;padding:8px 10px;margin-bottom:12px}#recording-panel{scroll-margin-top:20px}#recording-dock{gap:8px}#recording-dock>span{margin-right:auto}#recording-dock button{white-space:nowrap}#recording-slot:has(>[hidden]){display:none}@media(max-width:400px){#recording-dock{padding:8px;font-size:11px}#recording-dock button{font-size:11px;padding:8px}}

.preview-banner{text-align:center;padding:8px 15px;background:#342b1a;color:#edcf94;font:11px/1.5 system-ui;letter-spacing:.5px}.praying nav{display:none}.praying main{padding-bottom:210px}.praying .prayer-layout .actions{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(94%,680px);z-index:8;margin:0;background:var(--panel);padding:10px;border:1px solid var(--line);border-radius:14px;box-shadow:0 0 0 12px var(--bg)}.praying #recording-dock{bottom:calc(100px + env(safe-area-inset-bottom));width:min(94%,680px);box-shadow:none;border-color:var(--line);padding:8px 12px;gap:7px}.preview-volume{font-size:10px;margin:0;display:flex;gap:6px;align-items:center}.preview-volume input{width:65px;padding:0;accent-color:var(--gold)}.prayer-layout aside>.rosary{width:270px;height:auto;max-height:none}.preview-dialog{background:var(--panel);color:var(--text);border:1px solid var(--gold);border-radius:24px;padding:26px;width:min(92vw,540px);max-height:85dvh;overflow:auto}.preview-dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.preview-dialog h2{font-size:30px;clear:both;padding-top:12px}.preview-dialog .minimize{float:right;font-size:12px;min-height:44px}.preview-dialog .mix{padding:14px;border:1px solid var(--line);border-radius:12px;display:flex;gap:12px;align-items:center}.mix input{width:20px;accent-color:var(--gold)}.preview-note{font-size:12px;color:var(--muted);margin:14px 0}.preview-people p{padding:10px;border-bottom:1px solid var(--line);color:var(--gold)}.preview-people small{display:block;color:var(--muted);padding-left:20px}.preview-wave{font-size:28px;letter-spacing:5px;color:var(--gold);padding:20px 0}.guide-demo{margin-bottom:20px;border-color:var(--gold)}.guide-demo h2{font-size:26px}.guide-demo select{margin-top:12px}#group-demo{margin-bottom:20px}@media(max-width:700px){.prayer-layout aside>.rosary{width:235px;height:auto}.praying #recording-dock button{font-size:11px;padding:6px 9px}.preview-volume{font-size:0}.preview-volume input{width:45px}.praying .prayer-layout .actions button{min-height:50px}.preview-dialog{padding:20px}}

.prayer-layout aside>.rosary{width:330px;max-width:100%;height:auto;max-height:none}@media(max-width:700px){.prayer-layout aside>.rosary{width:310px;max-width:100%;height:auto}}

/* Vela imersiva: acende somente dentro de uma oração e a fumaça nasce do pavio ao concluir. */
.rosary-scene{position:relative;isolation:isolate;width:min(100%,330px);aspect-ratio:380/525;margin:0 auto 8px;overflow:visible}
.rosary-scene>.rosary{position:relative;z-index:2;display:block;width:100%;height:100%;max-height:none;overflow:visible}
.virtual-candle{position:absolute;z-index:1;left:50%;top:0;width:100%;height:100%;transform:translateX(-50%);pointer-events:none}
.candle-halo{position:absolute;left:50%;top:40.5%;width:36%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,183,76,.12),rgba(255,147,43,.045) 42%,transparent 72%);opacity:0;filter:blur(9px);transform:translate(-50%,-50%);transition:opacity .8s ease}
.is-praying .candle-halo{opacity:.8;animation:candle-glow 3.2s ease-in-out infinite}
.candle-body{position:absolute;left:50%;top:46.5%;width:14%;height:23%;border:1px solid rgba(236,207,151,.06);border-radius:8px 8px 5px 5px;background:linear-gradient(90deg,rgba(67,51,32,.28),rgba(91,73,48,.34) 45%,rgba(56,44,29,.26));opacity:.82;transform:translateX(-50%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.82) 30%,rgba(0,0,0,.28) 66%,transparent 91%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.82) 30%,rgba(0,0,0,.28) 66%,transparent 91%);transition:opacity .6s ease,filter .6s ease}
.candle-body i{position:absolute;left:50%;top:-4px;width:4px;height:6px;border-radius:50%;background:rgba(44,29,16,.8);transform:translateX(-50%)}
.candle-wick{position:absolute;z-index:1;left:50%;top:45.2%;width:2px;height:2.2%;border-radius:3px;background:#4a3020;opacity:.65;transform:translateX(-50%)}
.candle-flame{position:absolute;z-index:2;left:50%;top:40.2%;width:5.5%;height:5.3%;border-radius:55% 45% 48% 52%/70% 70% 30% 30%;background:radial-gradient(ellipse at 50% 75%,#fff8df 0 15%,#ffda80 33%,#ff9f42 64%,rgba(220,91,31,.2) 82%,transparent 88%);opacity:0;filter:drop-shadow(0 0 7px rgba(255,163,61,.6));transform:translateX(-50%) scale(.75);transform-origin:50% 90%;transition:opacity .5s ease,transform .5s ease}
.candle-flame i{position:absolute;left:50%;bottom:4%;width:30%;height:38%;border-radius:55% 45% 50% 50%;background:#fff8dd;filter:blur(.4px);transform:translateX(-50%)}
.is-praying .candle-flame{opacity:1;transform:translateX(-50%) scale(1);animation:candle-flicker 1.35s ease-in-out infinite alternate}
.is-finished .candle-flame{opacity:0;transform:translateX(-50%) scale(.35);filter:blur(4px)}
.rosary-smoke{position:absolute;z-index:3;inset:0;overflow:visible;pointer-events:none}
.smoke-stream{position:absolute;left:50%;top:45.3%;width:18%;height:35%;transform:translateX(-50%);filter:blur(6px);opacity:0}
.smoke-stream::before,.smoke-stream::after{content:"";position:absolute;left:50%;bottom:0;width:24%;height:100%;border-radius:50%;background:linear-gradient(to top,rgba(225,231,233,.22),rgba(211,219,223,.11) 45%,transparent);filter:blur(7px);transform:translateX(-50%);animation:smoke-column 2.4s ease-in-out infinite alternate}
.smoke-stream::after{width:42%;height:78%;opacity:.65;animation-delay:-1.1s;filter:blur(10px)}
.rosary-smoke img{position:absolute;left:50%;bottom:48%;width:min(36%,118px);height:auto;opacity:0;object-fit:contain;mix-blend-mode:screen;filter:grayscale(1) brightness(1.04) contrast(.98) blur(2px);transform:translate(-50%,16px) scale(.78);-webkit-mask-image:radial-gradient(ellipse 53% 50% at 50% 50%,#000 24%,rgba(0,0,0,.8) 55%,rgba(0,0,0,.32) 77%,transparent 100%);mask-image:radial-gradient(ellipse 53% 50% at 50% 50%,#000 24%,rgba(0,0,0,.8) 55%,rgba(0,0,0,.32) 77%,transparent 100%);animation:mary-smoke-rise 6.8s ease-out forwards}
.is-finished .smoke-stream{opacity:.82;animation:smoke-appear 6.4s ease-out forwards}
.complete .completion-scene{width:min(100%,280px);margin:0 auto 14px}
@keyframes candle-glow{0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(.9)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes candle-flicker{0%{transform:translateX(-50%) rotate(-2deg) scale(.94,1.03)}50%{transform:translateX(-48%) rotate(2deg) scale(1.04,.97)}100%{transform:translateX(-51%) rotate(-1deg) scale(.98,1.05)}}
@keyframes smoke-column{from{opacity:.35;transform:translate(-50%,0) scaleX(.72)}to{opacity:.7;transform:translate(calc(-50% + 3px),-70px) scaleX(1.18)}}
@keyframes smoke-appear{0%,12%{opacity:0}22%{opacity:.8}75%{opacity:.72}100%{opacity:0}}
@keyframes mary-smoke-rise{0%{opacity:0;transform:translate(-50%,17px) scale(.76);filter:grayscale(1) brightness(.92) contrast(.85) blur(5px)}18%{opacity:.2;filter:grayscale(1) brightness(1.02) contrast(1) blur(2px)}44%{opacity:.24;transform:translate(-50%,-5px) scale(.88)}72%{opacity:.14;transform:translate(-50%,-35px) scale(.96);filter:grayscale(1) brightness(1.08) contrast(.9) blur(4px)}100%{opacity:0;transform:translate(-50%,-65px) scale(1.02);filter:grayscale(1) brightness(1.16) contrast(.75) blur(9px)}}
@media(max-width:700px){.rosary-scene{width:min(100%,310px)}.complete .completion-scene{width:min(100%,240px)}}
@media(prefers-reduced-motion:reduce){.is-praying .candle-flame,.is-praying .candle-halo,.is-finished .smoke-stream,.rosary-smoke img{animation-duration:.01ms!important;animation-iteration-count:1!important}}

.praying main{padding-bottom:250px}
.praying nav{display:flex;position:static;margin:0 0 220px}
.praying .prayer-layout .actions{bottom:calc(12px + env(safe-area-inset-bottom))}
.praying #recording-dock{bottom:calc(104px + env(safe-area-inset-bottom));flex-wrap:wrap}
.music-settings{margin:16px 0}.music-settings summary{font-size:15px}
.music-settings label{display:flex;align-items:center;gap:12px}.music-settings input[type=checkbox]{width:20px}
.music-settings input[type=range]{max-width:180px}
.guide-demo .prayer-text{font-size:21px}

/* Controles integrados: sem sobreposição entre gravação e navegação. */
:root{--controls-height:190px}
.header-actions{display:flex;flex-direction:column;align-items:stretch;gap:5px}
.header-actions .header-note{display:none}
.header-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.header-tools .theme-toggle{min-width:112px;text-align:center;border-radius:12px}
.sound-settings-button{min-height:26px;font-size:11px;padding:2px 8px;background:transparent;border:0;color:var(--muted);align-self:flex-end}
#prayer-controls{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,720px);padding:10px 12px max(12px,env(safe-area-inset-bottom));z-index:8;background:var(--bg);border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;display:flex;flex-direction:column;gap:10px;box-shadow:0 -8px 24px #0002}
#prayer-controls[hidden]{display:none}
.praying #prayer-controls #recording-dock{position:static;transform:none;width:100%;margin:0;box-shadow:none;flex-shrink:0;padding:10px;border:1px solid var(--line);border-radius:12px}
.praying #prayer-controls .actions{position:static;transform:none;width:100%;margin:0;padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:12px;display:flex;gap:8px;box-shadow:none}
#prayer-controls .actions button{min-height:54px;padding:10px 12px;line-height:1.35}
.praying main{padding-bottom:30px}
.praying nav{position:static;margin:0;padding-bottom:calc(var(--controls-height) + 24px)}
.praying .prayer-card,.praying .guide-demo{scroll-margin-bottom:calc(var(--controls-height) + 20px)}
.sound-dialog{width:min(92vw,440px);max-height:85dvh;overflow:auto;border:1px solid var(--gold);border-radius:20px;background:var(--panel);color:var(--text);padding:24px}
.sound-dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}
.sound-heading{display:flex;gap:12px;align-items:start;justify-content:space-between}.sound-heading h2{font-size:25px}.sound-heading button{padding:6px 14px}
@media(max-width:700px){header{padding:14px 16px;gap:12px}.header-tools{grid-template-columns:1fr;gap:6px}.header-tools .theme-toggle{min-width:108px;min-height:38px;padding:7px 10px;font-size:12px}.header-actions{gap:2px}.sound-settings-button{font-size:10px}.brand{font-size:16px}.praying #prayer-controls #recording-dock{font-size:12px}.praying #prayer-controls #recording-dock button{font-size:12px}}
@media(max-width:360px){header{padding:12px}.brand{font-size:14px;letter-spacing:2px}.brand small{font-size:8px}.header-tools .theme-toggle{min-width:100px}#prayer-controls{padding-left:8px;padding-right:8px}#prayer-controls .actions button{font-size:14px}.praying #prayer-controls #recording-dock{gap:6px}}
.narration-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.narration-heading h1,.narration-heading h2{margin-bottom:12px;min-width:0}.narration-button{flex:none;min-height:44px;font-size:13px;padding:10px 12px;border-radius:12px;white-space:nowrap}.narration-button[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}.audio-status{font-size:12px;color:var(--muted);margin:0 0 16px}.guide-about{border:0;padding:8px 0 0}.guide-about summary{font-size:12px;color:var(--muted)}.welcome-audio{padding:16px 0;border-top:1px solid var(--line)}.welcome-audio p{font-size:14px}
@media(max-width:360px){.narration-heading{gap:8px}.narration-button{font-size:12px;padding:9px}.narration-heading h1{font-size:25px}.narration-heading h2{font-size:24px}}
.home-prayer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.home-prayer-actions .primary{flex:1;text-align:center}.home-prayer-actions>[data-action="restart-home"]{flex:none}.narration-speed{display:flex;align-items:center;gap:10px;width:max-content;margin:8px 0 18px;color:var(--muted);font-size:12px}.narration-speed select{width:auto;min-width:110px;min-height:42px;padding:8px 12px;border-radius:10px;color:var(--text);font-size:13px}
@media(max-width:420px){.home-prayer-actions{align-items:stretch}.home-prayer-actions .primary{flex-basis:100%}.home-prayer-actions>[data-action="restart-home"]{width:100%}}

/* A tela inicial continua simples; novos recursos ficam reunidos em Mais. */
.more-page>h1,.day-detail>h1{margin-bottom:14px}
.more-page>h1,.more-page h2{font-family:Georgia,serif}
.more-page>p:not(.eyebrow),.day-detail>p:not(.eyebrow):not(.back-to-more){max-width:650px}
.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
.more-card{display:flex;min-height:205px;flex-direction:column;align-items:flex-start;transition:border-color .2s,transform .2s}
.more-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.more-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:14px;border:1px solid var(--gold);border-radius:12px;color:var(--gold);font-size:22px}
.more-card .eyebrow{margin-bottom:4px;font-size:9px}
.more-card h2{font:500 22px/1.25 Georgia,serif;margin:0 0 7px}
.more-card p{margin:0 0 14px;font-size:13px}
.more-link{margin-top:auto;color:var(--gold);font-size:13px;font-weight:650}
.more-note{margin-top:18px}
.back-to-more{display:inline-block;margin-bottom:24px;color:var(--gold);font-size:13px}
.day-detail>.card{margin-top:18px}
.liturgy-card h2,.saint-card h2,.install-card h2{font-size:23px;margin-bottom:14px}
.reading-placeholder{display:flex;flex-direction:column;gap:3px;padding:13px 0;border-top:1px solid var(--line)}
.reading-placeholder strong{color:var(--gold);font-size:13px}
.reading-placeholder span{color:var(--muted);font-size:13px}
.liturgy-card .muted{margin:14px 0 0}
.saint-card{border-color:var(--gold)}
.install-card ol{padding-left:22px;color:var(--muted);line-height:1.8}
.install-card li{padding-left:4px;margin:6px 0}
.install-card li::marker{color:var(--gold)}
.reminder-card label{margin-top:0}
.reminder-card button{margin-top:18px}
.reminder-card .muted{margin:12px 0 0}
@media(max-width:700px){.more-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.more-card{min-height:0;padding:20px}.more-card h2{font-size:21px}.day-detail>.card{padding:20px}}

.feature-page{max-width:760px}.feature-page>p:not(.eyebrow){line-height:1.8}.feature-page>h1{margin-bottom:14px}.feature-page .back-to-more{margin-bottom:20px}
.official-journey-list{display:grid;gap:10px;margin:20px 0}.official-journey-day{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:12px;margin:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);cursor:pointer}.official-journey-day>input{position:absolute;width:1px;height:1px;opacity:0}.journey-checkbox{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--gold);border-radius:6px;color:var(--cta-text);font-size:14px}.official-journey-day>input:checked+.journey-checkbox{background:var(--gold)}.official-journey-day>input:checked+.journey-checkbox::after{content:"✓"}.official-journey-day>input:focus-visible+.journey-checkbox{outline:2px solid var(--gold);outline-offset:3px}.official-journey-day>span:last-child{display:grid;gap:3px}.official-journey-day strong{color:var(--gold);font-size:12px}.official-journey-day span span{color:var(--text);font-weight:600}.official-journey-day small{color:var(--muted);font-size:12px}.journey-finish-card{padding:22px;border:1px solid var(--gold);border-radius:14px;background:linear-gradient(140deg,var(--accent-bg),var(--panel))}.journey-finish-card h2{margin:0;font-size:25px}.journey-finish-card figure{margin:14px 0;padding:13px 16px;border-left:2px solid var(--gold);background:#d4ad6108}.journey-finish-card blockquote{margin:0;color:var(--gold);font:italic 20px/1.5 Georgia,serif}.journey-finish-card figcaption{margin-top:6px;color:var(--muted);font-size:11px}.journey-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.journey-actions p{margin:0}.journey-actions button{font-size:12px;padding:9px 13px}
.exam-prayer{display:grid;gap:6px;margin:18px 0;border-left:2px solid var(--gold)}.exam-prayer strong{color:var(--gold)}.exam-prayer span,.exam-privacy-note{font-size:13px;line-height:1.75}.exam-privacy-note{padding:12px 14px;border-radius:9px;background:var(--accent-bg)}.exam-privacy-note strong{color:var(--gold)}.commandment-card{margin:10px 0;padding:0 15px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.commandment-card summary{padding:15px 0;font-size:14px;font-weight:650}.commandment-card summary span{color:var(--gold);margin-right:8px;font-size:11px}.exam-check-row{display:flex;align-items:flex-start;gap:11px;margin:0;padding:12px 0;border-top:1px solid var(--line);cursor:pointer;font-size:13px;line-height:1.65}.exam-check-row input{width:19px;height:19px;flex:none;margin:2px 0 0;accent-color:var(--gold)}.official-exam-page>label{margin-top:20px}.official-exam-page>textarea{margin-bottom:14px}.official-confession-card{margin-top:18px;border-color:var(--gold)}.ready-title{display:flex;gap:12px;align-items:center;margin-bottom:15px}.ready-title>span{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:var(--gold);color:var(--cta-text);font-size:20px}.ready-title>div{display:grid;gap:3px}.ready-title small{color:var(--muted);font-size:12px}.official-confession-card textarea{min-height:190px;line-height:1.65}.confession-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.official-confession-card>.muted{margin:14px 0;font-size:11px}.text-button{padding:0;border:0;background:transparent;color:var(--gold);text-decoration:underline;text-underline-offset:3px;font-size:13px}.official-confession-card.is-clearing{animation:official-exam-fade .85s ease-in forwards;pointer-events:none}@keyframes official-exam-fade{to{opacity:0;filter:blur(5px);transform:translateY(-6px)}}.exam-result{border-color:var(--gold);padding:22px}.exam-result p{font:20px/1.65 Georgia,serif;color:var(--text)}
.liturgy-card h2,.saint-card h2{margin:4px 0 12px;font:500 25px/1.3 Georgia,serif}.liturgy-card h3{margin:19px 0 4px;font-size:15px}.liturgy-color{font-size:12px}.reading-placeholder{display:grid;gap:3px;padding:12px 0;border-top:1px solid var(--line)}.reading-placeholder strong{color:var(--gold);font-size:12px}.reading-placeholder span{font-size:13px;color:var(--text)}.liturgy-card .more-link,.saint-card .more-link{display:inline-block;margin-top:14px}.saint-card{border-color:var(--gold)}.source-note{margin:16px 0 8px;font-size:11px}.source-links{display:grid;gap:7px}.source-links a{color:var(--gold);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.reminder-card{margin-top:18px}.official-reminder-toggle{display:flex;align-items:center;gap:11px;margin:0 0 22px;cursor:pointer}.official-reminder-toggle input{width:20px;height:20px;margin:0;accent-color:var(--gold)}.reminder-card>label:not(.official-reminder-toggle){margin-top:0}.reminder-card button{margin-top:18px}.reminder-card .muted{margin:13px 0 0;font-size:11px}.install-card{margin-top:14px}.install-card h2{font-size:21px}.install-card ol{padding-left:22px;color:var(--muted);line-height:1.8}.install-card li{padding-left:4px;margin:5px 0}.install-card li::marker{color:var(--gold)}#official-install-button[hidden]{display:none!important}
@media(max-width:700px){.journey-actions{align-items:stretch;flex-direction:column}.journey-actions button{width:100%}.confession-actions{grid-template-columns:1fr}.official-journey-day{padding:14px}.journey-finish-card{padding:18px}.journey-finish-card blockquote{font-size:18px}}
