:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f0f5fc;background:#0b1423;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 60% -10%,#203955 0%,#0b1423 55%);-webkit-tap-highlight-color:transparent}.app{max-width:650px;margin:auto;min-height:100vh;padding:0 19px 110px}.top{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.logo{width:39px;height:39px;background:#84e1bf;color:#0a2830;display:grid;place-items:center;border-radius:13px;font-weight:900;font-size:23px}.brand strong{font-size:23px;letter-spacing:-1px;display:block;line-height:1.05}.brand small{color:#91a4bb;font-size:11px}.top-pill,.tag{color:#a7c7dc;border:1px solid #30435b;border-radius:30px;padding:6px 10px;font-size:11px}.page{display:none;animation:appear .2s ease}.page.active{display:block}@keyframes appear{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.hero{padding:25px 0 15px}.eyebrow{color:#83dbb9;font-size:11px;font-weight:800;letter-spacing:2px}.hero h1,.section-head h1{font-size:clamp(31px,8vw,44px);line-height:1.1;letter-spacing:-1.5px;margin:12px 0}.hero p,.section-head p{color:#9aacc0;line-height:1.6;max-width:370px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.stat,.panel{background:#152338;border:1px solid #293c55;border-radius:19px}.stat{padding:16px 8px;text-align:center}.stat span{font-size:27px;font-weight:800;display:block;color:#e7f9f1}.stat small{font-size:11px;color:#9db0c5}.panel{padding:21px;margin:15px 0}.panel h2{font-size:18px;letter-spacing:-.3px;margin:0 0 12px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-heading h2{margin:0}.muted,.footnote{color:#9db0c5;font-size:14px;line-height:1.6}.footnote{font-size:12px;margin-bottom:0}.primary,.secondary,.ghost,.file-label{appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;min-height:47px;width:100%;padding:12px 14px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .1s;border:1px solid transparent}.primary:active,.secondary:active,.ghost:active{transform:scale(.98)}.primary{background:#85e3bd;color:#0d2c29}.primary.big{margin-top:18px;justify-content:space-between;padding:16px 18px}.secondary,.file-label{background:#223750;color:#edf6ff;border-color:#37516e}.ghost{background:transparent;color:#a9bbcd;border-color:#31465d}.steps{display:grid;gap:15px}.steps>div{display:flex;align-items:center;gap:12px;color:#bdccdb;font-size:14px}.steps b{width:28px;height:28px;border-radius:9px;background:#294b4d;color:#9ef4c6;display:grid;place-items:center}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#111d2eeF;backdrop-filter:blur(15px);border-top:1px solid #293a50;padding:8px 6px calc(8px + env(safe-area-inset-bottom))}.nav{color:#8096ac;background:transparent;border:0;display:flex;align-items:center;flex-direction:column;gap:3px;min-width:70px;max-width:130px;flex:1;cursor:pointer}.nav span{font-size:24px;line-height:26px}.nav small{font-size:11px}.nav.active{color:#88e8c0}.section-head{padding:23px 0 10px}.section-head h1{margin:8px 0}.section-head p{margin:0 0 14px}.learn-head{display:flex;align-items:center;justify-content:space-between;padding:17px 0;color:#a8bacd;font-size:13px}.text-btn{border:0;background:none;color:#a8bacd;font-size:14px;cursor:pointer;padding:8px 0}.progress{height:6px;background:#25374b;border-radius:8px;overflow:hidden}.progress>div{height:100%;width:0;background:#82e0b9;transition:width .2s}.flashcard{min-height:218px;margin:24px 0 19px;background:linear-gradient(155deg,#1c354a,#17243a);border:1px solid #36516a;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.flashcard .direction{font-size:11px;letter-spacing:1.7px;color:#89ddbd;font-weight:700}.flashcard h2{font-size:clamp(27px,7vw,40px);line-height:1.15;letter-spacing:-.7px;margin:24px 0 8px;overflow-wrap:anywhere}.flashcard .category{font-size:12px;color:#94a9c1}.prompt{color:#b7c8d8;text-align:center;font-size:14px;line-height:1.6;margin:10px 0 20px}.actions{display:grid;gap:11px}.answer-box{padding:20px;border:1px solid #385a62;background:#193438;border-radius:17px;margin:0 0 18px}.answer-box .label{color:#9ee9c5;font-size:11px;letter-spacing:1.2px}.answer-box strong{font-size:23px;display:block;margin:9px 0}.answer-box em{font-size:14px;color:#bed4ce;line-height:1.6}.mc-option{display:flex;align-items:center;gap:12px;text-align:left;background:#1a2b41;border:1px solid #3b4f68;border-radius:12px;color:#f1f6fc;padding:14px;min-height:57px;font-size:15px;width:100%;cursor:pointer}.mc-option:disabled{opacity:.65}.mc-option.correct{border-color:#78dfb3;background:#1b443e;opacity:1}.mc-option.incorrect{border-color:#e99697;background:#4b303c;opacity:1}.mc-letter{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:#31465c;flex-shrink:0;font-size:12px}.result{display:flex;gap:12px;align-items:center;padding:15px 17px;background:#1a3042;border:1px solid #335168;border-radius:13px;margin-bottom:15px}.result b{display:block}.result small{color:#9db3c6}.done-icon{font-size:26px}.empty{text-align:center;padding:65px 5px}.empty .big-emoji{font-size:55px}.empty h2{font-size:25px}.empty p{color:#9db0c5;line-height:1.6}input[type=search]{width:100%;background:#18283d;color:white;border:1px solid #36506c;border-radius:12px;padding:14px;font-size:16px;outline:none}.word-list{display:grid;gap:9px;margin-top:16px}.word-row{background:#152338;border:1px solid #2a4058;border-radius:13px;padding:13px 15px}.word-row b{display:block;font-size:15px}.word-row span{display:block;color:#aebed0;font-size:13px;margin:5px 0}.word-row small{color:#7fd7b1;font-size:11px}.setting-row{display:flex;align-items:center;gap:15px}.setting-row input{flex:1;accent-color:#87e3bd}.setting-row strong{font-size:24px}.file-label{margin-top:11px;cursor:pointer}.notice{font-size:13px;color:#9de6c2;margin-top:10px;line-height:1.5}.notice.error{color:#ffb0b0}code{font-size:12px;overflow-wrap:anywhere}button:focus-visible,.file-label:focus-visible{outline:3px solid #84e1bf;outline-offset:2px}button:disabled{cursor:default;opacity:.5}@media(min-width:650px){.app{padding-left:30px;padding-right:30px}.bottom-nav{max-width:650px;margin:auto;border-left:1px solid #293a50;border-right:1px solid #293a50}}

.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.mode{background:#1b2d43;color:#d3e0ee;border:1px solid #36516a;border-radius:14px;padding:15px 9px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px}.mode strong{font-size:17px}.mode small{font-size:12px;color:#a3b6cb}.mode.selected{background:#20443e;border-color:#85e3bd;color:#a6f5d3}.mode.selected small{color:#a8e6ce}.filter-label{display:block;color:#b9c9d8;font-size:13px;font-weight:700;margin-bottom:8px}#categorySelect{display:block;width:100%;min-height:46px;background:#1b2d43;color:#f0f5fc;border:1px solid #3a526c;border-radius:12px;padding:10px 13px;font-size:16px;margin-bottom:18px}#categorySelect:focus-visible,.mode:focus-visible{outline:3px solid #84e1bf;outline-offset:2px}

/* V4: motivation and unlocking */
.milestones{padding:20px 21px}.milestone-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.milestone-top h2{margin:7px 0 0}.percent{font-size:28px;font-weight:850;color:#85e3bd;white-space:nowrap}.milestones .muted{margin:13px 0 10px}.unlock-track{height:10px;border-radius:10px;background:#2b4055;overflow:hidden}.unlock-track>div{height:100%;width:0;background:linear-gradient(90deg,#5abf9c,#a1f3cc);transition:width .3s}.streak{display:flex;align-items:center;gap:13px;margin-top:18px;padding:13px;border-radius:13px;background:#1e3147}.flame{font-size:30px}.streak strong,.streak small{display:block}.streak strong{font-size:16px}.streak small{font-size:12px;color:#a7bacd;margin-top:4px;line-height:1.4}

#deckSelect,#packageSelect{display:block;width:100%;min-height:46px;background:#1b2d43;color:#f0f5fc;border:1px solid #3a526c;border-radius:12px;padding:10px 13px;font-size:15px;margin-bottom:18px}.deck-progress{padding:11px 0;border-bottom:1px solid #30435b}.deck-progress:last-child{border:0}.deck-progress b,.deck-progress small{display:block}.deck-progress b{font-size:13px}.deck-progress small{font-size:12px;color:#a7b9c9;margin:5px 0}.mini-track{height:5px;background:#30435b;border-radius:8px;overflow:hidden}.mini-track span{display:block;height:100%;background:#85e3bd}

/* 0.5a.2 · deck tiles and end-of-round report */
.deck-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:9px 0 20px}.deck-tile{min-height:130px;display:flex;flex-direction:column;gap:9px;align-items:stretch;text-align:left;padding:14px;background:#1b2d43;border:1px solid #39516b;color:#edf7ff;border-radius:15px;cursor:pointer}.deck-tile.is-selected{border:2px solid #85e3bd;background:#1c3a41;padding:13px}.deck-tile-head{display:flex;justify-content:space-between;align-items:center}.deck-chip{font-size:11px;background:#2b5260;color:#a8efcf;padding:5px 9px;border-radius:8px;font-weight:700}.deck-check{color:#85e3bd;font-weight:900}.deck-tile strong{font-size:14px;line-height:1.3}.deck-tile small{color:#b4c4d4;font-size:11px;line-height:1.4}.deck-tile .mini-track{margin-top:auto}.all-tile{justify-content:center}.session-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:23px 0}.session-stats>div{padding:14px 5px;border-radius:13px;background:#182b40;border:1px solid #34516a}.session-stats strong{font-size:24px;color:#91e7c0;display:block}.session-stats small{font-size:11px;color:#b2c6d7;display:block;margin-top:5px}.finish{padding:24px 0}.finish .primary,.finish .secondary{margin-top:11px}.done-note{border:1px solid #42675f;border-radius:12px;background:#1a3537;padding:14px;color:#b6ebd2;font-size:14px;line-height:1.5;margin:20px 0 10px}@media(max-width:360px){.deck-tile{padding:10px}.deck-tile.is-selected{padding:9px}.session-stats strong{font-size:20px}}

/* 0.5a.3: safe area and warm, minimal decorative details */
html{background:#0b1423}body{padding-top:env(safe-area-inset-top,0px)}
.app{padding-left:max(19px,env(safe-area-inset-left,0px));padding-right:max(19px,env(safe-area-inset-right,0px))}
.notch-garden{display:flex;align-items:center;justify-content:space-between;position:relative;min-height:22px;padding:4px 12px 0;color:#e9d28b;pointer-events:none}
.notch-garden span{display:block;font-size:18px;line-height:1}.notch-garden i{font-style:normal;font-size:10px;color:#8ce2bd;margin-left:6px}.garden-center{width:70px;height:1px;opacity:0}
.garden-sun{color:#e8c779}.top{height:69px}.home-streak{display:flex;align-items:center;gap:12px;border:1px solid #30455a;background:#14283a;padding:12px 15px;border-radius:15px;margin:4px 0 17px}.home-streak>span{font-size:25px}.home-streak strong,.home-streak small{display:block}.home-streak small{font-size:12px;color:#a8bace;margin-top:4px}
#categoryWrap[hidden],#extraBlockBtn[hidden]{display:none!important}
.words-stats{margin-top:12px}.words-tools{margin:18px 0}.word-filters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.word-filters select{min-width:0;width:100%;background:#1b2d43;color:#f0f5fc;border:1px solid #3a526c;border-radius:11px;padding:11px 9px;font-size:13px}
.word-group{border:1px solid #2f455e;background:#152338;border-radius:16px;overflow:hidden}.word-group summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px;cursor:pointer;font-weight:700}.word-group summary::-webkit-details-marker{display:none}.group-count{font-size:12px;font-weight:500;color:#9fb3c6;white-space:nowrap}.group-words{padding:0 10px 10px;display:grid;gap:8px}.word-row{background:#1b2c42}.empty-words{text-align:center;border:1px dashed #37516b;border-radius:18px;padding:25px 15px;color:#b5c7d9}.empty-words>div{font-size:40px}.empty-words h2{color:#e6f4ee;font-size:18px}.empty-words p{line-height:1.6;font-size:14px}
.mastery-chart{display:grid;gap:13px;margin-top:10px}.mastery-item>div:first-child{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px;color:#c5d7e3}.mastery-track{height:9px;border-radius:10px;background:#2b4055;overflow:hidden}.mastery-track span{display:block;height:100%;border-radius:10px;min-width:0}.level-new{background:#91a7b5}.level-early{background:#74a6b5}.level-middle{background:#5b9c9e}.level-solid{background:#4ab08c}.level-mastered{background:#8be8ba}
@media(max-width:390px){.panel{padding:16px}.stat span{font-size:23px}.word-filters{grid-template-columns:1fr}.top-pill{font-size:10px}.brand strong{font-size:21px}}
@media(min-width:650px){.app{padding-left:30px;padding-right:30px}.notch-garden{max-width:280px;margin:auto}}
/* Keep the playful accents in the safe-area band, away from the camera cutout. */
body{padding-top:max(25px,env(safe-area-inset-top,0px))}
.notch-garden{position:absolute;top:0;left:max(14px,env(safe-area-inset-left,0px));right:max(14px,env(safe-area-inset-right,0px));height:max(24px,env(safe-area-inset-top,0px));padding:0 8px;align-items:center;z-index:1}
.notch-garden .garden-star,.notch-garden .garden-sun{max-width:30%;white-space:nowrap}
@media(min-width:650px){.notch-garden{left:calc(50% - 140px);right:calc(50% - 140px)}}

/* 0.5a.4: right side remains clear for iOS status indicators */
.garden-empty{display:block;min-width:24px;height:1px}

/* Mini-dialogues v0.5b.1 */
.dialogue-entry{padding:15px;margin:12px 0;border:1px solid rgba(130,155,190,.23);border-radius:16px;background:rgba(110,140,190,.07)}
.dialogue-entry h3{margin:0 0 6px}.dialogue-entry p{margin:5px 0 10px}.dialogue-entry button{margin-top:7px}
.dialogue-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.dialogue-top button{width:auto}
.chat-line{display:flex;flex-direction:column;align-items:flex-start;margin:13px 0;max-width:90%}.chat-line.mine{margin-left:auto;align-items:flex-end}.chat-name{font-size:.76rem;opacity:.7;margin:0 8px 4px}.chat-bubble{padding:13px 15px;border-radius:16px;background:rgba(140,165,210,.13);line-height:1.5}.chat-line.mine .chat-bubble{background:rgba(70,177,137,.16)}
.chat-help{background:none;border:none;color:inherit;opacity:.75;font-size:.8rem;padding:5px 8px;min-height:30px;width:auto}.chat-translation{font-size:.86rem;opacity:.8;padding:5px 8px}.dialogue-task{margin-top:20px;padding:17px;border:1px solid rgba(140,165,210,.2);border-radius:17px}.dialogue-task h3{margin:0 0 12px;font-size:1.03rem}.dialogue-choice{display:block;width:100%;text-align:left;padding:12px 14px;margin:9px 0;border-radius:12px;border:1px solid rgba(140,165,210,.24);background:rgba(140,165,210,.08);color:inherit}.dialogue-choice.selected{border-color:#5ecba7;background:rgba(70,177,137,.18)}.dialogue-answer{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.dialogue-answer input{flex:1;min-width:125px}.dialogue-feedback{margin-top:12px;padding:12px;border-radius:12px;background:rgba(70,177,137,.11)}.dialogue-feedback.wrong{background:rgba(224,139,104,.12)}.dialogue-tip{padding:13px 15px;margin-top:12px;border-left:3px solid #5ecba7;border-radius:8px;background:rgba(70,177,137,.08);line-height:1.55}.dialogue-muted{opacity:.75;font-size:.88rem}.dialogue-action{margin-top:12px}.dialogue-done{text-align:center;padding:25px 15px}.dialogue-done .big-emoji{font-size:2.4rem}
/* 0.5b.1r – reading-first dialogues; app-native controls, no text inputs */
.reading-scene{margin:19px 0 27px;padding:14px 12px;border-radius:18px;background:rgba(125,151,185,.055)}
.reading-section-heading{border-top:1px solid rgba(140,165,210,.18);padding-top:19px;margin-bottom:18px}
.reading-section-heading h3,.reading-insights h3{margin:0 0 5px;font-size:1.08rem}
.reading-question{margin:15px 0 22px;padding:16px;border:1px solid rgba(140,165,210,.2);border-radius:17px;background:rgba(140,165,210,.035)}
.reading-question-number{font-size:.7rem;letter-spacing:.1em;opacity:.7;font-weight:750;margin-bottom:7px}
.reading-question h3{font-size:1.02rem;line-height:1.45;margin:0 0 14px}
.reading-options{display:grid;gap:9px}.reading-options .dialogue-choice{display:flex;align-items:center;gap:12px;margin:0;min-height:52px;line-height:1.4;cursor:pointer}
.reading-choice-marker{width:27px;height:27px;flex:0 0 27px;border:1px solid rgba(140,165,210,.35);border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.79rem}
.dialogue-choice.correct{border-color:#5ecba7;background:rgba(70,177,137,.13)}.dialogue-choice.incorrect{border-color:rgba(224,139,104,.65);background:rgba(224,139,104,.1)}
.reading-check{margin-top:13px;width:100%}.reading-check:disabled{opacity:.45;cursor:default}
.reading-insights{margin:25px 0 12px}.reading-insight{border:1px solid rgba(140,165,210,.2);border-radius:13px;margin-top:9px;overflow:hidden}
.reading-insight-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;background:rgba(140,165,210,.06);color:inherit;border:0;padding:13px 15px;text-align:left;font-weight:650}
.reading-insight p{margin:0;padding:13px 15px;line-height:1.6;font-size:.91rem}
.reading-complete{border-radius:16px;background:rgba(70,177,137,.09);padding:18px;margin-top:22px}.reading-complete h3{margin:0 0 8px}.reading-complete .primary{margin-top:8px}
@media(max-width:420px){.reading-question{padding:13px}.reading-scene{padding:10px 6px}.reading-options .dialogue-choice{padding:12px 10px}}

/* Inline voluntary grammar discovery, accessible and theme-consistent */
.dialogue-inline-tip{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;width:19px;height:19px;border:1px solid currentColor;border-radius:50%;font-size:12px;font-weight:800;margin-left:4px;padding:0;background:transparent;color:var(--accent,#2c9b7a);cursor:pointer}
.dialogue-inline-tip:focus-visible{outline:3px solid currentColor;outline-offset:2px}

/* Developer preview – uses Palabra surface colours */
.dev-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.dev-switch{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700;padding:10px 12px;border:1px solid var(--line, #ddd);border-radius:12px}
.dev-switch input{width:19px;height:19px;accent-color:var(--accent, #389d81)}
.dev-preview-list{max-height:390px;overflow-y:auto;border:1px solid var(--line, #ddd);border-radius:14px;margin-top:10px}
.dev-word{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line, #ddd)}
.dev-word:last-child{border-bottom:0}
.dev-word-num{font-size:12px;min-width:22px;opacity:.6;padding-top:3px}
.dev-word div{display:flex;flex-direction:column;gap:3px}
.dev-word span:last-child{font-size:13px;opacity:.75}
#devPackageSelect{width:100%;max-width:100%;padding:12px;border-radius:12px;background:var(--surface, #f8f9f9);color:inherit;border:1px solid var(--line, #ddd)}

/* 0.5b.5 – scalable 50-dialogue directory */
.dialogue-deck-group,.dialogue-topic-group{border:1px solid rgba(130,155,190,.25);border-radius:15px;overflow:hidden;margin:12px 0;background:rgba(110,140,190,.045)}
.dialogue-deck-group>summary,.dialogue-topic-group>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;padding:16px 15px;list-style:none;min-height:62px}
.dialogue-deck-group>summary::-webkit-details-marker,.dialogue-topic-group>summary::-webkit-details-marker{display:none}
.dialogue-deck-group>summary::before,.dialogue-topic-group>summary::before{content:'›';font-size:1.25rem;flex:0 0 14px;transform-origin:center;transition:transform .14s ease;color:var(--accent,#38b990)}
.dialogue-deck-group[open]>summary::before,.dialogue-topic-group[open]>summary::before{transform:rotate(90deg)}
.dialogue-deck-group[open]>summary{border-bottom:1px solid rgba(130,155,190,.2)}
.dialogue-deck-body{padding:8px 12px 13px}.dialogue-topic-group{margin:8px 0;background:rgba(110,140,190,.045)}
.dialogue-topic-group>summary{min-height:53px;padding:11px 13px}.dialogue-topic-group[open]>summary{border-bottom:1px solid rgba(130,155,190,.18)}
.dialogue-topic-body{padding:5px 12px 10px}.dialogue-topic-body .dialogue-entry{margin:9px 0;padding:13px}
.dialogue-group-heading,.dialogue-topic-name{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.dialogue-group-kicker{font-size:.68rem;letter-spacing:.1em;font-weight:800;opacity:.65}
.dialogue-group-heading strong,.dialogue-topic-name{font-size:.96rem}
.dialogue-topic-name small{opacity:.65;font-weight:400;font-size:.75rem}
.dialogue-count,.dialogue-topic-status,.dialogue-entry-status{font-size:.73rem;white-space:nowrap;opacity:.79}
.dialogue-entry-head{display:flex;align-items:center;justify-content:space-between;gap:9px}
.dialogue-entry-head strong{font-size:.92rem}.dialogue-entry .primary,.dialogue-entry .secondary{margin-top:6px}
@media(max-width:420px){.dialogue-deck-body{padding:7px}.dialogue-topic-body{padding:5px}.dialogue-topic-status{font-size:.66rem}}

/* 0.5c.0 – personal collections. No copied words or separate grades. */
[hidden]{display:none!important}
.words-subtabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;background:#152338;border:1px solid #2b4058;border-radius:15px;padding:5px;margin:12px 0 19px}
.words-subtabs button{border:0;background:transparent;color:#9fb6c9;padding:12px 7px;border-radius:11px;font-size:14px;font-weight:700;cursor:pointer}
.words-subtabs button.selected{background:#25493e;color:#a4f3cd;box-shadow:0 2px 8px rgba(0,0,0,.14)}
.word-row-top{display:flex;justify-content:space-between;align-items:center;gap:9px}
.word-row-top b{margin:0}.word-add-button,.collection-icon-action{border:1px solid #3d605a;color:#a4ebc9;background:#1c3a3a;display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;cursor:pointer;font-size:21px}
.collections-intro{padding:7px 0 14px}.collections-intro strong{font-size:18px}.collections-intro p{margin:8px 0 15px}.collection-create{max-width:100%}
.collection-list{display:grid;gap:10px}.collection-tile{display:flex;gap:13px;align-items:center;text-align:left;border:1px solid #33516a;color:#f0f5fc;background:#17283d;border-radius:16px;padding:15px;width:100%;cursor:pointer}
.collection-tile-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#285046;color:#98edc7;font-size:23px}
.collection-tile-info{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.collection-tile-info strong{font-size:16px;overflow-wrap:anywhere}.collection-tile-info small{color:#9bafc3;font-size:12px}.collection-tile-arrow{font-size:25px;color:#9bafc3}
.collection-empty{border:1px dashed #415e73;border-radius:18px;padding:26px 20px;text-align:center;background:rgba(60,105,130,.05)}.collection-empty>div{font-size:43px}.collection-empty h3{font-size:17px;margin:9px 0}.collection-empty p{color:#9bafc3;font-size:14px;line-height:1.55}
.collection-back{margin:8px 0 7px;color:#9ee4c3}.collection-detail{margin-top:5px}
.collection-detail-heading{display:flex;justify-content:space-between;align-items:start;gap:10px}.collection-detail-heading h2{font-size:25px;margin:7px 0}.collection-detail-heading p{margin:0 0 10px;font-size:12px}
.collection-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.collection-review-actions button{font-size:12px;line-height:1.3;padding:10px 7px}
.collection-word-list{display:grid;gap:8px;margin-top:23px}.collection-word-row{background:#1c2e42;border:1px solid #324d63;padding:12px 13px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.collection-word-row div{min-width:0;display:flex;flex-direction:column;gap:5px}.collection-word-row strong{font-size:15px;overflow-wrap:anywhere}.collection-word-row span{color:#a4b9cc;font-size:13px}.collection-word-row .collection-icon-action{color:#d5abb1;border-color:#5d4756;background:#3a2a3c}
.collection-add-section{border-top:1px solid #36516a;margin-top:25px;padding-top:18px}.collection-add-section h3{margin:0 0 5px;font-size:17px}.collection-add-section p{margin:0 0 14px}.collection-search-results{max-height:310px;overflow-y:auto;margin-top:10px;border:1px solid #2f455e;border-radius:13px}
.collection-search-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;color:#f1f6fc;background:#1b2c42;border:0;border-bottom:1px solid #2d4055;padding:11px 13px;cursor:pointer}
.collection-search-row:last-child{border-bottom:0}.collection-search-row span{display:flex;flex-direction:column;gap:5px}.collection-search-row strong{font-size:14px}.collection-search-row small{font-size:12px;color:#a7bed0}.collection-search-row b{font-size:23px;color:#8ce7c0}
.collection-search-results>.muted{padding:12px}.collection-delete{margin-top:24px;color:#ebadb4;border-color:#604852}
.collection-picker-overlay{position:fixed;z-index:50;inset:0;background:rgba(3,9,18,.76);display:flex;align-items:center;justify-content:center;padding:20px}
.collection-picker-dialog{background:#16283b;color:#eef6ff;width:100%;max-width:480px;border:1px solid #456277;border-radius:21px;padding:21px;box-shadow:0 15px 70px rgba(0,0,0,.45);max-height:85vh;overflow:auto}
.picker-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.picker-heading h2{margin:6px 0 0}.picker-heading p{margin:3px 0 10px}.picker-list{display:grid;gap:8px;margin:8px 0 18px}
.picker-choice{border:1px solid #38566c;border-radius:11px;background:#20364a;color:#eaf5fb;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:7px;padding:12px;width:100%;cursor:pointer}
.picker-choice strong{font-size:12px;white-space:nowrap;color:#9fdfc3}.picker-choice.in-collection{border-color:#5dbaa0;background:#21473f}
@media(max-width:420px){.collection-review-actions{grid-template-columns:1fr}.words-subtabs button{font-size:12px}.collection-detail{padding:16px}}

/* Palabra Stories 0.6a.1 – quiet reading surface and independent story data */
.bottom-nav .nav{min-width:0;padding:0 1px}.bottom-nav .nav small{font-size:10px}
@media(max-width:360px){.bottom-nav .nav span{font-size:21px}.bottom-nav .nav small{font-size:9px}}
.story-home-promo .secondary{margin-top:9px}
.stories-shelf-intro{display:flex;align-items:flex-start;gap:14px;padding:14px 4px 18px;color:#d6e8f0}
.stories-shelf-intro .stories-mini-icon{display:grid;place-items:center;border:1px solid #3c5c63;color:#95e4bc;width:42px;height:42px;border-radius:13px;font-size:24px;flex:0 0 42px}
.stories-shelf-intro strong{font-size:15px}.stories-shelf-intro p{color:#9db5c5;line-height:1.55;font-size:13px;margin:5px 0}
.story-shelf-card{display:flex;gap:15px;align-items:stretch;border:1px solid #345269;background:#17283a;padding:15px;border-radius:20px;margin:7px 0 17px}
.story-cover{flex:0 0 95px;min-height:181px;border-radius:12px;padding:14px 10px;background:linear-gradient(150deg,#4a705b,#254a4d 54%,#142d43);border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;justify-content:center;gap:13px;text-align:center;color:#eaf4e7;box-shadow:2px 4px 12px #07111e66;font-family:Georgia,serif;letter-spacing:1px}
.story-cover-ornament{font-size:30px}.story-cover-small{font-family:system-ui;font-size:10px;color:#afd8be}
.story-shelf-content{min-width:0;flex:1}.story-kicker{color:#8fd9b7;font-size:10px;letter-spacing:.09em;font-weight:750}.story-shelf-content h2{font-family:Georgia,serif;font-size:21px;margin:6px 0 7px;font-weight:500}.story-shelf-content p{color:#a9bbcb;line-height:1.5;font-size:12px;margin:0 0 13px}.story-progress-note{font-size:11px;color:#bad5d7}.story-progress-track{height:4px;background:#304253;border-radius:9px;margin:7px 0 14px}.story-progress-track span{display:block;height:100%;background:#8fe5bf;border-radius:9px}.story-shelf-content .story-open{min-height:38px;padding:9px 10px;font-size:12px}
.story-library-footnote{font-size:12px;color:#92a8b8;line-height:1.6}
.story-reader-top{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:5px 0 17px}.story-reader-indicator{font-size:12px;color:#92afbf}
.story-reader-heading h2{font-size:clamp(27px,7vw,36px);font-family:Georgia,serif;font-weight:500;line-height:1.2;letter-spacing:-.02em;margin:10px 0}.story-reader-heading>p{font-size:13px;color:#a3b7c6;line-height:1.5;margin-bottom:20px}
.story-chapter-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 18px}
.story-chapter-tab{border:1px solid #365168;border-radius:13px;background:#17283a;color:#9db4c8;padding:12px 5px;cursor:pointer;display:flex;flex-direction:column;gap:5px;align-items:center}
.story-chapter-tab span{font-size:19px;font-family:Georgia,serif}.story-chapter-tab small{font-size:10px}.story-chapter-tab.selected{background:#203f3c;border-color:#7fdcba;color:#d3f4e2}
.story-reading-paper{background:#f4eee2;border:1px solid #e8dfcd;color:#283c3c;border-radius:19px;padding:21px 19px 18px;box-shadow:0 10px 30px #06101d25}
.story-reading-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #dbd5c9;padding-bottom:14px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#71817b}
.story-mode-toggle{display:flex;align-items:center;gap:7px;letter-spacing:0;font-size:11px;font-weight:650;color:#465b54;cursor:pointer}.story-mode-toggle input{accent-color:#347c63;width:17px;height:17px}
.story-prose{margin:23px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:2.03;letter-spacing:.005em;hyphens:none;overflow-wrap:break-word}
.story-sentence{margin:0 0 13px}
.story-token{all:unset;display:inline;cursor:pointer;font:inherit;color:inherit;border-radius:3px;padding:1px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background .13s ease}
.story-token:hover{background:rgba(41,121,104,.10)}.story-token:focus-visible{outline:2px solid #398e77;outline-offset:3px}.story-token.story-linked,.story-token.story-grammar-mark{font-weight:inherit}
.story-token.story-linked[data-role="recipient"],.story-token.story-grammar-mark[data-role="recipient"]{background:rgba(224,156,59,.34);box-shadow:0 2px 0 rgba(155,90,25,.65)}
.story-token.story-linked[data-role="object"],.story-token.story-grammar-mark[data-role="object"]{background:rgba(66,180,134,.32);box-shadow:0 2px 0 rgba(31,121,91,.63)}
.story-token.story-linked[data-role="verb"],.story-token.story-grammar-mark[data-role="verb"]{background:rgba(96,156,224,.28);box-shadow:0 2px 0 rgba(49,101,171,.57)}
.story-token.story-linked[data-role="reflexive"],.story-token.story-grammar-mark[data-role="reflexive"]{background:rgba(173,132,215,.32);box-shadow:0 2px 0 rgba(115,73,163,.57)}
.story-token.story-selected{outline:1.5px dotted #4f7068;outline-offset:2px}
.story-translate-tiny{all:unset;display:inline-block;font-family:system-ui;font-size:11px;cursor:pointer;opacity:.49;vertical-align:baseline;margin-left:3px}.story-translate-tiny:hover,.story-translate-tiny:focus-visible{opacity:1;outline:1px solid #417b70;border-radius:3px}
.story-translation{font-family:system-ui;line-height:1.5;font-size:13px;padding:11px 13px;background:#e4e7db;border-left:3px solid #79ad91;color:#344d48;border-radius:7px;margin:0 0 16px}.story-translation span,.story-panel-fullsentence span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:750;opacity:.72}
.story-translation p,.story-panel-fullsentence p{margin:6px 0 10px}.story-translation p:last-child{margin-bottom:0}.story-literal-btn{all:unset;color:#236950;cursor:pointer;text-decoration:underline;font-size:11px;font-weight:700}.story-translation .story-literal{font-style:italic;color:#566c63;margin:8px 0 0}
.story-reading-end{text-align:center;font-size:23px;letter-spacing:5px;color:#7d9685;margin:22px auto 3px}.story-reading-hint{font-family:system-ui;color:#74877d;font-size:11px;text-align:center;line-height:1.55;margin:8px 0 0}
.story-questions{margin:28px 0 45px}.story-questions-header h3{font-size:20px;margin:7px 0}.story-questions-header p{color:#9bb0c3;font-size:13px}.story-question{padding:18px;margin:17px 0;border:1px solid #30485f;border-radius:16px;background:#142438}.story-question-number{font-size:10px;color:#9bdabe;font-weight:800;letter-spacing:.1em}.story-question h4{margin:8px 0 15px;font-size:15px;line-height:1.4}.story-choice{display:block;text-align:left;width:100%;min-height:44px;border:1px solid #35516a;background:#1c3045;color:#e6f3f9;border-radius:11px;padding:11px 12px;margin:8px 0;cursor:pointer;font-size:13px}.story-choice.selected{border-color:#7edcba;background:#1c473f}.story-choice.correct{border-color:#8be5be;background:#24483f}.story-choice:disabled{cursor:default;opacity:.8}.story-check{margin-top:14px;font-size:13px;min-height:41px}.story-question-feedback{margin-top:11px;padding:11px;background:#214238;border-radius:10px;color:#c5f0db;font-size:12px;line-height:1.55}.story-question-feedback.retry{background:#3f3339;color:#f5c9c9}.story-endcard{padding:20px;background:#1c433c;border:1px solid #3c735b;border-radius:16px}.story-endcard p{font-size:13px;line-height:1.5;color:#b4dbcc}
.story-word-panel{position:fixed;z-index:100;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(calc(100vw - 18px),610px);max-height:min(60vh,520px);overflow-y:auto;background:#172a3d;border:1px solid #456077;color:#e9f5fa;box-shadow:0 -16px 60px #030a1690;border-radius:20px 20px 15px 15px;padding:13px 18px 17px;animation:story-rise .13s ease}
@keyframes story-rise{from{opacity:.3;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.story-panel-handle{height:4px;width:39px;border-radius:8px;background:#587587;margin:0 auto 10px}
.story-panel-header{display:flex;justify-content:space-between;align-items:start;gap:14px}.story-panel-label{font-size:10px;letter-spacing:.15em;color:#91cbb7;font-weight:750}.story-panel-header h3{font-size:23px;margin:3px 0 10px}.story-panel-close{background:#2d4559;border:1px solid #52677d;color:#e6f6fa;border-radius:9px;min-width:36px;min-height:36px;cursor:pointer}
.story-panel-meta{display:flex;gap:7px;flex-wrap:wrap}.story-panel-meta span{border:1px solid #38576c;padding:5px 8px;border-radius:9px;font-size:11px;color:#afc9d6}
.story-panel-details{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0 8px}.story-panel-details p{background:#20374a;border-radius:10px;margin:0;padding:10px;font-size:13px;overflow-wrap:break-word}.story-panel-details p strong{font-size:10px;color:#8bd1ad;display:block;margin-bottom:5px}.story-panel-note{color:#b5cbd6;font-size:12px;line-height:1.55}
.story-panel-relation{background:#273d4e;border-left:4px solid #80abc8;border-radius:9px;padding:10px 13px;margin:11px 0;line-height:1.52}.story-panel-relation span{display:block;font-size:10px;color:#a7c3d4;letter-spacing:.07em;font-weight:800}.story-panel-relation strong{display:block;margin:5px 0;font-size:13px}.story-panel-relation p{margin:6px 0 0;font-size:12px;color:#d5e3e9}
.story-panel-relation.story-rel-recipient{border-left-color:#dca655}.story-panel-relation.story-rel-object{border-left-color:#51c899}.story-panel-relation.story-rel-reflexive{border-left-color:#b895d7}
.story-panel-sentence{width:100%;background:#203b43;border:1px solid #456e68;color:#b2e7cf;border-radius:10px;min-height:42px;margin-top:10px;font-size:12px;font-weight:750;cursor:pointer}.story-panel-fullsentence{padding:10px 12px;font-size:13px;line-height:1.5;background:#213649;border-radius:9px;margin-top:8px}
@media(max-width:390px){.story-reading-paper{padding:18px 13px}.story-prose{font-size:18px;line-height:1.94}.story-shelf-card{gap:11px;padding:11px}.story-cover{flex-basis:77px;min-height:150px}.story-shelf-content h2{font-size:19px}.story-panel-details{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.story-word-panel{animation:none}}

/* Keep the related words in view above the mobile word sheet. */
.story-word-panel{max-height:min(45vh,390px)}
.story-panel-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.story-panel-details p{padding:9px 7px;font-size:12px}
@media(max-width:360px){.story-panel-details p{font-size:11px}}

/* Palabra Stories 0.6a.2 – sentence-by-sentence, COMPLETE constituent Grammarblick. */
.story-mode-advice{font-size:10px;letter-spacing:0;color:#626f67;font-weight:650;text-align:right}
.story-sentence-wrap{margin:0 0 13px}
.story-sentence-wrap .story-sentence{margin:0}
.story-constituent{border-radius:5px;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background .15s ease,box-shadow .15s ease;padding:2px 1px}
.story-grammar-on .story-constituent[data-role=subject],.story-legend-swatch[data-role=subject]{--syntax-bg:#e2d2f7;--syntax-ink:#563583}
.story-grammar-on .story-constituent[data-role=predicate],.story-legend-swatch[data-role=predicate]{--syntax-bg:#cadefa;--syntax-ink:#255c97}
.story-grammar-on .story-constituent[data-role=direct],.story-legend-swatch[data-role=direct]{--syntax-bg:#c2ebd8;--syntax-ink:#167552}
.story-grammar-on .story-constituent[data-role=indirect],.story-legend-swatch[data-role=indirect]{--syntax-bg:#f8dc9e;--syntax-ink:#865a08}
.story-grammar-on .story-constituent[data-role=adjunct],.story-legend-swatch[data-role=adjunct]{--syntax-bg:#c1e7e9;--syntax-ink:#1b666c}
.story-grammar-on .story-constituent[data-role=attribute],.story-legend-swatch[data-role=attribute]{--syntax-bg:#f5cadb;--syntax-ink:#8a325b}
.story-grammar-on .story-constituent[data-role=connector],.story-legend-swatch[data-role=connector]{--syntax-bg:#d8dce3;--syntax-ink:#515b6c}
.story-grammar-on .story-constituent[data-role=negation],.story-legend-swatch[data-role=negation]{--syntax-bg:#f6d0bb;--syntax-ink:#984f25}
/* Palette is role-based, never hard-coded into JSON. Multiple tokens form ONE coloured constituent. */
.story-grammar-on .story-constituent{background:var(--syntax-bg,#d8dce3);box-shadow:inset 0 -2px var(--syntax-ink,#677)}
.story-grammar-on .story-token{background:transparent!important;box-shadow:none!important}
.story-constituent.story-unit-focused{outline:1.5px dotted #324956;outline-offset:2px}
.story-token.story-selected{outline:1.5px dashed #51685e;outline-offset:2px}
.story-token.story-linked{background:rgba(232,168,56,.18);box-shadow:inset 0 -2.5px #a46b12;text-decoration:underline;text-decoration-color:#ab771a;text-decoration-thickness:2px;text-underline-offset:4px}
.story-grammar-on .story-token.story-linked{background:rgba(255,255,255,.23)!important;box-shadow:inset 0 -3px #222f3e!important;text-decoration-color:#222f3e}
.story-sentence-actions{display:inline-flex;gap:5px;align-items:center;vertical-align:middle;margin-left:7px;white-space:nowrap}
.story-translate-tiny,.story-grammar-tiny{all:unset;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;min-width:29px;height:28px;border:1px solid #d1d8ce;background:#fffaf0;font-size:15px;line-height:1;box-sizing:border-box;vertical-align:middle;transition:background .13s,border-color .13s,transform .13s}
.story-translate-tiny{color:#365b62;background:#fffdf7}
.story-translate-tiny:hover,.story-translate-tiny:focus-visible{opacity:1;border-color:#7caaa6;outline:2px solid #7caaa6;outline-offset:2px}
.story-grammar-tiny{background:#fff0ae;border-color:#d9aa32;box-shadow:inset 0 0 0 1px #ffe8a1;color:#6b4800;filter:saturate(1.12)}
.story-grammar-tiny:hover,.story-grammar-tiny:focus-visible{background:#ffe18a;border-color:#967019;outline:2px solid #a8760b;outline-offset:2px}
.story-grammar-tiny.active{background:#ffd767;border:2px solid #855b10;box-shadow:0 0 0 2px #ffedb2}
.story-grammar-legend{background:#fffcf5;border:1px solid #d8ccb4;border-radius:13px;padding:13px 12px;margin:13px 0 18px;font-family:system-ui;color:#30453d}
.story-legend-title{font-size:13px;font-weight:750;line-height:1.5}
.story-legend-title small{display:block;font-weight:450;color:#596d64;font-size:11px}
.story-legend-items{display:flex;flex-wrap:wrap;gap:8px 11px;margin:11px 0}
.story-legend-item{display:inline-flex;gap:6px;align-items:center;font-size:11px;color:#354c47;line-height:1.25}
.story-legend-swatch{width:13px;height:13px;border-radius:4px;flex:0 0 13px;background:var(--syntax-bg,#d8dce3);border:1px solid var(--syntax-ink,#657)}
.story-grammar-legend>p{font-size:11px;line-height:1.5;color:#50645b;margin:10px 0 0}
.story-panel-function{margin:10px 0;border-left:4px solid #a8aed4;background:#273c50;padding:10px 12px;border-radius:8px}
.story-panel-function span{display:block;font-size:10px;font-weight:750;letter-spacing:.09em;color:#aebfd4}
.story-panel-function strong{display:block;margin-top:5px;font-size:13px}
.story-panel-function p{font-size:12px;margin:6px 0 0;line-height:1.55;color:#d5e1e9}
.story-panel-function[data-role=subject]{border-left-color:#b998df}
.story-panel-function[data-role=predicate]{border-left-color:#89b7e9}
.story-panel-function[data-role=direct]{border-left-color:#65cda5}
.story-panel-function[data-role=indirect]{border-left-color:#efb85c}
.story-panel-function[data-role=adjunct]{border-left-color:#7ed1d0}
.story-panel-function[data-role=attribute]{border-left-color:#e99fb9}
.story-panel-function[data-role=connector]{border-left-color:#a1aec0}
.story-panel-function[data-role=negation]{border-left-color:#e8a075}
.story-panel-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-panel-details p.story-literal-emphasis{grid-column:1/-1;background:#24463f;border:1px solid #507d6a}
.story-panel-relation{border-left-color:#dfb257}
.story-questions{margin:24px 0 12px}.story-questions-toggle{display:block;width:100%;min-height:48px;text-align:center;border-radius:12px;font-weight:750}
.story-questions-header{margin-top:22px}
.story-next-section{display:flex;gap:13px;align-items:center;justify-content:space-between;margin:12px 0 44px;padding:15px;border:1px solid #31546a;background:#152b3b;border-radius:16px}
.story-next-section>span{color:#aebfc9;font-size:12px;line-height:1.45;flex:1}
.story-next-section .primary{flex:0 1 55%;min-height:46px;font-size:12px;padding:11px}
@media(max-width:420px){
 .story-sentence-actions{gap:4px;margin-left:5px}
 .story-translate-tiny,.story-grammar-tiny{min-width:28px;height:27px}
 .story-legend-items{gap:8px}
 .story-next-section{flex-direction:column;align-items:stretch}
 .story-next-section .primary{width:100%}
 .story-prose{line-height:2.02}
}

/* Palabra 0.6a.3 – level chooser, genuine paragraph-flow, editorial annotation draft */
.story-level-picker{display:flex;gap:6px;margin:11px 0 10px}
.story-level-choice{border:1px solid #537181;background:#182e40;color:#aac1ce;font-size:12px;font-weight:780;border-radius:9px;padding:7px 14px;cursor:pointer;min-width:53px}
.story-level-choice.selected{border-color:#8ae2b4;color:#eafff4;background:#235241;box-shadow:inset 0 0 0 1px #428c69}
.story-level-choice:focus-visible{outline:2px solid #ace5c5;outline-offset:2px}
.story-cover-coco{background:linear-gradient(152deg,#a5672f,#4c5b47 52%,#1b3848)}
.story-cover-cine{background:linear-gradient(152deg,#495675,#33304f 48%,#162a42)}
.story-paragraph{margin:0 0 1.12em;line-height:2.07}
.story-paragraph .story-sentence-wrap{display:inline;margin:0}
.story-paragraph .story-sentence{display:inline;margin:0}
.story-paragraph .story-sentence-wrap::after{content:' ';white-space:pre}
.story-paragraph .story-translation{display:block;margin:8px 0 15px}
.story-gloss-list{display:flex;flex-wrap:wrap;gap:6px;margin:11px 0 3px}
.story-gloss-list>span{display:inline-flex;gap:6px;align-items:baseline;background:#f5f6ef;border:1px solid #cbd7cb;border-radius:7px;padding:5px 7px;color:#354f46;letter-spacing:0;text-transform:none;font-size:12px;font-weight:450;opacity:1}
.story-gloss-list b{color:#194e3b}
.story-panel-fullsentence .story-gloss-list>span{background:#2d4857;border-color:#466477;color:#dfedef}
.story-panel-fullsentence .story-gloss-list b{color:#9ce0bc}
@media(max-width:430px){.story-paragraph{line-height:2.04}.story-level-choice{padding:8px 14px}}

/* 0.6a.4: Grammatik-Entdeckungen statt automatischer Satzgliedraten. */
.story-focus-explain[hidden], .story-focus-legend[hidden]{display:none!important}
.story-focus-explain{margin:8px 0 13px;padding:12px 14px;border-radius:11px;background:#fff8db;border:1px solid #e8cf76;color:#394b40;font-family:system-ui,sans-serif;line-height:1.55}
.story-focus-heading{font-weight:800;font-size:13px;color:#6b4d08;margin-bottom:5px}
.story-focus-explain p{font-size:12.5px;line-height:1.65;margin:4px 0 9px;color:#3f5147}
.story-focus-keys{display:flex;flex-wrap:wrap;gap:6px}
.story-focus-key{display:inline-flex;border:1px solid rgba(32,52,64,.13);border-radius:6px;padding:3px 7px;font-size:11px;font-weight:650;background:#eef3ef;color:#31453f}
.story-focus-key[data-focus-kind="verb"]{background:#cadefa;color:#255c97}
.story-focus-key[data-focus-kind="subject"]{background:#e2d2f7;color:#563583}
.story-focus-key[data-focus-kind="clause"]{background:#d1e9e5;color:#1b666c}
.story-focus-key[data-focus-kind="reference"]{background:#ffdfb6;color:#785113}
.story-focus-key[data-focus-kind="detail"]{background:#eee4c7;color:#655328}
.story-focus-key[data-focus-kind="link"]{background:#dee1e8;color:#515b6c}
.story-grammar-on .story-token[data-focus-kind="verb"]{background:#cadefa!important;box-shadow:inset 0 -2px #255c97!important;border-radius:4px}
.story-grammar-on .story-token[data-focus-kind="subject"]{background:#e2d2f7!important;box-shadow:inset 0 -2px #563583!important;border-radius:4px}
.story-grammar-on .story-token[data-focus-kind="clause"]{background:#d1e9e5!important;box-shadow:inset 0 -2px #1b666c!important;border-radius:4px}
.story-grammar-on .story-token[data-focus-kind="reference"]{background:#ffdfb6!important;box-shadow:inset 0 -2px #785113!important;border-radius:4px}
.story-grammar-on .story-token[data-focus-kind="detail"]{background:#eee4c7!important;box-shadow:inset 0 -2px #655328!important;border-radius:4px}
.story-grammar-on .story-token[data-focus-kind="link"]{background:#dee1e8!important;box-shadow:inset 0 -2px #515b6c!important;border-radius:4px}
.story-focus-legend>p{margin:8px 0 0}


/* 0.6a.5 – Buchsatz: ruhige, fortlaufende Absätze und hochgestellte Fußnoten. */
.story-prose {
  text-align: justify;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
  word-break: normal;
  overflow-wrap: break-word;
  line-height: 1.91;
  letter-spacing: 0;
  font-kerning: normal;
  font-feature-settings: "kern" 1;
}
.story-paragraph {
  text-align: justify;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
  margin: 0 0 1.04em;
  line-height: inherit;
}
.story-paragraph .story-sentence-wrap::after {
  content: ' ';
  white-space: pre;
}
.story-paragraph .story-token {
  hyphens: auto;
  -webkit-hyphens: auto;
}
.story-sentence-actions {
  display: inline-flex;
  align-items: baseline;
  gap: 0;
  margin: 0 0 0 1px;
  white-space: nowrap;
  vertical-align: super;
  font-family: Georgia, 'Times New Roman', serif;
  line-height: 1;
}
.story-translate-tiny, .story-grammar-tiny {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  min-height: 18px;
  padding: 0 1px;
  box-sizing: border-box;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #71847b;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  box-shadow: none;
  filter: none;
  opacity: .80;
  transition: color .12s ease, background .12s ease, opacity .12s ease;
}
.story-grammar-tiny {color:#a17824;font-size:11px;}
.story-translate-tiny:hover, .story-grammar-tiny:hover,
.story-translate-tiny:focus-visible, .story-grammar-tiny:focus-visible {
  opacity: 1;
  background: rgba(36,113,95,.11);
  color: #246d55;
  outline: 2px solid #73b79e;
  outline-offset: 2px;
}
.story-grammar-tiny.active {
  background: rgba(213,164,57,.15);
  color: #926511;
  border: 0;
  box-shadow: none;
}
.story-translate-tiny[aria-pressed="true"] {color:#23775c;opacity:1}
.story-paragraph .story-translation,
.story-paragraph .story-focus-explain {
  display: block;
  text-align: left;
  hyphens: none;
  font-family: system-ui, sans-serif;
  letter-spacing: normal;
  text-indent: 0;
  font-kerning: auto;
}
.story-paragraph .story-translation {margin: 8px 0 12px}
.story-focus-explain {background: #f7efcf;border-color:#e5d7a6;}
.story-mode-advice {letter-spacing: .01em;}
@media(max-width:430px) {
  .story-prose {font-size: 18px;line-height: 1.91;}
  .story-paragraph {line-height: inherit;}
  .story-sentence-actions {margin-left: 1px;}
  .story-translate-tiny, .story-grammar-tiny {min-width: 17px;min-height: 19px;}
}

/* Letztes Wort + Satzzeichen + Fußnoten als untrennbare Einheit. */
.story-sentence-tail {white-space:nowrap; display:inline;}


/* Palabra 0.6a.6: three-pillar home and independent Learn hub. */
.pillar-hero {padding:34px 0 20px;}
.pillar-hero h1 {font-size:clamp(40px,10vw,58px);letter-spacing:-2px;line-height:1.06;margin:15px 0 12px;}
.pillar-hero h1 span {font-size:.45em;color:#86e4bf;vertical-align:super;}
.pillar-hero p {color:#b2c5d6;font-size:17px;margin:0;line-height:1.55;}
.pillar-list {display:grid;gap:14px;margin:15px 0 25px;}
.pillar-card {appearance:none;width:100%;min-height:148px;text-align:left;display:flex;align-items:center;gap:17px;padding:20px 18px;border-radius:21px;background:linear-gradient(115deg,#1a3045 0%,#152337 100%);color:#f1f8fd;border:1px solid #36526a;cursor:pointer;transition:transform .12s,border-color .12s,background .12s;}
button.pillar-card:hover {transform:translateY(-2px);border-color:#83dbc1;}
button.pillar-card:focus-visible {outline:3px solid #83dbc1;outline-offset:3px;}
.pillar-icon {width:57px;height:57px;flex:0 0 57px;border-radius:18px;display:grid;place-items:center;font-size:30px;font-weight:700;background:#244d4a;color:#9eedc8;}
.pillar-stories {background:#443751;color:#dec6f5;}
.pillar-grammar {background:#3e4150;color:#b9c8d8;}
.pillar-description {display:flex;flex-direction:column;gap:7px;min-width:0;flex:1;}
.pillar-description strong {font-size:21px;letter-spacing:-.5px;}
.pillar-description small {color:#b0c4d5;line-height:1.5;font-size:13px;}
.pillar-link {font-size:12px;font-weight:750;color:#8de9c4;margin-top:2px;}
.pillar-upcoming {cursor:default;opacity:.74;background:#152235;}
.pillar-soon {align-self:flex-start;color:#c9d6e1;font-size:11px;padding:5px 10px;border:1px solid #48536a;border-radius:15px;margin-top:2px;}
.pillar-footnote {color:#94a8ba;font-size:13px;line-height:1.6;}
#learn-hub .hero {padding-top:24px;}
#learn-hub .home-streak {margin-bottom:18px;}
#learn-hub .deck-tile {min-height:116px;}
@media(max-width:400px){.pillar-card{gap:13px;padding:17px 14px;min-height:138px}.pillar-icon{width:50px;height:50px;flex-basis:50px}.pillar-description strong{font-size:19px}.nav{min-width:0}.pillar-hero{padding-top:25px;}}


/* Palabra 0.6a.7 · Card-based Learn navigation; all other pillars unchanged. */
.learn-hero{padding-bottom:7px}.learn-hero h1{margin-bottom:8px}
.learn-daily-panel{margin-top:16px;padding:20px}
.learn-daily-route{display:flex;align-items:center;gap:12px;margin:17px 0 10px;padding:12px;border:1px solid #33586a;border-radius:13px;background:#1b3242}
.learn-daily-dot{width:40px;height:40px;flex:0 0 40px;border-radius:12px;display:grid;place-items:center;background:#27564a;color:#a8f0ca;font-size:24px}
.learn-daily-route div{display:flex;flex-direction:column;gap:5px;min-width:0}.learn-daily-route strong{font-size:14px;line-height:1.4}.learn-daily-route small{color:#a9bfcc;font-size:12px;line-height:1.4}
.learn-choice-intro{margin:31px 2px 15px}.learn-choice-intro h2{font-size:21px;margin:0 0 7px}.learn-choice-intro p{font-size:13px;color:#9db0c5;margin:0}
.learn-deck-list,.learn-package-list{display:grid;gap:11px}
.learn-deck-card,.learn-pack-card,.learn-review-link{appearance:none;text-align:left;border:1px solid #36516b;background:#182a40;color:#f1f7fa;border-radius:17px;padding:16px 15px;cursor:pointer;display:flex;align-items:center;gap:13px;width:100%;min-height:83px;transition:background .17s,border-color .17s,transform .1s}
.learn-deck-card:hover,.learn-pack-card:hover,.learn-review-link:hover{background:#213a50;border-color:#63978f}
.learn-deck-card:active,.learn-pack-card:active,.learn-review-link:active{transform:scale(.992)}
.learn-deck-card:focus-visible,.learn-pack-card:focus-visible,.learn-review-link:focus-visible{outline:3px solid #8ae0b8;outline-offset:2px}
.learn-deck-number,.learn-pack-number,.learn-review-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;background:#29483f;color:#adeecb;border-radius:13px;font-weight:780;font-size:21px}
.learn-item-content{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.learn-item-content strong{font-size:15px;line-height:1.4}.learn-deck-title{font-weight:600;color:#cadbe5}.learn-item-content small{font-size:12px;line-height:1.4;color:#9eb4c8}
.learn-mini-progress{background:#2b4356;height:4px;width:100%;max-width:220px;border-radius:7px;overflow:hidden;display:block;margin-top:2px}
.learn-mini-progress span{display:block;height:100%;background:#87dfb8;border-radius:7px}
.learn-item-arrow{font-size:28px;line-height:1;color:#9bb6bb;padding:0 2px;flex:0 0 13px}
.learn-review-link{margin-top:16px;min-height:78px;background:#142337;border-style:dashed}.learn-review-icon{background:#263e54;color:#b3cde0}
.learn-step-back{margin:15px 0 20px;background:none;border:0;color:#a9e9cf;font-size:14px;padding:10px 2px;cursor:pointer;text-align:left}
.learn-step-heading{margin-bottom:20px}.learn-step-heading h2{font-size:clamp(25px,6vw,33px);line-height:1.16;letter-spacing:-.5px;margin:8px 0 10px}.learn-step-heading p{font-size:14px;line-height:1.55;color:#9db0c5;margin:0}
.learn-pack-card{min-height:76px}.learn-pack-number{font-size:17px;background:#273b53;color:#d1e0e9}.learn-pack-featured{border-color:#539d86;background:#1a393b}.learn-pack-featured .learn-pack-number{background:#306450;color:#c2f6d9;font-size:25px}
.learn-setup-panel{margin-top:15px}.learn-setup-panel h2{font-size:17px}.learn-session-summary{display:flex;align-items:flex-start;gap:10px;border-radius:12px;background:#1d3545;padding:12px 13px;margin-top:18px}.learn-session-summary>span{font-size:21px;color:#9cebc8}.learn-session-summary p{font-size:13px;line-height:1.5;color:#ccdee9;margin:1px 0}
.learn-category-chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 0}.learn-category-chip{border-radius:30px;padding:9px 12px;color:#b7c9d5;border:1px solid #39546d;background:#1a2d42;font-size:12px;cursor:pointer}.learn-category-chip.chosen{background:#2b5949;color:#cbf6df;border-color:#89d7b3}
.learn-setup-panel .filter-label{display:block;margin-top:20px}
@media(max-width:390px){.learn-deck-card,.learn-pack-card,.learn-review-link{gap:10px;padding:13px 10px}.learn-deck-number,.learn-pack-number,.learn-review-icon{width:38px;height:38px;flex-basis:38px;font-size:18px}.learn-item-content strong{font-size:14px}.learn-item-content small{font-size:11px}.learn-daily-panel{padding:16px}}

.learn-review-link>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column;gap:6px}.learn-review-link>span:nth-child(2) strong{font-size:14px;line-height:1.4}.learn-review-link>span:nth-child(2) small{font-size:12px;line-height:1.5;color:#9eb4c8}
.primary:disabled{opacity:.56;cursor:default;transform:none}

/* 0.6a.8 Story → Learn Lexikonpilot */
.story-lexicon-box{margin:14px 0 2px;padding:12px;background:#223b4b;border-radius:12px;border:1px solid #557080;color:#e8f2f2}
.story-lexicon-title{display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.story-lexicon-title>span{font-size:10px;letter-spacing:.08em;font-weight:700;color:#a5e3c2}
.story-lexicon-title>strong{font-size:15px}
.story-lexicon-box p{font-size:12px;margin:8px 0}
.story-lexicon-caution{display:block;color:#ffd69b;font-size:11px;line-height:1.45}
.story-lexicon-toggle,.story-lexicon-create{width:100%;margin-top:10px;padding:10px 8px;border-radius:9px;border:1px solid #749e91;color:#d9f7e4;background:#295347;cursor:pointer;font-weight:700;font-size:12px}
.story-lexicon-collections{margin-top:9px;display:grid;gap:6px}
.story-lexicon-choice{background:#183145;color:#ebf6f6;border:1px solid #587484;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:41px;text-align:left;padding:8px 11px;cursor:pointer;font-size:12px}
.story-lexicon-choice span:last-child{color:#b5e6cb;font-weight:700;white-space:nowrap}
.story-lexicon-feedback{color:#bbebca!important;font-weight:650;line-height:1.5}
/* 0.6a.8 quality pass: meanings remain hidden unless deliberately expanded. */
.story-lexicon-meanings{margin:9px 0;padding:8px 10px;border-radius:8px;border:1px solid #587484;background:rgba(13,32,42,.25);font-size:12px}
.story-lexicon-meanings>summary{cursor:pointer;font-weight:650;color:#cee9e2}
.story-lexicon-meanings ul{margin:8px 0 5px;padding-left:17px;line-height:1.6}
.story-lexicon-meanings li{margin:4px 0}
.story-lexicon-meanings small{display:block;color:#c8d9de;line-height:1.4}

/* Read-only deck browser */
.learn-browse-launch{margin-top:20px;border-color:#638f88;background:#1c3b40;color:#d9f9e7}
.learn-browse-panel{margin-top:8px;padding:22px}
.browse-progress{display:flex;justify-content:space-between;gap:12px;color:#acc4d3;font-size:12px;line-height:1.5}
.browse-word{text-align:center;font-size:clamp(27px,6.5vw,37px);font-weight:750;color:#f2faf6;margin:35px 0;overflow-wrap:anywhere}
.browse-answer{text-align:center;border-radius:14px;padding:18px;background:#1c3a43;border:1px solid #3f6a66;margin:18px 0;overflow-wrap:anywhere}
.browse-answer small{display:block;color:#9be4c1;font-size:11px;letter-spacing:1px;margin-bottom:7px}
.browse-answer strong{font-size:22px;color:#e1f8e9}
.browse-answer p{font-size:13px;color:#c3d9db;line-height:1.6;margin:15px 0 0}
.browse-navigation{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 10px}
.learn-browse-panel .footnote{text-align:center}

.story-lexicon-card-meaning{opacity:.9;font-size:11px!important;margin-top:3px!important}

/* 0.6a.8 · SRS-neutrale, kuratierte Wortschatzvorbereitung für Stories */
.story-shelf-actions{display:grid;gap:8px}.story-shelf-actions .story-open{width:100%}
.story-shelf-actions .story-vocab-open{font-size:12px;line-height:1.3;min-height:44px;padding:9px 8px;display:flex;flex-direction:column;gap:2px;text-align:center;border-color:#47635b;background:#203a40;color:#d1f3df}
.story-vocab-open small{font-size:10px;color:#a6cbbb;font-weight:500}
.story-vocab-intro h2{font-family:Georgia,serif;letter-spacing:-.025em;font-weight:500;font-size:clamp(26px,6vw,36px);margin:10px 0}
.story-vocab-intro p{font-size:13px;color:#b0c4ce;line-height:1.65;margin:7px 0}
.story-vocab-intro p strong{color:#e3f1ed}
.story-vocab-count{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:25px 0 8px;font-size:11px;color:#b5cdc6;font-weight:700}
.story-vocab-track{height:5px;border-radius:8px;overflow:hidden;background:#273c4b;margin-bottom:15px}.story-vocab-track>span{display:block;height:100%;background:#86dbb6;transition:width .13s ease}
.story-vocab-paper{background:#f5efe3;border:1px solid #e6dfcd;color:#26423b;border-radius:20px;min-height:240px;padding:27px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;box-shadow:0 10px 26px #06101d33}
.story-vocab-kicker{font-size:10px;font-weight:800;letter-spacing:.17em;color:#507a6c}
.story-vocab-paper h3{font-family:Georgia,serif;font-weight:500;font-size:clamp(30px,8vw,42px);line-height:1.3;margin:22px 0 20px;overflow-wrap:anywhere}
.story-vocab-prompt{font-size:13px;color:#667970;margin:1px 0 17px}.story-vocab-paper #vocabReveal{max-width:270px}
.story-vocab-answer{display:grid;gap:9px;border-top:1px solid #d6d9cb;padding:19px 0 12px;width:100%}
.story-vocab-answer span{letter-spacing:.12em;color:#658677;font-size:10px;font-weight:800}
.story-vocab-answer strong{font-size:clamp(19px,5vw,23px);line-height:1.45;font-weight:650}
.story-vocab-example-trigger{background:transparent;color:#366e5b;border:0;text-decoration:underline;cursor:pointer;font-size:12px;padding:12px 3px;min-height:40px}
.story-vocab-example{width:100%;background:#e8e8da;padding:12px 15px;border-radius:12px;font-size:13px;line-height:1.55;text-align:left}
.story-vocab-example p{margin:3px 0 10px}.story-vocab-example p:last-child{margin-bottom:0;color:#526a60}
.story-vocab-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0 16px}
.story-vocab-index{border:1px solid #38536a;border-radius:14px;background:#17293b;margin:15px 0 23px;overflow:hidden}
.story-vocab-index summary{font-size:13px;font-weight:700;cursor:pointer;padding:14px;color:#b9dece}
.story-vocab-index-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:2px 10px 13px}
.story-vocab-index-grid button{min-height:40px;text-align:left;background:#1e3447;color:#dbe9ec;border:1px solid #375066;border-radius:9px;padding:9px 10px;font-size:12px;overflow-wrap:anywhere;cursor:pointer}
.story-vocab-index-grid button.active{background:#285346;color:#e2fbed;border-color:#78d7ae}
.story-vocab-transfer{border:1px solid #345668;border-radius:18px;background:#17293a;padding:18px;margin:18px 0 16px}
.story-vocab-transfer-head strong{color:#e4f5e8}.story-vocab-transfer-head p{color:#a8c0ca;font-size:12px;line-height:1.65;margin:8px 0 15px}
.story-vocab-transfer>.secondary{font-size:13px;min-height:42px}
.story-vocab-collections{display:grid;gap:7px;margin:12px 0}
.story-vocab-collections button{display:flex;align-items:center;justify-content:space-between;gap:9px;border-radius:10px;border:1px solid #476d64;background:#203e43;color:#dbf3e7;min-height:43px;text-align:left;padding:10px 12px;font-size:12px;cursor:pointer}
.story-vocab-collections button span:last-child{font-size:11px;color:#a8edca;text-align:right}
.story-vocab-feedback:not(:empty){font-size:12px;line-height:1.5;color:#b4eccf;margin:13px 0 0}
.story-vocab-warning{font-size:12px;color:#f2c7ac}
.story-vocab-to-read{margin:17px 0 24px}
@media(max-width:390px){.story-vocab-index-grid{grid-template-columns:1fr 1fr}.story-vocab-paper{padding:22px 14px}.story-vocab-transfer{padding:14px}.story-vocab-intro h2{font-size:28px}}

/* 0.6a.8g1 · Palabra Grammar – Die Satzwerkstatt */
.pillar-grammar{background:#3c4b59;color:#c3e9dd}
.gram-hero{padding:28px 0 17px}.gram-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,8vw,43px);font-weight:500;line-height:1.13;letter-spacing:-.8px;margin:11px 0}.gram-hero p{font-size:14px;color:#b7cbd4;line-height:1.65;margin:0;max-width:430px}
.gram-path-intro{display:flex;align-items:flex-start;gap:17px;padding:21px 18px;border-radius:22px;background:linear-gradient(135deg,#223b47,#192b3c);border:1px solid #496a70;margin:12px 0 26px}.gram-path-icon{width:49px;height:49px;border-radius:16px;background:#315849;display:grid;place-items:center;flex:none;font-size:28px;color:#adf3cd}.gram-path-intro h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:7px 0}.gram-path-intro p{font-size:13px;color:#bbd0d2;line-height:1.65;margin:0}.gram-unit-heading{display:flex;justify-content:space-between;gap:9px;align-items:center;margin-bottom:13px}.gram-unit-heading h2{font-size:18px;margin:0}.gram-subtle{color:#97bdad;font-size:11px}
.gram-lesson-list{display:grid;gap:10px}.gram-lesson-card{width:100%;background:#16293b;border:1px solid #38556a;border-radius:17px;padding:15px 12px;display:flex;gap:12px;align-items:center;color:#eff5f4;text-align:left;cursor:pointer}.gram-lesson-card:focus-visible,.gram-token:focus-visible,.gram-role-token:focus-visible,.gram-bank-chip:focus-visible,.gram-built:focus-visible{outline:3px solid #85e3bd;outline-offset:3px}.gram-lesson-no{display:grid;place-items:center;background:#2b4d4e;color:#a8eaca;border-radius:12px;width:44px;height:44px;flex:0 0 44px;font-weight:750;font-size:18px}.gram-lesson-desc{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.gram-lesson-desc strong{font-size:15px}.gram-lesson-desc small{font-size:12px;line-height:1.45;color:#b6c8d5}.gram-lesson-desc em{color:#92dcbd;font-style:normal;font-size:11px}.gram-chevron{font-size:30px;font-weight:300;color:#8fcfb8}.gram-future{border:1px dashed #3a556c;border-radius:17px;padding:21px;margin:25px 0 17px}.gram-future h3{font-size:18px;margin:8px 0}.gram-future p,.gram-small-note{font-size:12px;line-height:1.65;color:#a9becd}.gram-small-note{margin:14px 0 30px}
.gram-back{color:#a3e5cb;background:transparent;border:0;padding:11px 0;text-align:left;font-size:14px;cursor:pointer;margin:8px 0 12px}.gram-lesson-title h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(29px,7vw,38px);letter-spacing:-.5px;line-height:1.2;margin:9px 0}.gram-lesson-title p{color:#b5c7d0;font-size:14px;line-height:1.6;margin:0 0 18px}.gram-mini-track{display:flex;gap:6px;margin:0 0 23px}.gram-mini-track span{flex:1;border-radius:8px;height:5px;background:#2c4051}.gram-mini-track span.is-current{background:#79d7ae}
.gram-prose{margin:15px 0 20px}.gram-prose p{font-size:14px;color:#d3e1e9;line-height:1.8;margin:9px 0}.gram-lab{border:1px solid #40586a;border-radius:20px;background:linear-gradient(180deg,#1a3042,#17293c);padding:20px 18px;margin:20px 0}.gram-lab-kicker{font-size:10px;letter-spacing:1.2px;color:#a5e8c6;font-weight:800}.gram-lab h3,.gram-task h3{font-size:19px;line-height:1.35;margin:13px 0 9px}.gram-tokenline,.gram-role-line{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;justify-content:center;padding:30px 4px 24px}.gram-token,.gram-role-token{border:1px solid #567389;border-radius:12px;padding:12px 13px;background:#253f53;color:#f2fbf8;font-weight:650;font-size:clamp(15px,3.8vw,19px);cursor:pointer;min-height:48px}.gram-token.chosen,.gram-role-token.chosen{border-color:#b1f5cf;box-shadow:0 0 0 2px #6ed8a851;background:#2d6050}.gram-punctuation{font-size:23px;align-self:center}.gram-inspection{background:#112536;border:1px solid #344e60;border-radius:13px;padding:15px;margin:0 0 2px;min-height:87px}.gram-inspection .gram-kicker{font-size:10px;letter-spacing:1.2px;color:#95e6bd;font-weight:800;text-transform:uppercase;display:block;margin-bottom:6px}.gram-inspection strong{font-size:18px}.gram-inspection p{font-size:13px;line-height:1.65;color:#c7d7e1;margin:7px 0 0}.gram-inspection>p{margin:3px 0;color:#9cb6c4}
.gram-explanation{display:flex;gap:12px;align-items:flex-start;border-left:3px solid #87d9b3;background:#1c3541;border-radius:10px;padding:15px;margin:19px 0}.gram-lightbulb{color:#9ee5bd;font-size:25px;line-height:1}.gram-explanation strong{font-size:14px;color:#e0f5e9}.gram-explanation p{font-size:13px;line-height:1.68;color:#cadcde;margin:8px 0 0}.gram-role-token{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:72px;padding:12px 13px;line-height:1.3}.gram-role-token small{font-size:10px;font-weight:700;color:#d9e5df;text-align:center;line-height:1.35}.gram-minor-action{display:block;margin:-9px auto 17px;border:1px solid #50776e;border-radius:11px;color:#b0efcf;background:#284d4a;padding:11px 13px;font-size:12px;cursor:pointer}
.role-subject{background:#263f58!important;border-color:#587da8!important}.role-predicate{background:#24504a!important;border-color:#5c9d84!important}.role-indirect{background:#4b405b!important;border-color:#9477b2!important}.role-direct{background:#514633!important;border-color:#9c8558!important}
.gram-task{border:1px solid #3a5164;border-radius:17px;padding:18px;margin:23px 0;background:#15283a}.gram-task>p{font-size:13px;line-height:1.6;color:#bbd1d8}.gram-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 4px}.gram-choice{background:#23394e;color:#eaf5f4;border:1px solid #527086;border-radius:12px;padding:13px 8px;min-height:49px;cursor:pointer;font-size:13px;font-weight:650;overflow-wrap:anywhere}.gram-choice.selected{border-color:#98e4c4;background:#295248}.gram-feedback{padding:13px;border-radius:11px;font-size:13px!important;line-height:1.6;margin-top:14px!important}.gram-feedback.right{background:#21463e;color:#c3f3d9}.gram-feedback.try{background:#413a36;color:#f6d2b6}.gram-spanish-link{padding:18px;border:1px dashed #5a786d;border-radius:15px;background:#192f37;margin:20px 0 25px}.gram-spanish-link span{font-size:10px;letter-spacing:1px;font-weight:800;color:#aadfc6}.gram-spanish-link p{font-size:13px;color:#cfddd9;line-height:1.7;margin:9px 0 0}.gram-next-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0 35px}.gram-next-row button{font-size:12px;padding:12px 8px}
.gram-hint{font-size:12px;color:#bfd3d9;line-height:1.6;margin:12px 0}.gram-build-zone,.gram-wordbank{display:flex;gap:9px;flex-wrap:wrap;align-items:stretch;border-radius:13px;padding:14px;min-height:77px}.gram-build-zone{border:1px dashed #6b9289;background:#112a31;margin:17px 0 12px}.gram-wordbank{background:#1e3547;border:1px solid #38576a;margin-bottom:15px}.gram-empty-slot{font-size:12px;color:#a4b9be;align-self:center}.gram-built,.gram-bank-chip{border:1px solid #657d80;color:#eff9f6;border-radius:11px;padding:10px 12px;font-size:15px;font-weight:750;background:#2f4a54;line-height:1.4}.gram-built{display:flex;flex-direction:column;gap:5px;align-items:flex-start;text-align:left;cursor:pointer;max-width:100%}.gram-built>span{display:inline;font-size:12px;margin-left:7px}.gram-built small{font-size:10px;font-weight:550;color:#d0e5e1}.gram-bank-chip{cursor:pointer;min-height:48px}.gram-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.gram-compact-action{background:#2b544c;border:1px solid #699d8a;color:#e5fff1;border-radius:11px;font-size:13px;font-weight:700;padding:13px 8px;cursor:pointer;min-height:47px}.gram-compact-action.quiet{background:#25394b;border-color:#4b6981;color:#cbdfec}.gram-role-switch{display:flex;align-items:center;gap:10px;color:#cfe6db;font-size:12px;cursor:pointer;margin:18px 0 5px;line-height:1.5}.gram-role-switch input{accent-color:#85e3bd;width:19px;height:19px;flex:none}.gram-lab .gram-explanation{margin-bottom:0}.gram-give-task .secondary{margin:17px 0 10px}.gram-give-line{display:flex;gap:9px;flex-wrap:wrap;align-items:stretch;margin:16px 0}.gram-give-line .gram-built{cursor:default}
@media(max-width:400px){.gram-lab{padding:16px 12px}.gram-choice-grid{gap:6px}.gram-choice{font-size:12px;padding:11px 5px}.gram-role-token{padding:11px 9px;min-height:65px}.gram-path-intro{padding:18px 14px;gap:12px}.gram-path-icon{width:42px;height:42px;flex-basis:42px}.gram-next-row button{font-size:11px}.gram-toolbar .gram-compact-action{font-size:12px}}
@media(max-width:360px){.bottom-nav .nav small{font-size:9px}.bottom-nav .nav span{font-size:20px}.gram-tokenline,.gram-role-line{gap:6px}}

.gram-all-used{font-size:12px;color:#a4e8c8;align-self:center;font-weight:650}

/* 0.7a.1 – Two distinct pathways inside Learn */
.learn-review-panel{border-color:#394d69;background:#16263b;margin-top:12px}
.learn-review-panel .secondary{margin-top:13px}
.learn-discover-launch{margin-top:18px}
.discovery-finish{text-align:center;padding:22px 2px 7px}
.discovery-finish h2{font-size:23px;line-height:1.3}
.discovery-finish p{font-size:14px;color:#c2d7da;line-height:1.65;margin-bottom:20px}
.discovery-finish .secondary{margin-top:10px}

/* 0.7a.2 · Palabra Grammar A1: quiet, interactive reading + building */
.gram-a1-launch{width:100%;background:linear-gradient(125deg,#264d47,#18383e);border:1px solid #6aa891;border-radius:21px;display:flex;text-align:left;gap:16px;align-items:center;color:#effff5;padding:20px 17px;margin:10px 0 24px;cursor:pointer}
.gram-a1-launch:focus-visible,.a1-module-card:focus-visible,.a1-section button:focus-visible,.a1-lab-switch button:focus-visible{outline:3px solid #a9eed0;outline-offset:3px}
.gram-a1-mark{display:grid;place-items:center;flex:none;width:60px;height:60px;border-radius:16px;background:#366f5e;color:#e5fff2;font-size:22px;font-weight:800}
.gram-a1-launch>span:last-child{display:flex;flex-direction:column;gap:6px;min-width:0}.gram-a1-launch strong{font-size:17px;line-height:1.3}.gram-a1-launch small{font-size:12px;color:#c6e0d8;line-height:1.5}.gram-a1-launch em{font-style:normal;color:#b0f7ce;font-size:12px;font-weight:750}
.a1-count{display:flex;align-items:center;gap:15px;padding:20px 17px;border:1px solid #43685d;background:#18352f;border-radius:18px;margin:8px 0 12px}.a1-count>strong{font-size:30px;font-variant-numeric:tabular-nums;color:#b7f2d0;white-space:nowrap}.a1-count>strong span{color:#9eb8b6;font-size:16px}.a1-count b{font-size:13px}.a1-count p{font-size:11px;color:#b5ceca;line-height:1.55;margin:6px 0 0}.a1-progress{height:7px;border-radius:20px;overflow:hidden;background:#284252;margin:0 0 28px}.a1-progress span{display:block;height:100%;background:#8ed7b2;border-radius:20px;transition:width .2s}
.a1-module-list{display:grid;gap:9px}.a1-module-card{display:flex;width:100%;align-items:center;text-align:left;gap:13px;border:1px solid #385469;background:#162a3b;color:#ecf9f5;border-radius:17px;padding:15px 11px;cursor:pointer}
.a1-module-number{display:grid;place-items:center;width:43px;height:48px;flex:none;background:#2b4c50;border-radius:11px;color:#a7ebcb;font-weight:800;font-size:16px}.a1-module-description{display:flex;flex:1;flex-direction:column;gap:5px;min-width:0}.a1-module-description strong{font-size:14px;line-height:1.3}.a1-module-description small{color:#bfd1d9;font-size:12px;line-height:1.35}.a1-module-description em{color:#a6e1c4;font-style:normal;font-size:11px}
.a1-lab{border-radius:20px;border:1px solid #4b7267;background:linear-gradient(180deg,#1d3e40,#172e3c);padding:19px 17px;margin:19px 0 26px}.a1-small{color:#d0dfe0;font-size:13px;line-height:1.65;margin:9px 0 15px}.a1-lab-switch{display:grid;grid-template-columns:1fr 1fr;gap:9px}.a1-lab-switch button{border:1px solid #58766f;border-radius:12px;background:#234147;color:#c9ddd6;min-height:45px;cursor:pointer;font-size:13px;font-weight:650}.a1-lab-switch button.chosen{background:#3c755c;border-color:#b3efce;color:#fff}.a1-lab-example{background:#112c37;border:1px solid #37596a;border-radius:14px;margin-top:12px;padding:19px 14px;display:flex;flex-direction:column;gap:9px}.a1-lab-example strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,5vw,28px);font-weight:500}.a1-lab-example span{font-size:14px;color:#e0ede8}.a1-lab-example small{font-size:12px;line-height:1.5;color:#aedbc9}.a1-mod-meta{font-size:12px;color:#a9c7bf;margin:2px 0}.a1-lab-foot{margin:24px 0 30px;color:#a9bdc5;line-height:1.6;font-size:12px}
.a1-section{border:1px solid #375168;background:#172c3e;border-radius:19px;padding:20px 18px;margin:18px 0 22px}.a1-section h2{font-size:20px;line-height:1.35;margin:11px 0 12px;color:#f0f7f6}.a1-section>p{font-size:14px;color:#c7d9df;line-height:1.75}.a1-model{background:#10293b;border-radius:13px;border:1px solid #436474;padding:19px 14px;display:flex;flex-direction:column;gap:8px;margin:15px 0 8px}.a1-model strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,5vw,26px);font-weight:500;line-height:1.4}.a1-model span{color:#bad3da;font-size:13px;line-height:1.5}.a1-model-toggle,.a1-light-action{cursor:pointer;background:transparent;border:1px solid #5c7b73;border-radius:10px;padding:10px 13px;color:#b7eccd;font-size:12px;font-weight:650}.a1-section .gram-explanation{margin-top:18px}.a1-remember{font-size:12px;line-height:1.7;background:#263c47;border-left:2px solid #93b5c8;padding:12px;margin-top:15px;color:#d6e3e6;border-radius:8px}
.a1-choices{display:grid;gap:9px;margin:15px 0}.a1-choices button{min-height:46px;text-align:left;cursor:pointer;border:1px solid #52718a;background:#253e53;border-radius:12px;padding:11px 14px;color:#e7f3f3;font-weight:650;font-size:14px;overflow-wrap:anywhere}.a1-choices button.selected{background:#28574a;border-color:#a7ebca}.a1-build-zone{margin-bottom:9px;min-height:70px;align-items:center}.a1-bank{min-height:75px}.a1-bank .gram-bank-chip{background:#344d60}.a1-prompt{font-size:14px;color:#e4f2ef;line-height:1.7;display:block;margin:12px 0}.a1-answer{width:100%;min-height:47px;box-sizing:border-box;border:1px solid #5d7c89;border-radius:11px;background:#102739;color:#fff;font-size:16px;padding:13px 12px;outline:none}.a1-answer:focus-visible{border-color:#aae6c8;box-shadow:0 0 0 2px #80d8a440}.a1-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.a1-actions button{font-size:12px;padding:11px 8px}.a1-solution{border:1px solid #42665a;border-radius:13px;background:#183c34;margin-top:14px;padding:13px}.a1-solution strong{font-size:13px}.a1-solution p{font-size:16px;margin:9px 0;color:#e4fff1}.a1-solution small{color:#bbd9cb;line-height:1.5}.a1-lesson-end{margin:23px 0 38px;border:1px solid #3b5569;border-radius:15px;padding:16px;background:#17283b;font-size:12px;color:#bbced7;line-height:1.65}.a1-done{font-weight:750;color:#a3efc2}.a1-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.a1-next-actions button{font-size:12px;padding:12px 8px}
@media(max-width:390px){.gram-a1-launch{padding:16px 12px;gap:12px}.gram-a1-mark{width:49px;height:49px;font-size:19px}.gram-a1-launch strong{font-size:15px}.a1-section{padding:16px 12px}.a1-count{padding:16px 12px}.a1-module-card{padding:13px 10px}.a1-lesson-end{padding:13px}}

/* 0.7a.3 – extra story shelf covers; preserve existing Coco / Cine artwork. */
.story-cover-llave-azul{background:linear-gradient(145deg,#284a62,#618eac 57%,#bbd2c2);color:#fff}
.story-cover-puesto-siete{background:linear-gradient(145deg,#613c29,#b08053 53%,#e1bb86);color:#fff}
.story-cover-mensaje-617{background:linear-gradient(145deg,#253b53,#637b9b 53%,#a6adb4);color:#fff}
.story-cover-kilometro-42{background:linear-gradient(145deg,#304a42,#71917b 55%,#c4c58f);color:#fff}
.story-cover-la-casa-miercoles{background:linear-gradient(145deg,#5f4146,#9c7776 54%,#c5a49c);color:#fff}
.story-cover-las-voces-que-faltan{background:linear-gradient(145deg,#343753,#6c6889 54%,#a7a0bb);color:#fff}

/* Palabra 0.7a.4 – schlichte, textfreie Buchillustrationen. Titel und Metadaten bleiben außerhalb des Bilds. */
.story-cover{flex:0 0 108px;align-self:flex-start;aspect-ratio:5/7;min-height:0;padding:0;overflow:hidden;display:block;line-height:0;background:#294052;box-shadow:2px 5px 14px #07111e66}
.story-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border:0}
@media(max-width:390px){.story-cover{flex-basis:82px;min-height:0}}

/* Palabra 0.7a.5 – Wort-Audio: ruhige, nur auf Wunsch aktive Wiedergabe */
.palabra-audio-controls{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0 11px;max-width:100%}
.palabra-audio-button{font:600 12px/1.25 system-ui,-apple-system,sans-serif;min-height:40px;border:1px solid #486a70;border-radius:11px;background:#244b4b;color:#dbf2e6;cursor:pointer;padding:9px 12px;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
.palabra-audio-button.audio-slow{background:transparent;border-color:#526575;color:#d0dce3;min-width:49px}
.palabra-audio-button:hover,.palabra-audio-button:focus-visible,.palabra-audio-button.audio-playing{border-color:#8cdec0;background:#356c61;color:#fff;outline-offset:2px}
.palabra-audio-controls.audio-compact{margin:4px 0 6px;gap:4px}
.audio-compact .palabra-audio-button{padding:6px 9px;min-height:34px;font-size:11px}
.audio-compact .palabra-audio-button:not(.audio-slow) span{display:none}
.story-vocab-paper>.palabra-audio-controls{justify-content:center;display:flex;margin:8px auto 14px}
.story-panel-audio{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:2px 0 11px}
.story-panel-audio>.palabra-audio-controls{margin:2px 0}
.story-lemma-audio{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#b2cbd0}
.story-lemma-audio .palabra-audio-controls{margin:0}
.learn-browse-panel>.palabra-audio-controls{display:flex;justify-content:center;margin:4px auto 17px}
.flashcard .palabra-audio-controls{display:flex;justify-content:center}
.word-row-top{flex-wrap:wrap;gap:4px}
.word-row-top .palabra-audio-controls{margin:0 4px;vertical-align:middle}
.collection-word-row .palabra-audio-controls{margin:0 5px;vertical-align:middle}
@media(max-width:390px){.story-panel-audio .palabra-audio-button{min-height:40px}.story-lemma-audio{gap:5px}}

.palabra-audio-notice{position:fixed;z-index:201;left:50%;transform:translateX(-50%);bottom:calc(82px + env(safe-area-inset-bottom));background:#213a4a;border:1px solid #769798;color:#f0f7f3;padding:12px 15px;border-radius:12px;font-size:13px;max-width:min(94vw,420px);box-shadow:0 12px 24px #06162699}
.palabra-audio-notice[hidden]{display:none}


/* 0.7a.8-P1 · Calm, readable, warm, scoped design language */
.pillar-icon svg{width:29px;height:29px;display:block}
.bottom-nav .nav svg{width:23px;height:23px;display:block;margin:auto}
.pillar-card{min-height:116px;gap:17px;padding:18px;border-radius:20px}
.pillar-description small{font-size:15px;line-height:1.5}
.pillar-link{font-size:14px}
.pillar-footnote{font-size:14px}
.learn-daily-panel>p.muted{font-size:15px;line-height:1.55}
.learn-choice-intro{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:27px 2px 12px}
.learn-choice-intro h2{margin:0;flex:1}
.palabra-context-help{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:50%;background:#233a49;border:1px solid #4d6e79;color:#d4e7e9;font-size:17px;font-weight:800;cursor:pointer}
.palabra-context-help:focus-visible,.discovery-option:focus-visible,.gram-bridge-words button:focus-visible,.pron-topic-card:focus-visible{outline:3px solid #9be7cc;outline-offset:3px}
.palabra-help-content{width:100%;color:#d4e6e9;background:#1c3141;border:1px solid #3a5467;border-radius:13px;padding:15px 16px;font-size:15px;line-height:1.65}
.palabra-help-content[hidden]{display:none}
.learn-deck-card,.learn-pack-card,.learn-review-link{min-height:85px;background:#17293b;border-color:#344b60}
.learn-item-content strong{font-size:17px}
.learn-item-content small{font-size:14px;line-height:1.5}
.learn-deck-number,.learn-pack-number{position:relative;border-radius:14px;overflow:hidden;background:#29433f;font-size:20px}
.learn-deck-number::after,.learn-pack-number::after{content:"";position:absolute;inset:5px;border:1px solid #b0dbcb33;border-radius:9px;pointer-events:none}
.learn-deck-card:nth-child(2n) .learn-deck-number{background:#394155;color:#e1d9ed}
.learn-deck-card:nth-child(3n) .learn-deck-number{background:#514337;color:#f0d5b1}
.learn-deck-card:nth-child(4n) .learn-deck-number{background:#2b4856;color:#b7dce8}
.learn-review-link>span:nth-child(2) strong{font-size:16px}
.learn-review-link>span:nth-child(2) small{font-size:14px}
.learn-step-heading p{font-size:15px}
@media(max-width:390px){.learn-item-content strong{font-size:16px}.learn-item-content small{font-size:14px}.learn-deck-number,.learn-pack-number{width:43px;height:43px;flex-basis:43px}.pillar-card{min-height:105px}.pillar-description small{font-size:14px}}
.discovery-question{font-size:17px;color:#deede9;text-align:center;font-weight:600;margin:22px 0 14px}
.discovery-options{display:grid;grid-template-columns:1fr;gap:10px;margin:17px 0}
.discovery-option{appearance:none;background:#213449;color:#e8f3f3;border:1px solid #486277;display:flex;align-items:center;gap:13px;text-align:left;border-radius:14px;padding:14px;min-height:60px;width:100%;font-size:16px;font-weight:590;line-height:1.4;cursor:pointer}
.discovery-option-letter{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border:1px solid #658294;border-radius:10px;color:#cadce7;font-size:14px;font-weight:750}
.discovery-option.is-correct{background:#24473e;border-color:#92dcb5;color:#e9fff3}
.discovery-option.is-wrong{background:#483a3a;border-color:#b78e85}
.discovery-option:disabled{cursor:default;opacity:1}
.discovery-feedback{background:#203c3b;border:1px solid #527a72;padding:16px;border-radius:14px;margin:15px 0;color:#f0f9f6}
.discovery-feedback.is-try{background:#3b3435;border-color:#7b6660}
.discovery-feedback strong{font-size:17px}
.discovery-feedback p{font-size:15px;margin:7px 0 0;line-height:1.6}
#browseContent .footnote{font-size:14px;line-height:1.6}
#browseContent .palabra-audio-controls{justify-content:center}
.gram-hero p{font-size:17px}
.gram-unit-heading h2{font-size:21px}
.gram-lesson-desc strong{font-size:17px}
.gram-lesson-desc small{font-size:14px}
.gram-collections-heading{margin-top:27px}
.gram-a1-launch{margin:10px 0 12px;padding:16px;border-color:#496a68;background:linear-gradient(130deg,#233e43,#19303d)}
.gram-a1-launch strong{font-size:18px}
.gram-a1-launch small{font-size:14px}
.gram-a1-launch em{font-size:14px}
.gram-sound-launch{background:#1c3143;border-color:#455d72}
.gram-sound-launch .gram-a1-mark{background:#31435a}
.gram-bridge-card{border:1px solid #446474;border-radius:20px;padding:19px 17px;margin:12px 0 26px;background:linear-gradient(160deg,#1c3344,#1a2d3d)}
.gram-bridge-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.gram-bridge-language{padding:15px 0;border-bottom:1px solid #354e60}
.gram-bridge-language>span{font-size:12px;color:#bed6d4;font-weight:750;letter-spacing:.08em}
.gram-bridge-words{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.gram-bridge-words button{font-size:clamp(15px,4.1vw,20px);line-height:1.45;padding:9px 11px;color:#eef6f6;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:box-shadow .15s}
.gram-bridge-words button.is-emphasized{box-shadow:0 0 0 2px #f0faf4;border-color:#fff!important}
.gram-bridge-discovery{color:#cae3de;line-height:1.55;font-size:15px;margin:16px 0 0;min-height:24px}
.pron-begin-note,.pron-takeaway{background:#193742;border:1px solid #375e67;border-radius:14px;padding:15px;color:#c9e4dd;font-size:15px;line-height:1.6;margin:11px 0 19px}
.pron-topic-list{display:grid;gap:10px;margin-bottom:27px}
.pron-topic-card{display:flex;align-items:center;gap:14px;width:100%;min-height:81px;background:#172c3f;border:1px solid #3f576b;border-radius:16px;padding:14px;color:#f1f8f8;text-align:left;cursor:pointer}
.pron-topic-number{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:12px;background:#2b4945;color:#c6e9d7;font-weight:800}
.pron-topic-text{display:flex;flex-direction:column;gap:4px;flex:1}
.pron-topic-text strong{font-size:17px}
.pron-topic-text small{color:#bdd1d5;font-size:14px}
.pron-explanation p{font-size:16px;line-height:1.76;color:#e1eded}
.pron-audio-list{display:grid;gap:10px;margin:20px 0}
.pron-audio-item{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:11px;background:#1a3040;border:1px solid #3c556a;border-radius:14px;padding:16px}
.pron-audio-item>div:first-child{display:flex;flex-direction:column;gap:5px;min-width:150px;flex:1}
.pron-audio-item strong{font-size:21px;color:#f4fbfb}
.pron-audio-item span{font-size:15px;color:#d0dfd9}
.pron-audio-item small{font-size:14px;color:#aabfc6;line-height:1.4}
.pron-audio-missing{font-size:13px;color:#c6bbac;border:1px dashed #685e53;border-radius:9px;padding:8px}
.pron-takeaway strong{font-size:16px}
.pron-takeaway p{margin:5px 0 0}
.pron-answers{display:grid;gap:9px;margin-top:15px}
.pron-answers button{appearance:none;width:100%;min-height:49px;background:#223e50;border:1px solid #42667b;color:#eff6f7;border-radius:12px;text-align:left;padding:12px;font-size:15px;cursor:pointer}
.pron-answers button.is-correct{background:#245343;border-color:#7acb9f}
.pron-answers button.is-wrong{background:#4a3939;border-color:#a37c75}
.pron-answers button:disabled{cursor:default;opacity:1}
@media(max-width:400px){.pron-audio-item{display:block}.pron-audio-control{margin-top:12px}.gram-bridge-card{padding:16px 12px}.gram-bridge-words{gap:5px}.gram-bridge-words button{padding:8px}}
/* Small contextual help sits beside headings rather than expanding menus. */
.learn-daily-panel>.palabra-context-help{margin:0 0 6px auto;width:34px;height:34px}
#learnDiscoveryHelp{margin:0 0 13px}
.browse-navigation .primary,.browse-navigation .secondary{font-size:15px}
@media(max-width:390px){.browse-navigation .primary,.browse-navigation .secondary{font-size:14px}}

/* 0.7a.8 P2 – calm audio dialogue controls + comparison cards */
.dialogue-playback{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;margin:1rem 0 1.25rem;padding:.7rem 0}
.dialogue-playback button{min-height:44px;font-size:1rem}
.chat-line{transition:background .2s,border .2s}
.chat-line.is-speaking .chat-bubble{outline:2px solid var(--accent,#789c88);outline-offset:3px}
.chat-play-turn{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:.35rem;border:1px solid var(--line,#d9ded9);border-radius:100px;padding:.52rem .85rem;background:transparent;color:inherit;font-size:.9rem;cursor:pointer;min-height:42px}
.chat-play-turn.audio-playing,.dialogue-playback button.audio-playing{box-shadow:0 0 0 2px rgba(104,149,122,.5)}
.palabra-grammar-audio-controls{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.55rem}
.pron-compare-intro{margin:1rem 0 .7rem}.pron-compare-intro p{margin:.35rem 0;color:var(--muted,#666);font-size:1rem}
.pron-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1rem 0 1.5rem}
.pron-compare-card{background:var(--card,#f7f8f5);border:1px solid var(--line,#ddd);border-radius:16px;padding:1.1rem;display:flex;flex-direction:column;gap:.45rem;min-width:0}
.pron-compare-card>strong{font-size:clamp(1.25rem,3vw,1.7rem);overflow-wrap:anywhere}
.pron-compare-card>span{font-size:1rem}.pron-compare-card>small{font-size:.91rem;line-height:1.5;color:var(--muted,#666)}
.pron-compare-card .pron-audio-control{margin-top:auto;padding-top:.3rem}.pron-compare-card .palabra-audio-controls{display:flex;flex-wrap:wrap;gap:.5rem}
.pron-compare-card .palabra-audio-button{min-height:42px}
.pron-special-note{border-left:3px solid #8ea797;background:rgba(124,160,137,.08);border-radius:8px;padding:1rem;line-height:1.6;margin-top:.5rem}
@media(max-width:410px){.pron-compare-grid{gap:.55rem}.pron-compare-card{padding:.85rem}.pron-compare-card .palabra-audio-button{font-size:.83rem;padding:.45rem}}

/* dark-mode accessibility correction for comparison cards */
.pron-compare-card{background:#1a3040;border-color:#3c556a;color:#f0f5fc}
.pron-compare-card>strong{color:#f1faf7}
.pron-compare-card>span{color:#d0dfd9}
.pron-compare-card>small{color:#b6c9d1}
.pron-compare-intro p{color:#b6c9d1}
.pron-compare-card .palabra-audio-controls{min-width:0}
.pron-compare-card button{max-width:100%}

/* Palabra Lexikon 2.0 – article, grammatical gender and contextual IPA. */
.story-headword-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;margin-top:4px}
.story-panel-header .story-headword-line h3{margin:0 0 5px;line-height:1.28}
.story-headword-ipa{font-size:15px;font-weight:500;letter-spacing:.025em;color:#d3e7f1;line-height:1.35;overflow-wrap:anywhere;font-family:'Segoe UI',Arial,system-ui,sans-serif}
.story-panel-details p.story-noun-article{background:#24453b;border:1px solid #4b806d}
.story-panel-details p.story-noun-article span{font-weight:750;font-size:15px;color:#ecfff4}
.story-panel-details p.story-noun-gender{background:#243d49}
.story-panel-gender-note{margin:8px 0;padding:10px 12px;background:#2a4039;border-left:3px solid #8fcbae;border-radius:9px;font-size:12px;line-height:1.55;color:#deeee6}
.story-panel-gender-note span{display:block;color:#b9e5c9;font-size:10px;letter-spacing:.07em;font-weight:750;margin-bottom:3px}
@media(max-width:390px){.story-headword-ipa{font-size:14px}.story-panel-details p.story-noun-article span{font-size:13px}}

/* Palabra 0.7a.8-P4 – dialogue playlist and meaningful pronunciation pairs. */
.dialogue-playback-progress{font-size:.92rem;color:var(--muted,#9eaab2);font-variant-numeric:tabular-nums;min-height:1.2em}
.dialogue-original{margin:-.45rem 0 1.2rem;font-size:.87rem;color:var(--muted,#9eaab2)}
.dialogue-original summary{cursor:pointer;display:inline-block;padding:.45rem 0;min-height:36px;text-decoration:underline;text-underline-offset:3px}
.dialogue-original p{margin:.4rem 0;font-size:.9rem}
.dialogue-original button{min-height:40px;margin:.35rem 0}
.dialogue-playback button:disabled{opacity:.4;cursor:not-allowed}
.chat-line.is-speaking .chat-bubble{outline:3px solid var(--accent,#80baa2);outline-offset:3px}
.pron-pair-list{display:grid;gap:14px;margin-bottom:22px}
.pron-pair{background:#172c3f;border:1px solid #3f576b;border-radius:18px;padding:17px;color:#f1f8f8}
.pron-pair-words{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);align-items:start;gap:7px}
.pron-pair-word{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.pron-pair-word>strong{font-size:1.45rem;line-height:1.15;overflow-wrap:anywhere}
.pron-pair-word>span:not(.palabra-audio-controls){color:#d0e0e7;font-size:.91rem;line-height:1.4}
.pron-pair-equals{text-align:center;font-size:1.6rem;color:#9edbbf;padding-top:.12rem}
.pron-pair-ipa{text-align:center;color:#cceadc;font-size:1.15rem;margin:12px 0 5px;font-weight:600}
.pron-pair-ipa small{display:block;font-size:.78rem;color:#b4c8d1;font-weight:400;margin-top:3px}
.pron-pair-audio{text-align:center;display:grid;justify-items:center;gap:4px;margin:10px auto}
.pron-audio-intro{font-size:.8rem;color:#b8cad2}
.pron-pair p{font-size:.91rem;line-height:1.5;color:#c6d5de;margin:11px 0 0}
.pron-pair-individual-ipa{font-size:.98rem!important;color:#bfe3d1!important;font-weight:600}
.pron-pair-different .pron-pair-word .palabra-audio-controls,.pron-pair-different .pron-pair-word .palabra-grammar-audio-controls{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pron-pair .palabra-audio-controls button,.pron-pair .palabra-grammar-audio-controls button{min-height:41px;white-space:normal}
.pron-pair .pron-audio-missing{font-size:.82rem;color:#b7cad1;margin:.5rem 0}
.pron-example{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:12px;border:1px solid #3f576b;border-radius:16px;padding:14px;background:#172c3f;color:#f1f8f8}
.pron-example>div:first-child{display:grid;gap:2px}
.pron-example strong{font-size:1.2rem}
.pron-example span,.pron-example small{color:#d0e0e7}
@media(max-width:430px){.pron-pair{padding:13px}.pron-pair-word>strong{font-size:1.25rem}.pron-pair-words{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:6px}.pron-pair-equals{font-size:1.3rem}.dialogue-playback{gap:.5rem}.dialogue-playback button{font-size:.91rem}}

.dialogue-audio-qa{display:inline-flex;align-self:flex-start;color:#bdcdd2;background:#283f4c;padding:3px 9px;border-radius:12px;font-size:.71rem;font-weight:600;letter-spacing:.02em;margin-top:3px}

/* Cuentilo visual rebranding 0.7a.8-P6: brand image only, no layout redesign. */
.brand .logo{display:block;width:39px;height:39px;background:transparent;color:inherit;border-radius:11px;overflow:hidden;flex-shrink:0}
.brand .logo img{display:block;width:39px;height:39px;object-fit:contain}
.brand strong{letter-spacing:-.7px}
@media(max-width:360px){.brand strong{font-size:21px}.brand small{font-size:10px}}

/* P7A: optional pagination for large vocabulary groups and searches. */
.word-more-results,.word-more-group{margin:8px auto 5px;max-width:100%;font-size:13px;min-height:42px}
.word-more-group{margin-top:4px}

/* Cuentilo P8 – Learn/Vocab split, restrained red-thread motif. */
.pillar-vocab{background:#243d45;color:#b4e8d8}
.cuentilo-course-hero{padding-bottom:18px}
.cuentilo-course-hero h1{font-size:clamp(28px,7vw,42px);line-height:1.18}
.cuentilo-course-hero p{color:#b6ccd6;font-size:15px;line-height:1.6;margin-top:7px}
.cuentilo-thread-path{margin:7px 0 22px;padding:15px 17px 9px;background:#162b40;border:1px solid #3a5367;border-radius:19px}
.cuentilo-thread-item{display:grid;grid-template-columns:27px minmax(0,1fr);column-gap:15px;position:relative;padding:2px 0 24px}
.cuentilo-thread-item:last-child{padding-bottom:9px}
.cuentilo-thread-item:not(:last-child):before{content:"";position:absolute;left:13px;top:26px;bottom:-3px;width:2px;background:#b67b73;opacity:.83}
.cuentilo-thread-node{display:grid;place-items:center;height:27px;width:27px;border:2px solid #bd817b;border-radius:50%;background:#352e3c;color:#f0c0b3;font-size:15px;font-weight:700}
.cuentilo-thread-future .cuentilo-thread-node{border-color:#66717d;background:#263344;color:#a7b4bf}
.cuentilo-thread-item .eyebrow{font-size:10px;color:#dbb3ad;letter-spacing:.075em}
.cuentilo-thread-future .eyebrow{color:#9fbbca}
.cuentilo-thread-item h2{font-size:18px;line-height:1.3;margin:5px 0 6px;color:#f1f8f9}
.cuentilo-thread-item p{font-size:13px;color:#b5c8d2;line-height:1.58;margin:0}
.cuentilo-dialogue-entry{border-color:#4a5e69}
.cuentilo-course-note{font-size:13px;line-height:1.6;color:#a9c0ce;margin:15px 0 28px}
.cuentilo-vocab-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
.cuentilo-vocab-actions button{flex:1 1 170px;min-height:44px}
@media(max-width:380px){.cuentilo-thread-path{padding:13px 12px 9px}.cuentilo-thread-item{column-gap:10px}}


/* Cuentilo P9 — reusable practice laboratory. Restrained, mobile-first visual language. */
.cuentilo-practice-entry{margin-top:14px;border-color:#4a5e69}
.p9-dashboard{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0 20px}
.p9-dashboard h2{font-size:clamp(23px,6vw,32px);line-height:1.2;margin:6px 0}
.p9-dashboard p{color:#bacbd5;font-size:14px;line-height:1.6;max-width:460px}
.p9-counter{background:#1e3546;border:1px solid #3e596b;border-radius:14px;padding:12px 16px;text-align:center;min-width:94px}
.p9-counter strong{font-size:20px;color:#f0e9df;display:block;white-space:nowrap}
.p9-counter small{font-size:11px;color:#aec7ce;display:block}
.p9-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:2px 0 19px}
.p9-type{border:1px solid #42576a;background:#172a3d;border-radius:15px;text-align:left;padding:13px 11px;color:#e7f1f0;min-height:110px;display:flex;flex-direction:column;gap:5px;cursor:pointer}
.p9-type>span{color:#d5aaa6;font-size:20px}
.p9-type strong{font-size:14px}
.p9-type small{font-size:11px;line-height:1.36;color:#a9bdcb}
.p9-type.is-current{border-color:#c08b85;background:#293243;box-shadow:inset 0 0 0 1px rgba(192,139,133,.35)}
.p9-exercise{border-radius:19px;padding:20px;border:1px solid #3c5668;background:#16283b}
.p9-card-meta{display:flex;align-items:center;justify-content:space-between;gap:9px;color:#afc7d0;font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.p9-example-nav{display:flex;align-items:center;gap:8px;margin:15px 0 17px}
.p9-dot{background:#273b50;color:#d5e9e8;border:1px solid #486178;border-radius:50%;width:32px;height:32px;cursor:pointer;font-weight:700}
.p9-dot.is-current{background:#7b4c4e;border-color:#d19d94;color:#fff}
.p9-exercise h3{font-size:clamp(19px,5vw,24px);line-height:1.35;margin:3px 0 18px}
.p9-context,.p9-translation,.p9-sentence{background:#20394c;border-radius:13px;border:1px solid #3b596b;padding:17px 14px;margin:14px 0;color:#f2f6f3;font-size:19px;line-height:1.5;text-align:center}
.p9-translation{font-size:18px}
.p9-choices{display:grid;gap:10px;margin:18px 0}
.p9-option{min-height:52px;padding:13px 15px;text-align:left;background:#223a4e;border:1px solid #476076;color:#e8f4f1;border-radius:12px;cursor:pointer;font-size:15px}
.p9-option.is-selected,.p9-ending.is-selected{background:#315d59;border-color:#a1d0c0;box-shadow:inset 0 0 0 1px #a1d0c0}
.p9-instruction{color:#afc8d0;font-size:13px;line-height:1.55}
.p9-form-display{margin:16px 0;background:#20394c;border:1px solid #466379;border-radius:14px;min-height:104px;padding:18px 11px;display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;text-align:center;font-size:20px}
.p9-form-display strong{font-weight:750;color:#fff0e6;border-bottom:2px solid #ca8f87}
.p9-form-display em{font-style:normal;color:#edb7a7}
.p9-choice-label{font-size:11px;font-weight:700;letter-spacing:.1em;color:#a8c3d0;margin:18px 0 10px}
.p9-endings{display:flex;flex-wrap:wrap;gap:9px}
.p9-ending{min-width:67px;min-height:49px;padding:8px 15px;font-weight:700;font-size:17px;background:#213b4c;color:#e4efef;border:1px solid #4d687b;border-radius:12px;cursor:pointer}
.p9-build-zone{display:flex;align-items:center;align-content:flex-start;flex-wrap:wrap;gap:9px;background:#20394c;border:1px dashed #77909b;border-radius:14px;min-height:92px;padding:13px;margin:16px 0}
.p9-placeholder{font-size:13px;color:#adc2d0;line-height:1.5}
.p9-built-chip{padding:11px 13px;background:#376058;color:#fcf9f3;border:1px solid #8eb9a7;border-radius:10px;cursor:pointer;font-weight:600}
.p9-built-chip span{margin-left:4px;opacity:.8}
.p9-wordbank{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}
.p9-wordchip{border:1px solid #6c8290;background:#283f53;border-radius:11px;color:#fff;padding:11px 13px;min-height:44px;cursor:pointer}
.p9-reset{background:none;border:0;color:#a8cbd1;font-size:12px;padding:8px 0;cursor:pointer}
.p9-help-row{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0 13px}
.p9-help{border:1px solid #476174;background:#1c3043;color:#c4dfdf;font-size:13px;padding:10px 13px;border-radius:10px;cursor:pointer;min-height:43px}
.p9-support{border-left:3px solid #c08b85;padding:10px 14px;background:#253649;border-radius:0 11px 11px 0;margin:9px 0}
.p9-support strong{color:#eac6bb;font-size:13px}
.p9-support p{font-size:14px;line-height:1.6;margin:4px 0;color:#e2eeef}
.p9-feedback{margin:16px 0;padding:15px 16px;border-radius:12px;line-height:1.55;background:#283e4b;border:1px solid #5a7881}
.p9-feedback strong{display:block;margin-bottom:4px}
.p9-feedback p{color:#deeaeb;font-size:14px;margin:0}
.p9-success{border-color:#619984;background:#20423e}
.p9-try{border-color:#bb9b74;background:#453e38}
.p9-roles{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.p9-roles>div{border-radius:9px;background:#294f4c;padding:9px 12px;display:flex;flex-direction:column;gap:2px}
.p9-roles small{font-size:11px;color:#c2d9d5}
.p9-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:21px}
.p9-actions button{min-height:46px}
.p9-note{font-size:11px;line-height:1.6;color:#9ab1c0;margin:13px 0 0;overflow-wrap:anywhere}
.p9-footer{border:1px solid #40586a;background:#162b3e;border-radius:14px;padding:14px 16px;margin:16px 0 28px}
.p9-footer strong{font-size:14px}
.p9-footer p{font-size:12px;color:#b3c8d0;line-height:1.6;margin:4px 0 0}
.p9-type:focus-visible,.p9-exercise button:focus-visible{outline:3px solid #e0bd88;outline-offset:2px}
@media(max-width:380px){.p9-dashboard{flex-direction:column}.p9-counter{align-self:stretch;display:flex;justify-content:space-between;align-items:center}.p9-type{padding:10px 7px;min-height:115px}.p9-type strong{font-size:12px}.p9-type small{font-size:10px}.p9-exercise{padding:14px}.p9-actions{grid-template-columns:1fr}}

.p9-type strong{overflow-wrap:anywhere}
.p9-built-chip:disabled{opacity:1;color:#fff;cursor:default}

/* P10 shared Formenwerkstatt: calm mobile-first Cuentilo styling */
.fs-launch-card{margin-top:14px;border-color:#785d5e}
.fs-launch-card p{color:#c2d4d9;line-height:1.6;font-size:14px}
.fs-heading{padding:5px 0 15px}.fs-heading h1{font-size:clamp(28px,6vw,38px);margin:8px 0}
.fs-heading p{line-height:1.6;color:#bccfd7;font-size:14px}
.fs-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.fs-tabs button{min-height:50px;border:1px solid #557081;border-radius:12px;background:#263d50;color:#e6f0ee;cursor:pointer;font-weight:600}
.fs-tabs button.selected{background:#513e48;border-color:#d3a7a1;box-shadow:inset 0 0 0 1px #c58e8e}
.fs-controls{display:grid;gap:12px}.fs-controls label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#b7cad2;font-weight:700}
.fs-controls select{min-height:48px;color:#f1f5f5;background:#20394c;border:1px solid #5b7884;border-radius:11px;padding:9px;font-size:15px;max-width:100%}
.fs-display{background:#1d3346;border:1px solid #506676;border-radius:17px;margin:18px 0;padding:22px 12px;text-align:center}
.fs-display>span{font-size:11px;letter-spacing:.1em;color:#b4c9d0;font-weight:700}
.fs-word{font-size:clamp(29px,7vw,39px);font-weight:750;display:flex;justify-content:center;align-items:center;gap:0;flex-wrap:wrap;margin:12px 0}
.fs-word .fs-stem{color:#f0eee7}.fs-word .fs-ending{color:#ebad9e;border-bottom:3px solid #a66d63}
.fs-display p{font-size:13px;color:#bbd4d5}
.fs-note,.fs-source{border-radius:12px;background:#243b4b;padding:14px 16px;border:1px solid #476176;line-height:1.55;font-size:13px;margin:13px 0;color:#d8e7e8}
.fs-note p,.fs-source p{margin:7px 0 0}.fs-source{border-color:#8f7877}
.fs-table{margin:19px 0}.fs-table h3{font-size:17px;margin:12px 0}
.fs-person-list{display:grid;gap:7px}.fs-person-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;padding:10px 14px;border:1px solid #456273;border-radius:10px;background:#22394b;color:#e7f0ef;text-align:left;cursor:pointer}
.fs-person-row.selected{background:#31564f;border-color:#9ec7b5}.fs-person-row:disabled{opacity:.5;cursor:default}.fs-person-row span{font-size:13px}.fs-person-row strong{font-size:16px}
.fs-full{width:100%;min-height:48px}
.fs-puzzle-head{background:#21384b;border:1px solid #4b6777;border-radius:14px;padding:17px;margin-bottom:16px}
.fs-puzzle-head>span{font-size:11px;color:#d4aaa2;letter-spacing:.07em;font-weight:700}
.fs-puzzle-head h3{font-size:17px;line-height:1.5;margin:9px 0 13px}
.fs-puzzle-head p{font-size:22px;color:#f3eee5;margin:9px 0}.fs-puzzle-head small{color:#b6cbd4;line-height:1.5;display:block}
.fs-forming{display:flex;flex-direction:column;align-items:center;gap:8px;background:#253b4d;border:1px dashed #719098;border-radius:12px;padding:19px 12px;margin-bottom:16px}
.fs-forming>span{font-size:11px;color:#b9ced3;font-weight:700}.fs-forming strong{font-size:27px;color:#f0eee7}.fs-forming i{font-style:normal;color:#edae9f}
.fs-part-title{font-size:13px;color:#c9d8da;letter-spacing:.01em;margin:18px 0 9px}
.fs-tiles{display:flex;flex-wrap:wrap;gap:9px}
.fs-tiles button{border-radius:11px;border:1px solid #597281;background:#263e52;color:#eef5f3;padding:12px 14px;min-height:48px;font-weight:700;cursor:pointer;font-size:16px}
.fs-tiles button.selected{border-color:#d2a398;background:#5a4650}
.fs-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.fs-actions button{min-height:42px}
.fs-action-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0}.fs-action-row button{min-height:50px}
.fs-feedback{border:1px solid #bc9b78;border-radius:11px;padding:14px;background:#443d3d;margin-top:15px}.fs-feedback.good{border-color:#87af99;background:#294940}.fs-feedback p{font-size:13px;line-height:1.5;margin:4px 0 0}
.fs-footnote{font-size:11px;color:#aabec9;line-height:1.7;margin:17px 0}
.story-morph-info{background:#25394b;border-radius:10px;border-left:3px solid #ba887d;padding:12px;margin:11px 0;color:#dbe8e6}
.story-morph-info strong{font-size:12px}.story-morph-info p{font-size:12px;line-height:1.6;margin:7px 0}.story-morph-info button{padding:9px;border-radius:8px;margin:4px;color:#f1f1ea;background:#435467}
.story-form-studio-open{width:100%;border:1px solid #c49990;color:#f6e6df;background:#533d47;padding:13px 14px;border-radius:11px;font-weight:650;margin:12px 0;cursor:pointer}
@media(max-width:390px){.fs-action-row{grid-template-columns:1fr}.fs-person-row{padding:10px}.fs-tiles button{padding:9px 12px;font-size:15px}}

.fs-meaning,.fs-nonfinite{border:1px solid #5e777d;border-radius:12px;background:#223b4a;padding:14px 16px;margin:15px 0;line-height:1.55}
.fs-meaning strong,.fs-nonfinite h3{color:#eac4ba;font-size:14px;margin:0 0 8px}
.fs-meaning p,.fs-nonfinite p{color:#e1edec;font-size:13px;margin:6px 0;line-height:1.65}

/* P12.1: cascading no-dropdown selector, mobile-first, button keyboard support */
.fs-picker{display:grid;gap:12px;margin-top:14px}
.fs-picker-section{padding:14px;border:1px solid #405c6e;border-radius:16px;background:#1c3244}
.fs-picker-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
.fs-picker-title h3{margin:0;font-size:14px;color:#e7eeeb;font-weight:750}
.fs-picker-title span{font-size:12px;color:#eac2b6;background:#324958;padding:5px 8px;border-radius:8px}
.fs-search-label{display:block;font-size:12px;color:#c7d8dd;margin:0 0 6px}
#fs-lemma-search{display:block;width:100%;min-height:43px;border-radius:10px;border:1px solid #63828b;background:#172b3d;color:#f7f4f0;font-size:16px;padding:8px 12px;margin-bottom:10px;appearance:none}
#fs-lemma-search:focus-visible,.fs-choice-card:focus-visible{outline:3px solid #ecc4a3;outline-offset:2px}
.fs-card-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.fs-mood-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.fs-person-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.fs-choice-card{display:flex;align-items:center;justify-content:center;text-align:center;overflow-wrap:anywhere;min-height:45px;padding:8px 7px;border-radius:11px;border:1px solid #526f7d;background:#274154;color:#e5eff0;font-weight:650;line-height:1.35;font-size:13px;cursor:pointer;transition:background-color .12s,border-color .12s}
.fs-choice-card.selected{border-color:#e5b4a3;background:#604751;color:#fff7f1;box-shadow:inset 0 0 0 1px #e0a898}
.fs-choice-card:hover:not(:disabled){border-color:#cda99c}
.fs-choice-card:disabled{opacity:.42;cursor:not-allowed}
.fs-verb-grid .fs-choice-card{min-height:39px}
.fs-picker-hint{font-size:12px;color:#b6cbd2;line-height:1.45;margin:8px 0 0}
@media(min-width:700px){.fs-tense-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fs-person-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:390px){.fs-picker-section{padding:11px}.fs-mood-grid .fs-choice-card{font-size:11px;padding:8px 2px}.fs-person-grid .fs-choice-card{font-size:12px;padding:7px 2px}}

/* P13 · A1 Learn lesson: accessible, responsive cards, independent of Vocab/SRS */
.p13-lesson-entry{border-color:#3b766a;background:linear-gradient(150deg,#193849,#14263c)}
.p13-lesson-entry .tag{background:#234e49;color:#b9f4d8;border-color:#3b776a}
.p13-lesson-entry p{line-height:1.65;color:#bfd1dc;font-size:14px}
.p13-lesson-entry .primary{margin-top:14px}
.p13-meta{display:flex;justify-content:space-between;color:#a8bbc8;font-size:12px;font-weight:700;margin:18px 0 8px}
.p13-meter{height:7px;background:#283c52;border-radius:15px;overflow:hidden;margin-bottom:20px}
.p13-meter span{display:block;height:100%;background:#83dfba;transition:width .25s}
.p13-head{margin:0 0 15px}.p13-head h1{font-size:clamp(26px,6.8vw,38px);letter-spacing:-.8px;line-height:1.1;margin:9px 0}
.p13-card{margin:10px 0 24px;padding:20px}
.p13-card>p{color:#c8d9e4;line-height:1.65;font-size:15px}
.p13-scene-label{font-weight:800;font-size:11px;letter-spacing:1px;color:#92dcbf;margin-bottom:17px}
.p13-hint{background:#203748;color:#c3ded6;border:1px solid #38645e;border-radius:12px;padding:14px;margin:20px 0 12px;font-size:13px;line-height:1.6}
.p13-spanish{font-size:clamp(29px,8vw,42px);font-weight:750;text-align:center;padding:16px 3px 8px;overflow-wrap:anywhere}
.p13-audio{display:flex;justify-content:center;min-height:50px;margin:0 0 14px}
.p13-prompt{font-size:17px!important;line-height:1.5;margin:16px 0 15px!important}
.p13-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.p13-choice{display:flex;align-items:center;gap:10px;text-align:left;min-width:0;min-height:78px;padding:13px;background:#1c3046;color:#eaf5ff;border:1px solid #425771;border-radius:13px;font-size:14px;line-height:1.35;overflow-wrap:anywhere;cursor:pointer}
.p13-choice-id{flex-shrink:0;display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#31485e;font-size:12px;font-weight:700}
.p13-choice.is-correct{border:2px solid #7be3bd;background:#1b433c}
.p13-choice.is-wrong{border:2px solid #ef9b9b;background:#482f3b}
.p13-choice:disabled{opacity:.82;cursor:default}.p13-choice.is-correct:disabled{opacity:1}
.p13-feedback{padding:16px;margin:16px 0;background:#223d45;border:1px solid #42796b;border-radius:13px}
.p13-feedback strong{color:#a5edca}.p13-feedback p{font-size:14px;line-height:1.5;color:#e0eee7;margin:7px 0}.p13-feedback small{color:#aecfc9}
.p13-actions{display:flex;gap:10px;margin-top:21px}.p13-actions .primary{flex:1.3}.p13-actions .secondary{flex:1}
.p13-audio-large{display:grid;gap:10px;margin:19px 0}.p13-listen-state{font-size:13px;color:#b3c9d7!important}
.p13-replay{margin:12px 0 22px}
.p13-transcript{display:grid;gap:10px;margin-top:20px}.p13-line{background:#1c3045;border:1px solid #354f68;border-radius:14px;padding:14px}
.p13-line strong{display:block;color:#9ae6c3;font-size:13px}.p13-line p{margin:7px 0 0;line-height:1.65;font-size:15px}.p13-line-controls{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}
.p13-mini-btn{background:#2a4759;border:1px solid #47717a;border-radius:9px;color:#d7f6e8;padding:8px 11px;min-height:35px;cursor:pointer;font-size:12px}
.p13-line .p13-german{border-top:1px solid #3e5669;color:#b8cad9;padding-top:9px;font-size:14px}
.p13-contrast{display:grid;gap:11px;margin:24px 0}.p13-contrast>div{display:grid;gap:5px;padding:15px;border:1px solid #38556b;background:#1d3346;border-radius:12px}.p13-contrast span{font-weight:750;font-size:18px}.p13-contrast small{color:#aec5d1}
.p13-build-target{min-height:70px;background:#101f31;border:1px dashed #4d7182;border-radius:13px;padding:18px 13px;line-height:1.55;font-size:20px;margin:14px 0}
.p13-tiles{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.p13-tile{padding:13px 16px;background:#28514e;color:#e2fff2;border:1px solid #6aa990;border-radius:11px;font-weight:700;font-size:16px;cursor:pointer}.p13-tile:disabled{opacity:.24}
.p13-reset{margin:12px 0}.p13-check{margin-top:12px}.p13-complete{text-align:center}.p13-star{font-size:52px;color:#9ee7c3}.p13-complete .primary,.p13-complete .secondary{margin-top:12px}
@media(max-width:370px){.p13-choices{grid-template-columns:1fr}.p13-choice{min-height:50px}.p13-card{padding:15px}.p13-actions{flex-direction:column-reverse}}

/* P13.1 – Guided Learn path and high-priority SRS in Vocab */
.p131-course-intro{line-height:1.6;color:#bed0dc;margin:12px 0 19px;font-size:14px}
.p131-course-list{display:grid;gap:14px;margin-bottom:22px}
.p131-lesson-entry{border:1px solid #38675f;background:linear-gradient(155deg,#193849,#14283b);padding:19px}
.p131-lesson-entry h2{font-size:18px}.p131-lesson-entry p{line-height:1.6;color:#bfd1dc;font-size:14px;margin:9px 0 14px}
.p131-lesson-entry .tag{background:#234e49;color:#b9f4d8;border-color:#3b776a}
.p131-due-priority{border:2px solid #81dbb3;background:linear-gradient(140deg,#203f42,#142d39);margin:18px 0 15px;padding:19px}
.p131-due-priority .tag{background:#234e49;color:#b9f4d8}
.p131-due-priority p{line-height:1.6;margin:10px 0}
.p131-review-actions,.p131-build-actions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}
.p131-review-actions>button,.p131-build-actions>button{flex:1;min-width:170px}
.p131-dialogue-question{background:#15394a;border:1px solid #4f8e8a;border-radius:15px;padding:16px;margin-bottom:18px}
.p131-dialogue-question strong{color:#9ae6c3;display:block;font-size:13px;margin-bottom:8px}
.p131-dialogue-question p{font-size:19px;line-height:1.5;margin:0}
.p131-selected-tile{background:#28514e;color:#e2fff2;border:1px solid #6aa990;border-radius:9px;padding:8px 11px;margin:3px;font-size:16px;font-weight:700;cursor:pointer}
.p131-selected-tile:disabled{opacity:1;cursor:default}
@media(max-width:460px){.p131-review-actions,.p131-build-actions{flex-direction:column}.p131-review-actions>button,.p131-build-actions>button{min-width:unset}}

/* Cuentilo P13.2 – A1 dialogues: readable chat bubbles, upfront comprehension frame, bilingual MC. */
.p132-direction{width:max-content;max-width:100%;margin:0 auto 6px;padding:6px 11px;font-weight:800;font-size:11px;letter-spacing:.09em;background:#26484a;border:1px solid #3f7a6e;border-radius:20px;color:#c5f3df}
.p132-question-frame{background:#1c3846;border:1px solid #4c7d7d;padding:14px 15px;border-radius:15px;margin:16px 0}
.p132-question-frame strong{color:#bff3db}.p132-question-frame ol{padding-left:22px;margin:9px 0;display:grid;gap:8px}.p132-question-frame li{font-size:14px;line-height:1.55;color:#e2edf6}
.p132-question-frame p{font-size:13px;line-height:1.5;margin:7px 0 0}
.p132-dialogue-controls{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 17px;align-items:center}
.p132-dialogue-controls button{min-height:42px;white-space:normal}.p132-dialogue-progress{font-size:12px;color:#bbd8cd;min-height:1em;flex-basis:100%}
.p132-chat-scene{padding:12px 13px;background:#142b3b;border:1px solid #355968;border-radius:18px;margin:12px 0 20px;display:flow-root}
.p132-chat-scene .chat-line{margin:12px 0;max-width:91%}.p132-chat-scene .chat-line.mine{margin-left:auto}
.p132-chat-scene .chat-bubble{background:#264356;border:1px solid #416479;color:#f1f7fc;font-size:15px;line-height:1.6;padding:12px 15px;overflow-wrap:anywhere}
.p132-chat-scene .chat-line.mine .chat-bubble{background:#245043;border-color:#4f846e}
.p132-chat-scene .chat-name{font-size:12px;font-weight:700;color:#b9d7df;opacity:1}
.p132-chat-scene .chat-play-turn{min-height:33px;padding:5px 10px;margin:0;font-size:12px;border:1px solid #507a75;background:#254957;color:#d7faee}
.p132-turn-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px}
.p132-translation{max-width:100%;padding:10px 12px;background:#203e4a;border-radius:10px;font-size:13px;line-height:1.5;color:#d6e5ef}
.p132-listen-question{border-top:1px solid #416477;padding-top:12px;margin-top:13px}
.p132-language-insight{background:#193e37;border-left:3px solid #95e5c4;padding:12px;border-radius:8px;color:#e8fff4!important}
.p132-answer-audio{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px;font-weight:750;color:#b7f5d9;font-size:18px}
.p132-answer-audio .palabra-audio-controls{margin:0}
@media(max-width:420px){.p132-chat-scene{padding:10px}.p132-chat-scene .chat-line{max-width:96%}.p132-dialogue-controls button{flex:1}.p132-answer-audio{font-size:16px}}


/* P13.3 – one-window dialogue experience and editable answer composition. */
.p133-dialogue-window{padding:0;overflow:hidden;border:1px solid #426e70}
.p133-dialogue-top{display:flex;gap:10px;align-items:center;padding:15px 18px;background:#1c3b45;border-bottom:1px solid #41686b;color:#e7fff4}
.p133-dialogue-top small{margin-left:auto;color:#b1d5d4;font-size:12px}
.p133-live-dot{width:9px;height:9px;background:#8ce3b6;border-radius:100%;box-shadow:0 0 0 4px #2b594a}
.p133-chat-log{display:flex;flex-direction:column;gap:14px;padding:19px 15px 15px;background:#122939;max-height:46vh;min-height:110px;overflow-y:auto;scrollbar-width:thin}
.p133-chat-line{max-width:90%;display:flex;flex-direction:column;gap:5px}
.p133-chat-line.p133-learner{align-self:flex-end;align-items:flex-end}
.p133-speaker-label{font-size:12px;color:#abd0d8;font-weight:750;padding:0 7px}
.p133-bubble{background:#264659;border:1px solid #426a7c;color:#f3f8fb;border-radius:17px 17px 17px 5px;padding:12px 15px;line-height:1.55;font-size:16px;white-space:normal;overflow-wrap:anywhere}
.p133-learner .p133-bubble{background:#275846;border-color:#4d9878;border-radius:17px 17px 5px 17px}
.p133-composer{padding:16px 17px 21px;background:#1b3244;border-top:1px solid #38566a}
.p133-composer .p13-prompt{margin-top:0!important;font-size:15px!important}
.p133-compose-tip{font-size:13px!important;line-height:1.45!important}
.p133-build-target{display:flex;gap:7px;align-items:center;align-content:flex-start;flex-wrap:wrap;min-height:81px;padding:11px;background:#132738;font-size:17px}
.p133-selected-unit{display:inline-flex;align-items:center;gap:4px;border-radius:11px;background:#27514a;border:1px solid #72ae94;color:#effff6;padding:5px 5px 5px 9px;max-width:100%;user-select:none;cursor:grab}
.p133-selected-unit:active{cursor:grabbing}.p133-selected-unit.p133-dragging{opacity:.48}
.p133-token-word{background:transparent;border:0;padding:5px 4px;color:inherit;font-weight:750;font-size:15px;cursor:pointer;white-space:normal;overflow-wrap:anywhere;text-align:left}
.p133-token-word>span{font-size:15px;opacity:.7;padding-left:3px}
.p133-token-tools{display:flex;gap:2px;border-left:1px solid #588b77;padding-left:4px}
.p133-move{min-width:27px;min-height:32px;border:1px solid #4d8275;background:#1a423e;color:#daf9e9;border-radius:6px;cursor:pointer;font-weight:750;font-size:15px}
.p133-move:disabled{opacity:.23;cursor:default}
.p133-locked-tile{background:#27514a;border:1px solid #72ae94;border-radius:10px;padding:8px 11px;font-weight:750;color:#e9fff2}
.p133-reorder-help{margin:5px 0;font-size:12px!important;color:#accfcd!important;line-height:1.5}
.p133-inline-note{padding:14px 16px;background:#1e4243;border:1px solid #4e7d68;border-radius:12px;margin:0 0 18px}
.p133-inline-note strong{color:#a9f4ca}.p133-inline-note p{line-height:1.6;margin:7px 0 0;font-size:14px;color:#d7eae0}
.p133-transition-feedback{margin:0 0 12px}
@media(max-width:440px){.p133-dialogue-top{padding:13px}.p133-chat-log{padding:14px 10px;max-height:40vh}.p133-composer{padding:12px}.p133-build-target{padding:8px}.p133-selected-unit{padding:4px 3px 4px 6px;gap:2px}.p133-token-word{font-size:14px}.p133-move{min-width:27px;min-height:34px}.p133-chat-line{max-width:95%}}

/* P14: compact, contextual A1 Grammatikhappen and course-workshop cards */
.p14-snack .p14-snack-icon{display:grid;place-items:center;width:40px;height:40px;background:#244b48;border-radius:13px;font-size:24px;color:#9beac8;margin-bottom:10px}
.p14-snack p,.p14-workshop p{line-height:1.65}
.p14-sample-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:16px 0}
.p14-sample{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;border:1px solid #304b62;border-radius:13px;padding:15px;background:#1c3044}
.p14-sample strong{font-size:1.2rem}.p14-sample small{color:#a3b9cb}.p14-sample .palabra-audio-controls{margin-top:4px}
.p14-rule{padding:14px 16px;border-radius:12px;border-left:3px solid #54a382;background:#1a3344;margin:12px 0}
.p14-rule p{margin:5px 0 0}.p14-workshop-entry{border-left:4px solid #64a28c}
.p14-workshop-examples{display:grid;gap:8px;margin:14px 0}.p14-workshop-examples>div{padding:10px 13px;border-radius:10px;background:#1c3044;border:1px solid #304b62}
.p14-workshop .p13-choices{margin:15px 0}.p14-ws-error{font-weight:600;color:#ffbca2}
@media(max-width:490px){.p14-sample-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.p14-sample{padding:11px}.p14-sample strong{font-size:1.05rem}}
