/* Catecismo da Igreja Católica - leitura e consulta responsiva offline. */
.catechism-view{background:var(--paper);padding-bottom:18px}
.cic-hero,.cic-subhero{background:linear-gradient(145deg,#711c2e,#45111b);color:#fff;padding:24px 19px 21px}
.cic-hero .eyebrow,.cic-subhero .eyebrow{color:#dfc17c!important}
.cic-hero-heading{display:flex;gap:15px;align-items:flex-start;margin:12px 0}
.cic-hero-heading>span{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:16px;background:#f4e1aa20;border:1px solid #e5c98775;color:#efd9a2;font-size:28px}
.cic-hero h2{font:700 clamp(26px,7.8vw,34px)/1.04 Georgia,serif;margin:0 0 10px;letter-spacing:-.035em}
.cic-hero-heading p{font:13px/1.45 system-ui,sans-serif;opacity:.86;margin:0}
.cic-hero-stats{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}
.cic-hero-stats span{font:600 10px/1.1 system-ui,sans-serif;background:#fff1;border:1px solid #ffffff27;border-radius:20px;padding:7px 9px;color:#f5e6ce}
.cic-content{max-width:760px;margin:auto;padding:18px 16px 35px}
.cic-continue[hidden],.cic-answers[hidden]{display:none!important}
.cic-continue{display:flex;align-items:center;gap:12px;width:100%;border:1px solid #e5ce97;border-radius:15px;padding:14px 15px;text-align:left;background:#f9f0db;color:#4a2d28;margin-bottom:16px;cursor:pointer}
.cic-continue>span:first-child{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#6a192b;color:#f6deb0}
.cic-continue>span:nth-child(2){flex:1}.cic-continue small,.cic-continue strong{display:block}.cic-continue small{font:800 10px system-ui;color:#92764d;letter-spacing:.1em}.cic-continue strong{font:700 15px system-ui;margin-top:4px}.cic-continue>b{font-size:24px;color:var(--wine)}
.cic-question-form{border:1px solid #d9c8ad;border-radius:18px;background:linear-gradient(145deg,#fffdf7,#f7edda);padding:19px 15px;box-shadow:0 5px 25px #43271908}
.cic-question-form label{display:block;font:700 22px/1.12 Georgia,serif;color:#63182a}
.cic-question-form>p{font:12px/1.5 system-ui;color:#766659;margin:7px 0 14px}
.cic-input-row{display:flex;gap:7px;align-items:stretch;min-width:0}
.cic-input-row input{font:14px system-ui;border:1px solid #ddcebb;min-width:0;flex:1;width:100%;padding:12px;border-radius:12px;background:#fff;color:#332e2b;outline-color:#9c6e3f}
.cic-input-row button{border:0;border-radius:12px;padding:0 13px;background:#6e192c;color:#fff;font:700 12px system-ui;cursor:pointer;min-height:45px}
.cic-question-form>small{font:11px/1.4 system-ui;color:#8a786c;display:block;margin-top:11px}
.cic-suggestions{margin:17px 0 25px}.cic-suggestions>span{font:800 10px system-ui;letter-spacing:.11em;color:#88725e}
.cic-suggestions>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.cic-suggestions button{border:1px solid #dfd1bf;border-radius:20px;padding:9px 13px;background:#fff;color:#641c2c;font:600 12px system-ui;cursor:pointer}
.cic-section-title{display:flex;align-items:end;margin:18px 0 13px}.cic-section-title small{font:800 10px system-ui;letter-spacing:.12em;color:#a88345}.cic-section-title h3{font:700 25px Georgia,serif;color:var(--text);margin:6px 0 0}
.cic-part-cards{display:grid;gap:10px}
.cic-part-card{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:17px 15px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:15px;cursor:pointer;box-shadow:0 4px 12px #37272206;color:var(--text)}
.cic-part-card:nth-child(2){background:#faf4e7;border-color:#e8d9b8}
.cic-part-number{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:#f1d693;background:#6a1c2b;font-size:23px}
.cic-part-copy{min-width:0}.cic-part-copy small,.cic-part-copy strong,.cic-part-copy em{display:block}
.cic-part-copy small{font:800 9px/1.4 system-ui;letter-spacing:.08em;color:#907965}
.cic-part-copy strong{font:700 17px/1.15 Georgia,serif;margin:4px 0;color:#4e2d31}
.cic-part-copy em{font:11px/1.35 system-ui;color:#837367}
.cic-part-card>b{font:24px system-ui;color:#7b3442}
.cic-prologue{width:100%;display:flex;justify-content:space-between;gap:10px;background:transparent;color:#6a1b2e;border:0;border-bottom:1px solid var(--line);font:600 13px system-ui;padding:20px 5px 15px;cursor:pointer}
.cic-source-note{font:11px/1.6 system-ui;color:var(--muted);margin:18px 2px}
.cic-subhero{padding:20px 19px 22px}.cic-subhero .back-link{color:#f0d8a0;font-size:13px}
.cic-subhero h2{font-size:clamp(26px,8vw,36px);line-height:1.1;margin:0 0 8px}
.cic-subhero>p:last-child{font:13px system-ui;color:#f5e6d7c4;margin:0}
.cic-topic-list{display:grid;gap:9px}
.cic-topic{display:grid;grid-template-columns:40px minmax(0,1fr) 13px;gap:12px;align-items:center;width:100%;text-align:left;padding:16px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#2d2824;cursor:pointer}
.cic-topic-num{width:40px;height:40px;border-radius:12px;background:#f7edda;color:#711e30;display:grid;place-items:center;font-size:19px}
.cic-topic strong,.cic-topic small{display:block}.cic-topic strong{font:700 16px/1.26 Georgia,serif}.cic-topic small{font:11px system-ui;color:#8b7a6d;margin-top:5px}.cic-topic>b{font:24px system-ui;color:#834656}
.cic-reader-heading{position:sticky;top:66px;z-index:12;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 2px 10px #27151806}
.cic-reader-heading button{font:700 13px system-ui;color:var(--wine);padding:8px 1px;background:transparent;border:0;cursor:pointer}
.cic-reader-heading span{font:700 11px system-ui;color:var(--muted)}
.cic-reader-intro{padding:23px 21px 17px;background:linear-gradient(145deg,#f9f1e1,#fffdf8);border-bottom:1px solid var(--line)}
.cic-reader-intro .eyebrow{font-size:9px!important;color:#9d763c!important}
.cic-reader-intro h2{font:700 clamp(25px,7.4vw,36px)/1.1 Georgia,serif;color:#621a2b;margin:7px 0 10px}
.cic-reader-intro>p:last-child{font:12px/1.45 system-ui;color:#826f60;margin:0}
.cic-reader-tools{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--paper);border-bottom:1px solid var(--line)}
.cic-reader-tools button{min-width:43px;min-height:40px;border:1px solid #e1d2be;background:#fff;border-radius:10px;padding:8px 10px;color:#661c2c;font:700 13px system-ui;cursor:pointer}
.cic-reader-tools button:last-child{flex:1;min-width:0;font-size:12px;background:#f7eedc}
.cic-reader-body{padding:15px clamp(18px,5vw,34px) 25px;margin:0 auto;max-width:760px;color:var(--text);--cic-reader-font:19px}
.cic-paragraph{padding:9px 0 16px;margin:0;border-bottom:1px solid #9e8d7244;scroll-margin-top:130px}
.cic-paragraph-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.cic-paragraph-head>span{font:800 12px system-ui;color:#8b602b;letter-spacing:.05em}
.cic-paragraph-head button{border:1px solid var(--line);background:#f9f4eb;border-radius:18px;padding:7px 11px;font:600 11px system-ui;color:#7b4751;cursor:pointer}
.cic-paragraph-head button.marked{background:#641c2c;color:#fff;border-color:#641c2c}
.cic-paragraph>p{white-space:pre-line;font-size:var(--cic-reader-font);font-family:Georgia,serif;line-height:1.62;letter-spacing:0;overflow-wrap:break-word;margin:0 0 5px}
.cic-paragraph.cic-focus{background:linear-gradient(90deg,#f4e5bca9,transparent);border-radius:10px;padding-left:10px;margin-left:-10px}
.cic-reader-navigation{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:10px 16px 24px}
.cic-reader-navigation button{font:600 12px system-ui;padding:15px 9px;border:1px solid var(--line);border-radius:12px;color:#6d2030;background:#f8f1e4;cursor:pointer}
.cic-reader-navigation button:disabled{opacity:.4}
.cic-answers{margin:16px 0 24px;scroll-margin-top:70px}
.cic-answer-head{padding:16px 3px 12px}.cic-answer-head small{font:800 10px system-ui;letter-spacing:.1em;color:#a38452}.cic-answer-head strong{font:700 21px/1.1 Georgia,serif;display:block;color:#611929;margin-top:5px}.cic-answer-head p{font:12px/1.5 system-ui;color:var(--muted);margin:8px 0 0}
.cic-answer{padding:17px 15px;margin-bottom:9px;border-radius:15px;background:#fff;border:1px solid var(--line)}
.cic-answer.best{background:#fff9eb;border-color:#d9bd7f}
.cic-answer-label{display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}.cic-answer-label strong{font:800 15px system-ui;color:#701c2c}.cic-answer-label span{font:600 11px system-ui;color:#927856}
.cic-answer p{font:15px/1.56 Georgia,serif;color:#43362e;margin:12px 0 13px;white-space:pre-line;overflow-wrap:break-word}
.cic-answer button{border:0;background:transparent;color:#681725;font:700 12px system-ui;padding:6px 0;cursor:pointer}
.cic-no-results,.cic-error,.cic-loading{font:13px/1.6 system-ui;color:var(--muted);padding:13px}
.cic-no-results{border:1px solid var(--line);border-radius:12px}.cic-no-results p{margin:8px 0 0}
.theme-dark .catechism-view,.theme-dark .cic-reader-heading,.theme-dark .cic-reader-tools{background:var(--paper)}
.theme-dark .cic-continue,.theme-dark .cic-part-card,.theme-dark .cic-part-card:nth-child(2),.theme-dark .cic-topic,.theme-dark .cic-question-form,.theme-dark .cic-answer,.theme-dark .cic-answer.best{background:#2a2522;border-color:#5b4a3d;color:#ece2d5}
.theme-dark .cic-part-copy strong,.theme-dark .cic-topic strong,.theme-dark .cic-answer-head strong,.theme-dark .cic-question-form label,.theme-dark .cic-reader-intro h2{color:#f0d59e}
.theme-dark .cic-reader-intro{background:#322922}
.theme-dark .cic-question-form>p,.theme-dark .cic-answer p,.theme-dark .cic-reader-intro>p:last-child{color:#d1c1b4}
.theme-dark .cic-input-row input,.theme-dark .cic-reader-tools button,.theme-dark .cic-paragraph-head button{background:#282321;color:#f1e4d8;border-color:#65554a}
.theme-dark .cic-suggestions button{background:#302822;color:#edd0a4;border-color:#64503a}
.theme-dark .cic-paragraph.cic-focus{background:#6a512b66}
@media(max-width:360px){.cic-hero-heading>span{flex-basis:38px;width:38px;height:38px;font-size:24px}.cic-hero-heading{gap:9px}.cic-hero h2{font-size:25px}.cic-input-row button{padding:0 10px}.cic-part-card{grid-template-columns:39px minmax(0,1fr) 12px;padding:13px 10px;gap:9px}.cic-part-number{width:39px;height:39px;font-size:19px}.cic-part-copy strong{font-size:16px}.cic-reader-body{padding-left:16px;padding-right:16px}}

/* v2.5.1: card do Catecismo com hierarquia visual e legibilidade */
#catechismHome.catechism-home-card{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;gap:15px!important;width:100%!important;min-height:146px!important;padding:19px 17px!important;margin:15px 0!important;text-align:left!important;background:linear-gradient(130deg,#fffaf0 0%,#f3e6cf 100%)!important;border:1px solid #dfc89d!important;border-radius:19px!important;box-shadow:0 8px 23px #4c231b12!important;color:#4b2630!important;white-space:normal!important;cursor:pointer!important}
#catechismHome .catechism-home-mark{display:grid!important;place-items:center!important;width:56px!important;height:64px!important;border-radius:14px!important;background:linear-gradient(155deg,#82263a,#4f1424)!important;color:#f8dfaa!important;font:37px Georgia,serif!important;box-shadow:0 3px 9px #39121b2b!important}
#catechismHome .catechism-home-copy{display:block!important;min-width:0!important;white-space:normal!important}
#catechismHome .catechism-home-copy small{display:block!important;font:800 9px/1.5 system-ui!important;letter-spacing:.12em!important;color:#9a713d!important}
#catechismHome .catechism-home-copy strong{display:block!important;margin:5px 0!important;font:700 clamp(18px,5vw,23px)/1.14 Georgia,serif!important;color:#601d30!important}
#catechismHome .catechism-home-copy em{display:block!important;font:normal 12px/1.5 system-ui!important;color:#705b4d!important}
#catechismHome .catechism-home-action{display:inline-flex!important;align-items:center!important;gap:8px!important;margin-top:11px!important;padding:8px 12px!important;background:#711e32!important;border-radius:9px!important;color:#fff8e9!important;font:700 11px system-ui!important}
#catechismHome .catechism-home-action b{font-size:17px}
@media(max-width:370px){#catechismHome.catechism-home-card{grid-template-columns:46px minmax(0,1fr)!important;gap:11px!important;padding:14px 12px!important}#catechismHome .catechism-home-mark{width:45px!important;height:54px!important;font-size:30px!important}}
