/* Base styles */
:root{
	--bg:#f8faff;
	--card:#ffffff;
	--accent:#4f46e5;
	--muted:#6b7280;
	--max-width:1100px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
	margin:0;
	font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
	background:var(--bg);
	color:#172033;
	-webkit-font-smoothing:antialiased;
}
.container{max-width:var(--max-width);margin:0 auto;padding:0 16px}

/* Header */
.site-header{position:sticky;top:0;z-index:10;background:#ffffffeb;border-bottom:1px solid #e8eaf3;backdrop-filter:blur(14px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{font-weight:800;color:#3730a3;text-decoration:none;font-size:1.1rem;letter-spacing:-.03em}

.nav-toggle{display:none;background:transparent;border:0;font-size:1.4rem}
.site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:18px}
.site-nav a{color:#475569;text-decoration:none;padding:8px 11px;border-radius:999px;font-size:.92rem;font-weight:600;transition:background .15s ease,color .15s ease}
.site-nav a:hover{background:#eef2ff;color:#4338ca}

/* Main */
.main-content{padding:32px 0 52px;min-height:calc(100vh - 150px)}
.card{background:var(--card);border-radius:8px;box-shadow:0 1px 3px rgba(15,23,42,0.06);padding:18px}

/* Footer */
.site-footer{padding:18px 0;border-top:1px solid #eceff4;background:transparent;color:var(--muted);font-size:0.95rem}

/* Responsive */
@media (max-width:800px){
	.nav-toggle{display:block}
	.site-nav{position:absolute;right:16px;top:64px;background:var(--card);border-radius:8px;box-shadow:0 6px 18px rgba(2,6,23,0.08);overflow:hidden;transform-origin:top right;display:none}
	.site-nav.open{display:block}
	.site-nav ul{flex-direction:column;min-width:180px}
	.site-nav a{display:block;padding:12px 16px}
}

@media (max-width:420px){
	.brand{font-size:1rem}
	.container{padding:0 12px}
}

/* Utility spacing */
.mt-6{margin-top:24px}
.mb-6{margin-bottom:24px}

/* Vocabulary page */
.theme-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:0;margin:20px 0;list-style:none}
.theme-list li{background:#ffffff;border:1px solid #e6e9ee;border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,0.06);}
.theme-list a{display:block;padding:18px 16px;color:#111827;text-decoration:none;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}
.theme-list a:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,0.08);color:var(--accent)}

.word-table{width:100%;border-collapse:collapse;margin-top:18px}
.word-table th,.word-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e6e9ee}
.word-table th{background:#f8fafc;font-weight:600;color:#111827}
.word-table tbody tr:hover{background:#f3f4f6}

.vocab-card{padding:24px;background:var(--card);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,0.08);}
.practice-launch{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.practice-launch h2{margin:0}
.practice-launch p{margin:4px 0 0;color:var(--muted)}
.practice-card{margin-top:18px;padding:20px;border:1px solid #e6e9ee;border-radius:14px;background:#ffffff}
.practice-prompt{margin:0 0 16px;font-size:1rem;color:#111827}
.practice-form label{display:block;margin-bottom:8px;font-weight:600}
.practice-form input[type="text"]{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;margin-bottom:16px}
.practice-actions{display:flex;flex-wrap:wrap;gap:12px}
.practice-direction-form{margin:16px 0 0;padding:16px;border:1px solid #e6e9ee;border-radius:14px;background:#f8fafc}
.practice-direction-form fieldset{border:none;padding:0;margin:0}
.practice-direction-form legend{font-weight:700;margin-bottom:10px}
.practice-direction-form label{display:inline-flex;align-items:center;gap:8px;margin-right:18px;color:#111827}
.practice-direction-form input{margin:0}
.answer-feedback{margin-top:18px;padding:16px;border-radius:12px}
.answer-feedback.correct{background:#ecfdf5;color:#164e2d;border:1px solid #d1fae5}
.answer-feedback.incorrect{background:#fef2f2;color:#7f1d1d;border:1px solid #fecaca}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border-radius:999px;border:1px solid transparent;font-weight:700;text-decoration:none;cursor:pointer;transition:all .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:#4338ca}
.btn-secondary{background:#eef2ff;color:#0f172a}
.btn-secondary:hover{background:#dbeafe}

/* Translation practice */
.translation-page{max-width:820px;margin:12px auto 40px}
.translation-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px;padding:12px 4px}
.translation-heading h1{margin:0;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.045em;line-height:1.1;color:#172554}
.translation-eyebrow{margin:0 0 10px;color:#4f46e5;font-size:.76rem;font-weight:800;letter-spacing:.14em}
.translation-subtitle{margin:10px 0 0;color:#64748b;font-size:1.02rem;line-height:1.6}
.difficulty-pill{flex:none;padding:9px 15px;border:1px solid #c7d2fe;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:700}
.translation-mark{display:grid;place-items:center;flex:none;width:62px;height:62px;border-radius:20px;background:linear-gradient(135deg,#4f46e5,#818cf8);box-shadow:0 12px 25px #4f46e533;color:#fff;font-size:1.5rem;font-weight:800;transform:rotate(4deg)}
.translation-card{padding:clamp(20px,4vw,34px);border:1px solid #e2e8f0;border-radius:22px;background:linear-gradient(155deg,#fff 65%,#f8faff);box-shadow:0 18px 50px #0f172a0d}
.translation-mode-note{display:flex;align-items:center;gap:9px;margin:-6px 4px 16px;color:#4338ca;font-size:.9rem;font-weight:700}
.translation-mode-note>span:last-child{color:#64748b;font-weight:400}
.mode-indicator{width:9px;height:9px;border-radius:50%;background:#6366f1;box-shadow:0 0 0 4px #e0e7ff}
.sentence-label{display:flex;align-items:center;gap:10px;color:#64748b;font-size:.7rem;font-weight:800;letter-spacing:.12em}
.sentence-label span{padding:4px 8px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.66rem;letter-spacing:.04em}
.source-sentence{margin:14px 0 28px;padding:0;color:#172554;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:650;line-height:1.5;letter-spacing:-.025em}
.translation-form>label{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px;color:#1e293b;font-size:.95rem;font-weight:750}
.translation-form>label span{color:#94a3b8;font-size:.8rem;font-weight:450}
.translation-form textarea{display:block;width:100%;min-height:150px;resize:vertical;padding:16px 18px;border:1px solid #cbd5e1;border-radius:14px;outline:none;background:#fff;color:#0f172a;font:inherit;font-size:1rem;line-height:1.65;transition:border-color .15s ease,box-shadow .15s ease}
.translation-form textarea::placeholder{color:#94a3b8}
.translation-form textarea:focus,.difficulty-select:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11c}
.translation-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
.translation-actions .btn,.setup-submit{min-height:46px}
.btn-quiet{background:transparent;color:#64748b}
.btn-quiet:hover{background:#f1f5f9;color:#334155}
.translation-feedback{margin-top:20px;padding:14px 16px;border-radius:12px;line-height:1.55}
.translation-feedback.is-correct{border:1px solid #a7f3d0;background:#ecfdf5;color:#065f46}
.translation-feedback.is-error{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}
.translation-feedback.is-neutral{border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af}
.reference-answer{margin-top:20px;padding:18px 20px;border:1px solid #c7d2fe;border-radius:14px;background:#f5f6ff}
.reference-answer p{margin:9px 0 0;color:#312e81;font-size:1.1rem;line-height:1.6}
.translation-back-link{display:inline-block;margin:18px 4px;color:#64748b;font-size:.9rem;text-decoration:none}
.translation-back-link:hover{color:#4f46e5}
.translation-empty h2{margin:0 0 8px;color:#172554}
.translation-empty p{margin:0 0 20px;color:#64748b;line-height:1.6}
.setup-form{display:grid;gap:17px}
.setup-label{margin-bottom:-8px;color:#1e293b;font-weight:750}
.translation-direction-choices,.translation-direction-form fieldset{display:grid;gap:9px;min-width:0;margin:0;padding:0;border:0}
.translation-direction-choices legend,.translation-direction-form legend{margin-bottom:2px;color:#1e293b;font-size:.92rem;font-weight:750}
.translation-direction-choices label,.translation-direction-form label{display:flex;align-items:center;gap:11px;min-height:48px;padding:11px 13px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#334155;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.translation-direction-choices label:has(input:checked),.translation-direction-form label:has(input:checked){border-color:#a5b4fc;background:#f5f3ff;color:#3730a3}
.translation-direction-choices input,.translation-direction-form input[type="radio"]{width:17px;height:17px;flex:none;margin:0;accent-color:#4f46e5}
.translation-direction-choices label span{display:grid;gap:3px}
.translation-direction-choices label strong{font-size:.88rem}
.translation-direction-choices label small{color:#64748b;font-size:.76rem}
.translation-direction-form{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 18px;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#ffffff}
.translation-direction-form fieldset{grid-template-columns:repeat(2,minmax(0,1fr));flex:1}
.translation-direction-form legend{grid-column:1/-1}
.translation-direction-form label{font-size:.86rem}
.translation-direction-form .btn{flex:none}
.difficulty-select{width:100%;padding:13px 15px;border:1px solid #cbd5e1;border-radius:12px;outline:none;background:#fff;color:#0f172a;font:inherit;font-weight:600;transition:border-color .15s ease,box-shadow .15s ease}
.ai-option{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.ai-option:has(input:checked){border-color:#a5b4fc;background:#f5f3ff}
.ai-option input{width:18px;height:18px;flex:none;accent-color:#4f46e5}
.ai-option-copy{display:grid;gap:4px;flex:1}
.ai-option-copy strong{color:#1e293b;font-size:.95rem}
.ai-option-copy small{color:#64748b;font-size:.84rem;line-height:1.5}
.ai-badge{padding:5px 8px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:.62rem;font-weight:800;letter-spacing:.08em}
.setup-submit{justify-self:start;gap:10px;padding-inline:22px}
@media(max-width:560px){
	.translation-heading{align-items:flex-start}
	.translation-mark{width:50px;height:50px;border-radius:16px}
	.translation-mode-note{align-items:flex-start;flex-wrap:wrap}
	.translation-mode-note>span:last-child{flex-basis:100%;margin-left:18px}
	.translation-form>label{display:grid;gap:3px}
	.translation-direction-form{align-items:stretch;flex-direction:column}
	.translation-direction-form fieldset{grid-template-columns:1fr}
	.translation-direction-form .btn{align-self:flex-start}
	.translation-actions{align-items:stretch}
	.translation-actions .btn{flex:1 1 100%}
	.ai-badge{display:none}
}

/* Shared visual system for the rest of the app */
.content-page{max-width:980px;margin:8px auto 40px}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 26px;padding:8px 4px}
.page-heading h1{margin:0;color:#172554;font-size:clamp(1.9rem,4vw,2.65rem);line-height:1.12;letter-spacing:-.045em}
.page-heading .translation-subtitle{max-width:620px}
.results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 2px 14px}
.results-heading h2{margin:0;color:#172554;font-size:1.15rem;letter-spacing:-.02em}
.results-heading>span{color:#64748b;font-size:.85rem}

/* Home dashboard */
.home-page{max-width:1020px;margin:4px auto 36px}
.home-hero{position:relative;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:36px;overflow:hidden;padding:clamp(28px,6vw,62px);border:1px solid #e0e7ff;border-radius:30px;background:radial-gradient(ellipse at 88% 12%,#e0e7ff 0,transparent 38%),linear-gradient(135deg,#fff 38%,#f2f4ff);box-shadow:0 22px 60px #312e8110}
.home-hero-copy h1{margin:0;color:#172554;font-size:clamp(2.7rem,6vw,4.4rem);line-height:1.02;letter-spacing:-.065em}
.home-hero-copy h1 span{color:#4f46e5}
.home-hero-copy>p:not(.translation-eyebrow){max-width:480px;margin:18px 0 24px;color:#64748b;font-size:1.08rem;line-height:1.7}
.home-hero-copy .btn{gap:10px}
.home-language-card{padding:25px;border:1px solid #e2e8f0;border-radius:22px;background:#ffffffed;box-shadow:0 16px 40px #0f172a0b}
.language-card-icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:22px;border-radius:16px;background:#eef2ff;color:#4338ca;font-size:.95rem;font-weight:850;letter-spacing:.04em}
.home-language-card .sentence-label{font-size:.65rem}
.home-language-card h2{margin:8px 0 24px;color:#172554;font-size:1.8rem;letter-spacing:-.04em}
.language-form label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:#475569;font-size:.83rem;font-weight:700}
.language-form label span{color:#94a3b8;font-size:.7rem;font-weight:500}
.language-form-controls{display:flex;gap:8px}
.language-form select,.language-form button{min-height:43px}
.language-form select{min-width:0;flex:1;padding:9px 10px;border:1px solid #cbd5e1;border-radius:11px;background:#fff;color:#172033;font:inherit}
.language-form-controls .btn{padding:9px 14px}
.home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:40px 4px 16px}
.home-section-heading h2{margin:0;color:#172554;font-size:1.5rem;letter-spacing:-.04em}
.home-section-heading .translation-eyebrow{margin-bottom:7px}
.home-section-heading>span{color:#94a3b8;font-size:.88rem}
.home-practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.home-practice-card{position:relative;min-height:230px;padding:22px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 8px 24px #0f172a08;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.home-practice-card:hover{transform:translateY(-4px);border-color:#c7d2fe;box-shadow:0 18px 38px #312e8112}
.practice-card-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;background:#f1f5f9;color:#334155;font-size:1.05rem;font-weight:800}
.practice-card-vocab .practice-card-icon{background:#ecfdf5;color:#047857}
.practice-card-translation .practice-card-icon{background:#eef2ff;color:#4338ca}
.practice-card-verbs .practice-card-icon{background:#fff7ed;color:#c2410c}
.practice-card-stories .practice-card-icon{background:#fdf2f8;color:#be185d}
.practice-card-arrow{position:absolute;top:27px;right:25px;color:#94a3b8}
.home-practice-card h3{margin:24px 0 8px;color:#172554;font-size:1.15rem;letter-spacing:-.02em}
.home-practice-card p{min-height:48px;margin:0 0 17px;color:#64748b;font-size:.9rem;line-height:1.55}
.practice-card-link{color:#4f46e5;font-size:.86rem;font-weight:750}

/* Vocabulary pages */
.theme-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px;margin:0}
.theme-list li{overflow:hidden;border-color:#e2e8f0;border-radius:16px;box-shadow:0 6px 18px #0f172a06;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.theme-list li:hover{transform:translateY(-2px);border-color:#c7d2fe;box-shadow:0 14px 28px #312e810e}
.theme-list a{display:flex;align-items:center;gap:13px;min-height:76px;padding:14px 16px}
.theme-list a:hover{transform:none;box-shadow:none}
.theme-list a>span:nth-child(2){display:grid;gap:4px;flex:1}
.theme-list a strong{color:#1e293b;font-size:.9rem}
.theme-list a small{color:#94a3b8;font-size:.76rem;font-weight:450}
.theme-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:#eef2ff;color:#4f46e5;font-size:.8rem;font-weight:800;text-transform:uppercase}
.all-words-theme .theme-icon{background:#ecfdf5;color:#047857}
.theme-arrow{color:#94a3b8}
.vocabulary-heading{margin-bottom:20px}
.vocabulary-heading>.btn{gap:10px;flex:none}
.word-table{overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 10px 28px #0f172a08}
.word-table th,.word-table td{padding:14px 18px;border-bottom:1px solid #eef2f7}
.word-table th{background:#f8faff;color:#64748b;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.word-table tbody tr:last-child td{border-bottom:0}
.word-table tbody tr:hover{background:#f8faff}

/* Vocabulary practice */
.practice-page{max-width:820px}
.practice-page .practice-direction-form{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 17px}
.practice-direction-form fieldset{display:grid;gap:10px}
.practice-direction-form legend{margin-bottom:2px;color:#1e293b;font-size:.92rem}
.practice-direction-form label{margin:0;padding:9px 12px;border:1px solid #e2e8f0;border-radius:11px;background:#fff;font-size:.88rem}
.practice-direction-form label:has(input:checked){border-color:#a5b4fc;background:#f5f3ff;color:#3730a3}
.practice-direction-form .btn{flex:none}
.direction-auto-note{align-self:center;color:#94a3b8;font-size:.78rem}
.practice-page .practice-card{margin-top:0}
.practice-prompt{margin:16px 0 25px;color:#64748b;font-size:.95rem;line-height:1.6}
.practice-prompt strong{display:block;margin-top:10px;color:#172554;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.25;letter-spacing:-.04em}
.practice-form input[type="text"]{min-height:50px;margin-bottom:14px;padding:13px 15px;border-color:#cbd5e1;border-radius:12px;font:inherit;outline:none}
.practice-form input[type="text"]:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11c}
.practice-actions .btn{min-height:45px}
.practice-page>.translation-back-link{margin-top:20px}

/* Verb search and conjugation */
.verb-search{display:grid;gap:12px;padding:22px}
.verb-search-controls{display:flex;gap:9px}
.verb-search-controls input{min-width:0;flex:1;min-height:48px;padding:12px 15px;border:1px solid #cbd5e1;border-radius:12px;outline:none;font:inherit}
.verb-search-controls input:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11c}
.verb-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:11px;margin:0;padding:0;list-style:none}
.verb-list li:not(.empty-list-item){border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 5px 16px #0f172a06;transition:transform .15s ease,border-color .15s ease}
.verb-list li:not(.empty-list-item):hover{transform:translateY(-2px);border-color:#c7d2fe}
.verb-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;color:#312e81;text-decoration:none;font-weight:700}
.verb-list a span:last-child{color:#a5b4fc}
.empty-list-item{grid-column:1/-1;padding:20px;border:1px dashed #cbd5e1;border-radius:14px;color:#64748b;text-align:center}
.conjugation-page{max-width:1100px}
.conjugation-heading{margin:0 0 20px}
.verb-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:22px}
.verb-overview-item{display:grid;gap:7px;padding:16px 18px;border:1px solid #e2e8f0;border-radius:15px;background:#fff}
.verb-overview-item span{color:#94a3b8;font-size:.67rem;font-weight:800;letter-spacing:.11em}
.verb-overview-item strong{color:#312e81;font-size:1.05rem}
.verb-overview-item small{color:#64748b}
.tense-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.tense-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:17px;background:#fff;box-shadow:0 8px 24px #0f172a08}
.tense-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;border-bottom:1px solid #e8eaf3;background:linear-gradient(110deg,#f8faff,#fff)}
.tense-card h2{margin:0;color:#172554;font-size:1rem;letter-spacing:-.02em}
.tense-card>header span{padding:5px 8px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:.66rem;font-weight:700}
.tense-card ul{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:5px 16px;list-style:none}
.tense-card li{display:grid;gap:3px;min-width:0;padding:10px 3px;border-bottom:1px solid #f1f5f9}
.tense-card li span{color:#94a3b8;font-size:.76rem}
.tense-card li strong{overflow-wrap:anywhere;color:#334155;font-size:.83rem;font-weight:650}

/* Stories */
.story-text-card{margin-bottom:16px}
.story-text{margin-top:16px;color:#334155;font-size:1.02rem;line-height:1.9;white-space:pre-line}
.story-questions-card{display:grid;gap:20px}
.story-questions-card>.translation-eyebrow{margin:0}
.story-question{display:grid;gap:10px}
.story-question label{display:flex;align-items:flex-start;gap:11px;color:#1e293b;font-weight:700;line-height:1.55}
.story-question label span{display:grid;place-items:center;width:26px;height:26px;flex:none;border-radius:9px;background:#fdf2f8;color:#be185d;font-size:.78rem}
.story-question textarea{width:100%;min-height:76px;resize:vertical;padding:12px 14px;border:1px solid #cbd5e1;border-radius:12px;outline:none;color:#0f172a;font:inherit;line-height:1.55}
.story-question textarea:focus{border-color:#db2777;box-shadow:0 0 0 4px #db27771a}
.story-questions-card>.btn{justify-self:start}
.story-responses{margin-top:16px}
.story-response{padding:14px 0;border-bottom:1px solid #eef2f7}
.story-response:last-child{border-bottom:0}
.story-response strong{color:#334155;line-height:1.5}
.story-response p{margin:7px 0 0;color:#64748b;white-space:pre-wrap}
.story-score-row{display:flex;align-items:center;gap:10px;margin-top:12px;color:#475569;font-size:.9rem;line-height:1.5}
.story-score{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}
.story-score.score-high{background:#ecfdf5;color:#047857}
.story-score.score-mid{background:#fffbeb;color:#b45309}
.story-score.score-low{background:#fef2f2;color:#b91c1c}
.story-response p.story-reference-answer{margin-top:10px;padding:11px 13px;border-radius:10px;background:#f8faff;color:#475569;line-height:1.55}
.story-new-form{margin-top:16px}

@media(max-width:760px){
	.home-hero{grid-template-columns:1fr;gap:25px}
	.home-language-card{max-width:420px}
	.home-practice-grid{grid-template-columns:1fr}
	.home-practice-card{min-height:0}
	.home-practice-card p{min-height:0}
}
@media(max-width:560px){
	.page-heading{align-items:flex-start}
	.page-heading>.translation-mark{width:48px;height:48px;border-radius:15px}
	.vocabulary-heading{display:grid}
	.vocabulary-heading>.btn{justify-self:start}
	.practice-page .practice-direction-form{align-items:stretch;flex-direction:column}
	.practice-direction-form .btn{align-self:flex-start}
	.direction-auto-note{align-self:flex-start}
	.verb-search-controls{flex-wrap:wrap}
	.verb-search-controls input{flex-basis:100%}
	.tense-grid{grid-template-columns:1fr}
	.word-table th,.word-table td{padding:11px 12px}
}
