/* My Kingdom Keys RC5.6 — Recall Full Proof + Scripture Keys */

.recall-v56-head{padding-bottom:8px}
.recall-v56-head h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:500}
.recall-v56-road{
    display:flex;align-items:center;justify-content:center;gap:5px;
    overflow-x:auto;padding:8px 2px 12px;color:#6d7369;scrollbar-width:none
}
.recall-v56-road span{
    flex:0 0 auto;display:flex;align-items:center;gap:4px;
    font-size:.72rem;line-height:1.2;font-weight:900;letter-spacing:.03em
}
.recall-v56-road b{
    width:24px;height:24px;display:grid;place-items:center;border-radius:9px;
    background:#e6eadc;color:#40513a;font-size:.72rem
}
.recall-v56-road i{flex:0 0 auto;font-style:normal;color:#aaa399}
.recall-v56-road .key-road b{background:#efe3bf}
.recall-v56-summary{grid-template-columns:repeat(3,1fr)}
.recall-v56-summary a strong{font-size:1.25rem}
.recall-v56-queue article>div>span{font-size:.76rem!important}

/* Assisted practice */
.recall-practice-v56{padding-bottom:26px}
.recall-practice-head>a{font-size:.87rem;text-decoration:none;color:#657063}
.recall-practice-head .eyebrow{margin-top:14px}
.recall-practice-head h1{
    margin:5px 0 7px;font-family:Georgia,'Times New Roman',serif;
    font-size:2rem;line-height:1.08;color:#293128
}
.recall-practice-head p{margin:0;font-size:.98rem;line-height:1.55;color:#666d63}
.recall-practice-rule{
    margin:15px 0;padding:13px 14px;border-radius:16px;background:#40513a;color:#fff
}
.recall-practice-rule span{display:block;font-size:.75rem;letter-spacing:.07em;font-weight:950;opacity:.75}
.recall-practice-rule strong{display:block;margin-top:3px;font-size:1rem;line-height:1.35}
.recall-clue-card,.recall-blanks-card{
    margin:12px 0;border:1px solid rgba(54,64,51,.12);border-radius:19px;background:#fffaf0;overflow:hidden
}
.recall-clue-card summary{
    list-style:none;display:grid;grid-template-columns:40px 1fr 20px;gap:10px;align-items:center;
    padding:14px;cursor:pointer
}
.recall-clue-card summary::-webkit-details-marker{display:none}
.recall-clue-card summary>span,.recall-blanks-head>span{
    width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#e7eadf;color:#40513a
}
.recall-clue-card summary strong,.recall-blanks-head strong{display:block;font-size:1rem;line-height:1.25}
.recall-clue-card summary small,.recall-blanks-head small{display:block;margin-top:2px;color:#737970;font-size:.83rem!important}
.recall-clue-reveal{padding:0 14px 15px 64px}
.recall-clue-reveal>small{font-size:.74rem!important;letter-spacing:.07em;font-weight:950;color:#7a806f}
.recall-clue-reveal p{
    margin:5px 0 5px;font-family:Georgia,'Times New Roman',serif;
    font-size:1.45rem;line-height:1.35;color:#2d362b
}
.recall-clue-reveal>span{font-size:.88rem;line-height:1.45;color:#6b7168}
.recall-blanks-card{padding:14px}
.recall-blanks-head{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center}
.recall-blank-text{
    margin:16px 0;padding:15px;border-radius:15px;background:#f6f1e7;
    font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;line-height:2.05;color:#30372f
}
.recall-blank-text input{
    display:inline-block;max-width:150px;min-width:62px;height:34px;box-sizing:border-box;
    margin:0 2px;padding:3px 6px;border:0;border-bottom:2px solid #77816f;background:#fffdf8;
    border-radius:6px 6px 2px 2px;font:inherit;font-size:1rem;text-align:center
}
.recall-blank-text input.correct{border-color:#3d6d3a;background:#e4efe0}
.recall-blank-text input.incorrect{border-color:#9a4e3d;background:#f6e4df}
.recall-blank-feedback{min-height:22px;font-size:.88rem;line-height:1.4;color:#626a60}
.recall-blank-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}
.recall-blank-actions button{
    min-height:44px;border:0;border-radius:12px;background:#40513a;color:#fff;font-size:.85rem;font-weight:900
}
.recall-blank-actions button.secondary{background:#ebe5da;color:#566052}
.recall-full-proof-door{
    margin:17px 0;padding:18px;border-radius:22px;background:linear-gradient(145deg,#2f3e30,#53614c);color:#fff
}
.recall-full-proof-door>span{font-size:.76rem;letter-spacing:.08em;font-weight:950;opacity:.72}
.recall-full-proof-door h2{margin:4px 0 6px;font-family:Georgia,'Times New Roman',serif;font-size:1.5rem}
.recall-full-proof-door p{margin:0 0 13px;font-size:.93rem;line-height:1.5;opacity:.86}
.recall-full-proof-door form button{
    width:100%;min-height:51px;border:0;border-radius:14px;background:#f4ead8;color:#334031;
    font-size:.91rem;font-weight:950
}
.recall-full-proof-door>a{display:block;margin-top:11px;text-align:center;color:#fff;font-size:.84rem;opacity:.82}

/* Full proof */
.recall-proof-v56,.recall-reference-v56{
    min-height:100dvh;box-sizing:border-box;padding:max(74px,calc(env(safe-area-inset-top) + 66px)) 20px max(22px,env(safe-area-inset-bottom));
    background:#fcfaf5;color:#20261e;overflow-y:auto
}
.recall-proof-progress{
    display:flex;align-items:center;justify-content:center;gap:6px;margin:0 auto 24px;max-width:580px
}
.recall-proof-progress span{font-size:.74rem;line-height:1.2;font-weight:900;color:#8a8c85}
.recall-proof-progress span.active{color:#40513a}
.recall-proof-progress span.done{color:#4f7548}
.recall-proof-progress i{width:24px;height:1px;background:#d8d3ca}
.recall-proof-progress i.done{background:#709268}
.recall-proof-question{text-align:center;margin:8px auto 22px;max-width:620px}
.recall-proof-question h1{
    margin:8px 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,9vw,3.3rem);line-height:1.05
}
.recall-proof-question p{margin:0;font-size:1.08rem;font-weight:800}
.recall-proof-question small{display:block;margin-top:6px;color:#777b74;font-size:.84rem!important}
.recall-proof-methods{max-width:620px;margin:auto}
.recall-proof-method{text-align:center;padding:17px;border-radius:20px;background:#fff;border:1px solid #e0dbd2}
.method-icon{display:block;font-size:1.5rem;margin-bottom:5px}
.recall-proof-method>strong{display:block;font-size:1.05rem}
.recall-proof-method>small{display:block;margin:3px 0 12px;color:#72776f;font-size:.83rem!important}
.recall-proof-method .recall-mic{width:82px;height:82px}
.recall-proof-divider{display:flex;align-items:center;gap:10px;margin:10px 0;color:#8a8d86;font-size:.74rem;font-weight:900}
.recall-proof-divider::before,.recall-proof-divider::after{content:"";height:1px;background:#ded9d0;flex:1}
.recall-type-form textarea{
    width:100%;box-sizing:border-box;resize:vertical;min-height:120px;padding:12px;border:1px solid #d6d1c8;border-radius:13px;
    background:#fcfaf5;font-size:1rem;line-height:1.55;color:#242923
}
.recall-type-form button{
    width:100%;min-height:48px;margin-top:8px;border:0;border-radius:13px;background:#40513a;color:#fff;font-size:.9rem;font-weight:950
}
.recall-v56-spirit{position:static;margin:18px auto 0;max-width:620px}

/* Reference proof */
.recall-reference-question{max-width:650px;margin:15px auto;text-align:center}
.recall-reference-check{
    display:inline-flex;padding:7px 10px;border-radius:999px;background:#e4efdf;color:#42603c;font-size:.8rem;font-weight:900
}
.recall-reference-question h1{
    margin:18px 0 14px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,8vw,3rem);line-height:1.08
}
.recall-reference-question blockquote{
    margin:0 auto 16px;padding:18px;border-radius:19px;background:#fff;border:1px solid #ded9d0;
    font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.25rem,5vw,1.75rem);line-height:1.5;color:#293028
}
.recall-reference-question>p{font-size:.96rem;color:#676d64}
.recall-reference-question form{margin-top:15px}
.recall-reference-question label{text-align:left;display:block}
.recall-reference-question label>span{display:block;margin-bottom:5px;font-size:.77rem;font-weight:950;letter-spacing:.07em;color:#667061}
.recall-reference-question input{
    width:100%;box-sizing:border-box;min-height:54px;padding:11px 13px;border:1px solid #cfc9bf;border-radius:14px;
    font-size:1.08rem;background:#fff
}
.recall-reference-question form button{
    width:100%;min-height:52px;margin-top:9px;border:0;border-radius:14px;background:#40513a;color:#fff;font-size:.9rem;font-weight:950
}
.recall-reference-note{display:block;margin-top:8px;color:#787c75;font-size:.8rem!important}

/* Result */
.recall-result-v56 .key-unlock-symbol{font-size:3.3rem;margin-bottom:5px}
.recall-result-v56 h1{font-family:Georgia,'Times New Roman',serif}
.key-proof-receipt{display:grid;gap:7px;margin:18px 0}
.key-proof-receipt>div{display:flex;justify-content:space-between;gap:12px;padding:12px 13px;border-radius:13px;background:#eef0e6}
.key-proof-receipt span{font-size:.78rem;font-weight:850;color:#697064}
.key-proof-receipt strong{font-size:.82rem;color:#3e5d38}
.key-needs-strengthening{margin:15px 0;padding:13px;border-radius:15px;background:#f3e3ca;color:#665134;font-size:.9rem;line-height:1.45}

/* My Keys */
.scripture-keys-hero{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.scripture-key-count{
    min-width:78px;min-height:78px;display:grid;place-items:center;padding:9px;border-radius:22px;background:#efe4c5
}
.scripture-key-count span{font-size:1.35rem}
.scripture-key-count strong{font-family:Georgia,'Times New Roman',serif;font-size:1.8rem;line-height:1}
.scripture-key-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 18px}
.scripture-key-summary a{padding:12px;border-radius:15px;background:#fffaf0;border:1px solid rgba(55,63,50,.09);text-align:center;text-decoration:none;color:inherit}
.scripture-key-summary strong{display:block;font-size:1.25rem}
.scripture-key-summary span{font-size:.8rem;color:#70766d}
.keys-ready-strip{
    display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin:13px 0 20px;padding:15px;border-radius:18px;background:#e8eadf
}
.keys-ready-strip span{display:block;font-size:.75rem;letter-spacing:.07em;font-weight:950;color:#697264}
.keys-ready-strip strong{display:block;margin-top:2px;font-size:1rem}
.keys-ready-strip small{display:block;margin-top:2px;color:#71776e;font-size:.82rem!important}
.keys-ready-strip>a{padding:10px 11px;border-radius:11px;background:#40513a;color:#fff;text-decoration:none;font-size:.8rem;font-weight:900}
.scripture-key-grid{display:grid;gap:10px}
.scripture-key-card{padding:16px;border-radius:19px;border:1px solid rgba(55,63,50,.1);background:#fffaf0}
.scripture-key-card.state-strengthen{background:#f6eadc}
.scripture-key-card.state-due{background:#f6f0df}
.scripture-key-card.state-strong{background:#eef2e9}
.scripture-key-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.scripture-key-top span{font-size:.76rem;font-weight:900;color:#687163}
.scripture-key-top b{font-size:1.1rem}
.scripture-key-state{display:inline-flex;margin-top:9px;padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.62);font-size:.7rem;font-weight:950;letter-spacing:.04em;color:#5d6658}
.scripture-key-card h2{margin:10px 0 6px;font-family:Georgia,'Times New Roman',serif;font-size:1.3rem}
.scripture-key-card>p{margin:0 0 13px;font-size:.93rem;line-height:1.55;color:#61685f}
.scripture-key-actions{display:flex;gap:7px;flex-wrap:wrap}
.scripture-key-actions a{padding:9px 10px;border-radius:10px;background:#40513a;color:#fff;text-decoration:none;font-size:.8rem;font-weight:900}
.scripture-key-actions a+ a{background:#e9e1d4;color:#596054}
.scripture-key-footer{display:flex;justify-content:space-between;gap:10px;align-items:center}
.scripture-key-footer small{color:#737970;font-size:.78rem!important}
.scripture-key-empty>span{font-size:2.4rem}

html[data-contrast="high"] .recall-clue-card,
html[data-contrast="high"] .recall-blanks-card,
html[data-contrast="high"] .recall-proof-method,
html[data-contrast="high"] .recall-reference-question blockquote,
html[data-contrast="high"] .scripture-key-card{
    background:#fff!important;color:#111!important;border-color:#333!important
}

@media(max-width:390px){
    .recall-v56-road span{font-size:.66rem}
    .recall-blank-actions{grid-template-columns:1fr}
    .keys-ready-strip{grid-template-columns:1fr}
    .keys-ready-strip>a{text-align:center}
    .scripture-key-footer{align-items:flex-start;flex-direction:column}
}
