.suite{overflow-wrap:anywhere}.suite-actions,.suite-grid{display:grid;gap:12px;margin:20px 0}.suite-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.suite button,.suite .button,.suite summary{min-height:48px;max-width:100%;white-space:normal;line-height:1.5}.suite label{display:block;margin:18px 0}.suite textarea,.suite select,.suite input:not([type=checkbox]){display:block;width:100%;max-width:100%;font:inherit;padding:12px;border:1px solid #667b7a;border-radius:8px}.suite textarea{resize:vertical}.suite-question{font-size:1.35rem;line-height:1.6}.suite-help{background:#edf4f1;padding:16px;border-radius:12px;margin:16px 0}.suite-entry{margin-bottom:16px}.suite :focus-visible{outline:3px solid #9a4600;outline-offset:4px}.suite h1{margin-top:24px}.suite .mock-civics{padding:0}.suite input[type=checkbox]{min-width:24px;min-height:24px;vertical-align:middle;margin-right:10px}@media(prefers-reduced-motion:reduce){.suite *{scroll-behavior:auto}}

.suite-today{background:#e8f2ed;padding:20px;border-radius:16px;margin:20px 0;border:1px solid #b7ccc2}.suite-today h2{margin-top:0}.suite-kicker{color:#42615a;font-size:.95rem}.suite-voice{border:2px solid #acc9bd;border-radius:14px;padding:16px;margin:18px 0}.suite-voice button{display:block;width:100%;margin-top:10px}.suite-transcript{font-size:1.2rem;line-height:1.6;background:#eff5f2;padding:12px;border-radius:8px}.suite summary{padding:12px 0;font-weight:600;cursor:pointer}.suite a:not(.button){display:inline-flex;align-items:center;min-height:44px}.suite .suite-grid article{margin:0}.suite details{margin:16px 0}.suite textarea:focus{scroll-margin-bottom:120px}.suite-actions{position:relative}

.suite>.button,.suite>button{margin:6px 6px 6px 0}.suite-actions details{margin:0}.suite-actions details button{margin:6px}.suite [role=status]:empty{display:none}.suite-voice [role=status]{font-weight:600}

/* Resources only: preserve all shared suite and protected module styles. */
.resources-page h1{margin-bottom:12px}
.resources-page .resource-trust{border-left:3px solid #648178;background:#f1f5f3;padding:10px 14px;margin:0 0 18px;border-radius:0 8px 8px 0}
.resources-page .resource-trust h2{font-size:1rem;margin:0 0 4px}
.resources-page .resource-trust p{font-size:1rem;line-height:1.45;margin:0}
.resources-page .resource-official-heading{font-size:1.2rem;margin:16px 0 4px}
.resources-page .resource-external-note{font-size:1rem;color:#42615a;margin:0 0 10px;line-height:1.45}
.resources-page .resource-group{margin:8px 0;border:1px solid #b5c7bf;border-radius:10px;padding:0 12px}
.resources-page .resource-group>summary{padding:12px 0;min-height:48px;line-height:1.4}
.resources-page .resource-context{margin:0 0 10px;line-height:1.45}
.resources-page .resource-list{list-style:none;padding:0;margin:0}
.resources-page .resource-list li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;border-top:1px solid #cfdbd5;padding:14px 0;margin:0}
.resources-page .resource-copy{grid-column:1/-1;min-width:0}
.resources-page .resource-copy h3{font-size:1.05rem;line-height:1.4;margin:0 0 4px}
.resources-page .resource-copy p{font-size:1rem;line-height:1.45;margin:0}
.resources-page a.resource-cta{min-width:0;display:inline-flex;justify-self:start;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:10px 14px;max-width:100%;border:1px solid #285b4a;border-radius:8px;background:#edf5f1;color:#174d3c;font-weight:600;text-decoration:none;line-height:1.4;overflow-wrap:anywhere}
.resources-page a.resource-cta:hover{background:#dceee5;text-decoration:underline}
.resources-page a.resource-cta:focus-visible{outline:3px solid #9a4600;outline-offset:3px}
.resources-page .resource-authority{font-size:.9rem;align-self:center;color:#42615a}
.resources-page .resource-ixoye{border-top:2px solid #648178;margin-top:24px;padding-top:14px}
.resources-page .resource-ixoye h2{font-size:1.2rem;margin:0 0 4px}
.resources-page .resource-ixoye p{margin:0}
.resources-page .resource-ixoye .suite-grid{gap:8px;margin:12px 0}
@media(min-width:768px){.resources-page .resource-list li{grid-template-columns:minmax(0,1fr) minmax(0,230px);column-gap:20px}.resources-page .resource-copy{grid-column:1;grid-row:1/3}.resources-page a.resource-cta{justify-self:stretch}.resources-page .resource-authority{grid-column:2;justify-self:end}}

.resources-page .resource-cta span{min-width:0}
@media(max-width:360px){.resources-page .resource-list li{grid-template-columns:minmax(0,1fr)}.resources-page a.resource-cta{display:block;justify-self:stretch}.resources-page .resource-authority{justify-self:end}}

/* Preparation navigation and oral practice controls. No protected Civics selectors. */
.preparation-nav{gap:12px;margin:18px 0;grid-template-columns:repeat(2,minmax(0,1fr))}
.preparation-nav a.card{padding:16px;min-height:48px;display:block}
.preparation-nav h2{font-size:1.15rem;line-height:1.35;margin:0 0 6px}
.preparation-nav p{font-size:1rem;padding:0;margin:0 0 6px;line-height:1.4}
.preparation-nav .card>span{display:block;color:#17634f;font-size:1.2rem}
.preparation-home{max-width:900px;margin:auto}
.preparation-home-tools{display:flex;gap:16px;flex-wrap:wrap}
.preparation-home-tools a{min-height:48px}
.preparation-options article{border:1px solid #b5c7bf;border-radius:12px;padding:14px}
.preparation-options h2{font-size:1.15rem}
.suite .preparation-nav+.suite-today,.suite .suite-today{padding:14px}
.suite-question-audio,.suite-reference-audio,.suite-response-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.suite-question-audio>details{flex-basis:100%;margin:0}
.suite-question-audio>details>summary{font-size:1rem;padding:8px 0}
.suite [hidden]{display:none!important}
.suite-recording{border:1px solid #8fb1a2;border-radius:12px;background:#f1f6f3;padding:12px;margin:14px 0}
.suite-recording h2{font-size:1.15rem;margin:0 0 8px}
.suite-recording [role=status]{font-weight:600;margin:0}
.suite-recording button{max-width:100%;white-space:normal}
.suite-record-note,.suite-session-exit p{font-size:1rem;line-height:1.45;margin:10px 0 0}
.suite-inline-answer{border:1px solid #8fb1a2;border-radius:12px;padding:12px;margin:12px 0}
.suite-inline-answer label{margin:10px 0}
.suite-inline-answer p{font-size:1rem}
.suite-step{color:#285b4a;font-weight:600;padding:8px 0;border-bottom:1px solid #c5d6cc}
.suite-session-exit{border-top:1px solid #c5d6cc;margin-top:20px;padding-top:12px}
.suite-session-exit #suite-abandon{margin-top:12px}
#suite-transcription{margin:10px 0;border-top:1px solid #c5d6cc}
#suite-transcription .suite-voice{margin:8px 0;padding:12px}
@media(max-width:560px){.preparation-nav{grid-template-columns:1fr;gap:8px}.preparation-nav .card{padding:12px 14px;position:relative}.preparation-nav .card>span{position:absolute;right:12px;top:12px}.preparation-nav h2{padding-right:24px}.suite-response-actions>button{flex:1 1 160px}}

.suite-practice h1{font-size:1.6rem;margin:14px 0 10px}
.suite-practice p{margin-block:10px}
.suite-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.suite .suite-breadcrumb a{padding:8px 0;min-height:44px;display:inline-flex;align-items:center}
.suite-secondary-tools{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.suite-recording .suite-record-note{margin:6px 0 0}
.suite-recording .suite-record-note summary{font-weight:400;padding:8px 0;min-height:44px;font-size:1rem}
.suite-recording .suite-record-note p{margin:6px 0;line-height:1.45}
.suite-practice .suite-step{margin:8px 0;padding:6px 0}
.suite-practice .suite-recording{margin:10px 0}

/* Resources only: return guidance and official N-400 fee comparison. */
.resources-page .resource-cta{flex-wrap:wrap}
.resources-page .resource-cta small{flex-basis:100%;font-size:.9rem;line-height:1.4;font-weight:400}
.resource-return-guide{border-left:3px solid #648178;padding:8px 12px;margin:12px 0;background:#edf4f1}
.resource-return-guide h2{font-size:1.05rem;margin:0 0 4px}
.resource-return-guide p{font-size:1rem;line-height:1.5;margin:0}
.resource-fee-entry{border:1px solid #648178;border-radius:12px;padding:14px;margin:16px 0;background:#edf4f1}
.resource-fee-entry h2{font-size:1.2rem;margin:0 0 6px}
.resource-fee-entry p{margin:0 0 10px}
.fee-options{display:grid;gap:14px;margin:18px 0}
.fee-option{border:1px solid #8fb1a2;border-radius:12px;padding:16px;min-width:0}
.fee-option h2,.fee-general h2,.fee-filing h2{font-size:1.2rem;margin:0 0 8px}
.fee-option p,.fee-option li{line-height:1.5}
.fee-option li{margin:8px 0}
.fee-amount{font-weight:700;font-size:1.15rem}
.fee-verified{font-size:1rem;color:#42615a}
.resources-page a.fee-official-link{display:flex;width:100%;margin:10px 0;text-align:center}
.fee-filing,.fee-general{border-top:1px solid #8fb1a2;padding-top:16px;margin:18px 0}
@media(min-width:768px){.fee-options{grid-template-columns:1fr 1fr}}
.simple-study {max-width:42rem;margin-inline:auto;}
.simple-study h1 {margin-block:.5rem;font-size:1.45rem;}
.simple-study > p {margin-block:.5rem;}
.simple-study .simple-primary {display:block;width:100%;min-height:48px;margin-block:1rem .6rem;}
.simple-study .simple-tools {margin-block:.5rem;padding:.6rem;border:1px solid var(--border,#c8d8d4);border-radius:.5rem;}
.simple-study summary {min-height:44px;display:list-item;align-content:center;cursor:pointer;}
.simple-study .simple-tools button {background:transparent;color:var(--primary,#176654);border:1px solid currentColor;}
.simple-study .simple-assessment {margin-block:.6rem;padding:.7rem;border:1px solid #a9c4bc;border-radius:.5rem;}
.simple-study .simple-assessment label {display:flex;align-items:center;gap:.5rem;min-height:44px;margin:0;}
.simple-study .simple-assessment input {width:auto;}
.simple-study textarea {width:100%;max-width:100%;}
.simple-study .suite-session-exit {border:0;padding:0;}
.simple-study .simple-primary:focus-visible,.simple-study summary:focus-visible {outline:3px solid #be7200;outline-offset:3px;}
.simple-study #suite-simple-next {position:sticky;bottom:max(.5rem,env(safe-area-inset-bottom));z-index:2;box-shadow:0 2px 8px #0002;}

.preparation-all{margin-block:1rem}.preparation-all summary{min-height:48px;align-content:center;cursor:pointer}.preparation-all a{display:block;min-height:48px;padding:.6rem}.simple-mock .simple-primary{display:block;width:100%;min-height:48px}.simple-mock .simple-tools{margin-block:1rem}.simple-study .simple-record-note{font-size:1rem;color:#42615a}.simple-study .simple-assessment input[type=radio]{width:auto;display:inline-block;padding:0;}
.suite .preparation-nav{gap:.6rem;margin-block:1rem}
.suite .preparation-nav .card{padding:.8rem}
.suite .preparation-nav .card h2{font-size:1.1rem;margin:0}
.suite .preparation-nav .card p{display:none}

/* V6 presentation adapters: no protected Civics styles or engines changed. */
.simple-study{display:flex;flex-direction:column;min-height:calc(100dvh - 210px)}
.consistent-action{position:sticky;bottom:0;z-index:3;background:#fff;padding:.4rem 0 max(.5rem,env(safe-area-inset-bottom));margin-top:auto;display:flex;flex-direction:column;gap:.4rem}
.consistent-action .simple-primary,.consistent-action .consistent-primary{display:block;width:100%;min-height:48px;margin:0;box-shadow:none}
.simple-study #suite-simple-next{position:static;margin:0;box-shadow:none}
.simple-study .simple-tools{margin-block:.25rem;padding:.25rem .6rem}
.simple-study .consistent-action [role=status]{padding:.75rem;margin:0;min-height:48px;text-align:center}
.preparation-options .preparation-destination{position:relative;display:block;padding:1rem 2.5rem 1rem 1rem;border:1px solid #8fb1a2;border-radius:12px;color:#173f35;text-decoration:none;min-width:0;background:#fff}
.preparation-destination h2{font-size:1.2rem;margin:0 0 .35rem}.preparation-destination p{margin:0}.preparation-destination>span{position:absolute;right:1rem;top:1rem}
.preparation-destination:hover{background:#edf4f1}.preparation-destination:focus-visible,.consistent-learn :focus-visible{outline:3px solid #be7200;outline-offset:3px}
.consistent-learn .learn-question{display:flex;flex-direction:column;min-height:calc(100dvh - 260px)}
.consistent-learn .consistent-tools{border:1px solid #c8d8d4;border-radius:.5rem;padding:.25rem .6rem;margin:.25rem 0}
.consistent-learn .consistent-tools summary{min-height:44px;align-content:center;cursor:pointer}
.consistent-learn .consistent-tools button,.consistent-learn .consistent-tools a{display:block;min-height:44px;margin:.4rem 0}
.consistent-learn .learn-navigation{display:block;margin:0;padding:0}.consistent-learn .learn-navigation a{display:block;width:100%;text-align:center}
.consistent-learn .consistent-primary{background:#176654;color:white;border:1px solid #176654}
.consistent-learn .learn-question-meta{margin-block:.5rem}.consistent-learn .learn-question h1{font-size:1.4rem}.consistent-learn .learn-answers h2{font-size:1.15rem}
@media(max-height:520px){.consistent-action{padding-block:.25rem}.simple-study{min-height:calc(100dvh - 140px)}}
/* A single reserved bottom action area prevents control drift and overlap. */
.simple-study,.consistent-learn{padding-bottom:125px}
.simple-study .consistent-action,.consistent-learn .consistent-action{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:calc(100% - 32px);max-width:42rem;padding:.5rem .5rem max(.5rem,env(safe-area-inset-bottom));border-top:1px solid #c8d8d4;box-shadow:0 -3px 12px #0001;border-radius:.5rem .5rem 0 0}
.consistent-learn .learn-question,.simple-study{min-height:0}
.consistent-learn .learn-question{padding-bottom:1rem}
.simple-study .consistent-action{min-height:66px}
.consistent-learn .learn-answers{margin-block:.6rem}
.simple-exit{align-self:flex-start}
.simple-mock{padding-bottom:90px}.simple-mock .consistent-action{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:calc(100% - 32px);max-width:42rem;padding:.5rem .5rem max(.5rem,env(safe-area-inset-bottom));border-top:1px solid #c8d8d4}
.consistent-learn button,.consistent-learn a{scroll-margin-bottom:140px}.simple-study button,.simple-study a,.simple-study input,.simple-study textarea{scroll-margin-bottom:95px}
.suite .preparation-options .preparation-destination{display:block;overflow-wrap:anywhere}
.consistent-learn .learn-question>p{margin-block:.4rem}.consistent-learn .learn-question h1{margin-block:.6rem}.consistent-learn .learn-answers h2{margin-block:.5rem}.consistent-learn .learn-answers ul{margin-block:.4rem}
