:root{--bg: #1a1a2e;--bg-card: #16213e;--bg-input: #0f3460;--text: #e0e0e0;--text-muted: #999;--text-dim: #667;--accent: #D7141A;--accent-soft: #533483;--accent-soft-text: #c9a0dc;--accent-danger: #7c1d2e;--text-bright: #fff;--color-formal-bg: #1b4332;--color-formal: #95d5b2;--color-informal-bg: #3d1f00;--color-informal: #f4a261;--border: #2a2a4a;--radius: 8px;--font: system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.container{max-width:600px;margin:0 auto;padding:1rem 1rem 2rem}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.header h1{font-size:1.25rem;font-weight:700}.header-sub{font-size:.8rem;color:var(--text-dim)}.nav{display:flex;gap:.25rem;margin-bottom:1rem;background:var(--bg-card);border-radius:var(--radius);padding:.25rem}.nav button{flex:1;padding:.6rem .35rem;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.nav button.active{background:var(--accent);color:var(--text-bright)}.controls{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.search-wrapper{position:relative}.search-input{width:100%;padding:.65rem 2.25rem .65rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-size:.95rem;outline:none}.search-input::placeholder{color:var(--text-dim)}.search-input:focus{border-color:var(--accent)}.search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:.25rem;line-height:1}.search-input:placeholder-shown+.search-clear{display:none}.search-clear:hover{color:var(--text)}.filter-row{display:flex;gap:.5rem}.filter-row select,.filter-row button{flex:1}.filter-row button{padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-size:.85rem;cursor:pointer;outline:none}.filter-row button:focus{border-color:var(--accent)}.sort-btn.active{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--text-bright)}.count{font-size:.8rem;color:var(--text-dim);margin-bottom:.5rem}.empty-state{text-align:center;color:var(--text-dim);padding:2rem 1rem;font-size:.9rem;line-height:1.5}.list-with-index{position:relative}.phrase-list{display:flex;flex-direction:column;gap:.5rem}.letter-index{position:fixed;right:.25rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;z-index:50;padding:.25rem 0;background:color-mix(in srgb,var(--bg) 85%,transparent);border-radius:999px;user-select:none;-webkit-user-select:none}.letter-index span{display:block;padding:.05rem .35rem;font-size:.6rem;font-weight:600;color:var(--text-muted);cursor:pointer;line-height:1.3}.letter-index span:active{color:var(--accent)}.phrase-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem}.phrase-top{display:flex;align-items:center;gap:0}.phrase-top .phrase-main{flex:1}.phrase-item .phrase-main{margin-bottom:.25rem;line-height:1.4}.phrase-item .czech{font-weight:600;color:var(--text-bright)}.phrase-item .separator{color:var(--text-dim);margin:0 .35rem}.phrase-item .english{color:var(--text-muted)}.phrase-item .meta{display:flex;gap:.4rem;align-items:center;margin-top:.3rem}.badge{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.7rem;background:var(--accent-soft);color:var(--text-muted)}.badge.formal{background:var(--color-formal-bg);color:var(--color-formal)}.badge.informal{background:var(--color-informal-bg);color:var(--color-informal)}.phrase-item .notes{font-size:.8rem;color:var(--text-dim);margin-top:.35rem;line-height:1.35}.star-btn{background:none;border:none;font-size:1.2rem;color:var(--text-dim);cursor:pointer;padding:.4rem 0;min-width:36px;min-height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;margin-right:-.5rem}.star-btn.starred{color:#f5c518}.card-star{position:absolute;top:.25rem;right:.25rem}.star-filter-btn{flex:0 0 auto!important;width:44px;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text-dim);font-size:.95rem;cursor:pointer;outline:none}.star-filter-btn.active{background:var(--accent-soft);border-color:var(--accent-soft);color:#f5c518}.card-controls{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.card-controls button{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-size:.85rem;cursor:pointer;outline:none}.card-controls button:active{background:var(--accent-soft)}.flashcard-wrapper{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-top:1rem}.flashcard{position:relative;width:100%;min-height:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .15s,transform .15s;text-align:center;animation:cardIn .2s ease-out}@keyframes cardIn{0%{opacity:.6;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.flashcard:active{border-color:var(--accent);transform:scale(.98)}.flashcard .prompt{font-size:1.5rem;font-weight:600;color:var(--text-bright);line-height:1.3}.flashcard .hint{font-size:.85rem;color:var(--text-dim);margin-top:1rem}.flashcard .divider{width:60%;height:1px;background:var(--border);margin:1rem 0}.flashcard .answer{font-size:1.2rem;color:var(--text-muted);line-height:1.3}.flashcard .card-notes{font-size:.85rem;color:var(--text-dim);margin-top:.75rem;line-height:1.3}.card-nav{display:flex;align-items:center;gap:1.5rem}.card-nav button{padding:.6rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-size:1rem;cursor:pointer;min-width:44px;min-height:44px}.card-nav button:disabled{opacity:.3;cursor:default}.card-nav .progress{font-size:.9rem;color:var(--text-muted);min-width:70px;text-align:center}@media(hover:hover){.nav button:not(.active):hover{background:#ffffff0d;color:var(--text)}select:hover,.phrase-item:hover,.flashcard:hover{border-color:var(--accent-soft)}.sort-btn:hover{border-color:var(--accent)!important}.card-nav button:not(:disabled):hover,.card-controls button:hover{background:var(--accent-soft);border-color:var(--accent-soft)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}@media(min-width:700px){.phrase-list{display:grid;grid-template-columns:1fr 1fr}}.hidden{display:none}.header-actions{display:flex;align-items:center;gap:.5rem}.add-btn,.export-btn{border:1px solid transparent;border-radius:var(--radius);padding:.35rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer}.add-btn{background:var(--accent);color:var(--text-bright)}.export-btn{background:var(--bg-input);color:var(--text-muted);border-color:var(--border)}.user-badge{background:var(--accent-soft);color:var(--accent-soft-text)}.delete-phrase-btn{background:none;border:1px solid color-mix(in srgb,var(--accent) 40%,black);color:var(--accent);border-radius:var(--radius);padding:.2rem .5rem;font-size:.7rem;cursor:pointer;margin-top:.4rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;width:100%;max-width:400px;max-height:90vh;overflow-y:auto}.modal h2{font-size:1.1rem;margin-bottom:1rem}.form-row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.form-row span{font-size:.8rem;color:var(--text-muted)}.form-row input,.form-row textarea{background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;font-size:.9rem;font-family:var(--font)}.form-row input:focus,.form-row textarea:focus{border-color:var(--accent);outline:none}.form-error{color:var(--accent);font-size:.8rem;min-height:1.2em;margin-bottom:.5rem}.form-actions{display:flex;gap:.5rem;justify-content:flex-end}.form-actions button{padding:.5rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:.85rem;cursor:pointer}.form-actions button.primary{background:var(--accent);border-color:var(--accent);color:var(--text-bright);font-weight:600}.form-actions button.danger{background:var(--accent-danger);border-color:var(--accent-danger);color:var(--text-bright);font-weight:600}.delete-preview{padding:.75rem;background:var(--bg);border-radius:var(--radius);margin-bottom:.75rem;line-height:1.5}.delete-preview .czech{font-weight:600;color:var(--text-bright)}.delete-preview .separator{color:var(--text-dim);margin:0 .35rem}.delete-preview .english{color:var(--text-muted)}.delete-warning{font-size:.8rem;color:var(--text-muted);margin-bottom:1rem}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem 1.75rem .5rem .5rem;font-size:.85rem;font-family:var(--font);cursor:pointer;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ccc' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center}select:focus{border-color:var(--accent)}.scenario-select{width:100%;margin-bottom:.75rem}.scenario-direction{margin-bottom:.75rem}.scenario-context{font-size:.85rem;color:var(--text-dim);margin-bottom:1rem;line-height:1.4;font-style:italic}.exchange-list{display:flex;flex-direction:column;gap:.5rem}.exchange-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem;cursor:pointer}.exchange-item .exchange-prompt{font-size:.9rem;color:var(--text);margin-bottom:.3rem}.exchange-item .exchange-answer{font-size:.85rem;color:var(--text-dim);border:1px dashed var(--border);border-radius:4px;padding:.35rem .5rem;margin-top:.25rem;text-align:center}.exchange-item .exchange-answer.revealed{color:var(--color-formal);font-weight:500;border-style:solid;border-color:transparent;background:color-mix(in srgb,var(--color-formal) 8%,transparent);text-align:left}.scenario-actions{display:flex;gap:.5rem;margin-top:1rem}.scenario-actions button{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-size:.85rem;cursor:pointer}@media(hover:hover){.exchange-item:hover{border-color:var(--accent-soft)}.scenario-actions button:hover{background:var(--accent-soft);border-color:var(--accent-soft)}}.guide{margin-top:.5rem}.guide-meta{font-size:.85rem;color:var(--text-dim);margin-bottom:1rem;font-style:italic}.guide-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.5rem}.guide-section summary{padding:.75rem 1rem;font-weight:600;font-size:.95rem;cursor:pointer;color:var(--text-bright);list-style:none;display:flex;justify-content:space-between;align-items:center}.guide-section summary:after{content:"+";color:var(--text-dim);font-size:1.1rem}.guide-section[open]>summary:after{content:"−"}.guide-section summary::-webkit-details-marker{display:none}.guide-section-body{padding:0 1rem .75rem;font-size:.88rem;line-height:1.5;color:var(--text-muted)}.guide-section-body p{margin:.35rem 0}.guide-section-body strong{color:var(--text)}.guide-subsection{border:none;border-top:1px solid var(--border);border-radius:0;margin-bottom:0;background:transparent}.guide-subsection summary{font-size:.88rem;padding:.6rem .5rem}.guide-category{border:none;border-top:1px solid var(--border);border-radius:0;margin-bottom:0;background:transparent}.guide-category summary{padding:.65rem .5rem;font-weight:600;font-size:.9rem;cursor:pointer;color:var(--text-bright);list-style:none;display:flex;justify-content:space-between;align-items:center}.guide-category summary:after{content:"+";color:var(--text-dim);font-size:1rem}.guide-category[open]>summary:after{content:"−"}.guide-category summary::-webkit-details-marker{display:none}.guide-category-body{padding:0 .25rem .5rem}.guide-table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.82rem}.guide-table th{text-align:left;padding:.35rem .5rem;color:var(--text-dim);font-weight:600;border-bottom:1px solid var(--border);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.guide-table td{padding:.35rem .5rem;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.guide-table td:first-child{color:var(--text-bright);font-weight:500}.guide-example{background:var(--bg);border-radius:4px;padding:.4rem .6rem;margin:.35rem 0;display:flex;flex-wrap:wrap;gap:.3rem .6rem}.guide-example .czech{color:var(--text-bright);font-weight:500}.guide-example .english{color:var(--text-muted)}.guide-example .note{color:var(--text-dim);font-size:.8rem;flex-basis:100%}.guide-starter{background:var(--bg-input);border:1px solid var(--accent);border-radius:var(--radius);padding:.75rem 1rem;margin:.5rem 0;text-align:center}.guide-starter .czech{font-size:1.05rem;font-weight:600;color:var(--text-bright)}.guide-starter .phonetic{font-size:.82rem;color:var(--accent);margin:.3rem 0}.guide-starter .english{font-size:.88rem;color:var(--text-muted)}.guide-starter .note{font-size:.78rem;color:var(--text-dim);margin-top:.3rem}.guide-philosophy{font-style:italic;color:var(--text);margin-bottom:.5rem}.guide-note{font-size:.82rem;color:var(--text-dim);font-style:italic}.guide-note-spaced{margin-top:.75rem}.guide-week{background:var(--bg);border-radius:var(--radius);padding:.6rem .75rem;margin-bottom:.4rem}.guide-week-header{font-weight:600;color:var(--text-bright);font-size:.85rem;margin-bottom:.2rem}.guide-week-goal{font-size:.82rem;color:var(--text-muted)}.guide-week-detail{font-size:.8rem;color:var(--text-dim)}.guide-section-body ul,.guide-category-body ul{padding-left:1.2rem;margin:.35rem 0}.guide-section-body ul li,.guide-category-body ul li{margin-bottom:.25rem}@media(hover:hover){.guide-section:not(.guide-subsection):hover{border-color:var(--accent-soft)}.guide-section summary:hover,.guide-category summary:hover{color:var(--accent)}}
