:root{--accent: #4f80ff;--accent-light: #e8eeff;--bg: #f5f5f7;--surface: #ffffff;--border: #dde1e9;--text: #1a1a2e;--text-muted: #6b7280;--danger: #ef4444;--radius: 8px;--shadow: 0 1px 4px rgba(0, 0, 0, .08);font-family:system-ui,-apple-system,sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;overflow-x:hidden}main{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.5rem}h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.app-hero{margin-bottom:1.5rem}.app-eyebrow{display:inline-block;margin-bottom:.5rem;padding:.2rem .55rem;border-radius:999px;background:var(--accent-light);color:var(--accent);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.app-subtitle{max-width:760px;margin-top:.75rem;color:var(--text-muted);font-size:1rem}.steps{display:flex;gap:.25rem;margin-bottom:2rem;align-items:center;flex-wrap:wrap}.step{padding:.35rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;color:var(--text-muted);background:transparent;transition:background .15s}.step.active{background:var(--accent);color:#fff}.step.done{color:var(--text);cursor:pointer}.step.done:hover{background:var(--border)}.step-divider{width:24px;height:1px;background:var(--border)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.form-section{margin-bottom:1.25rem}.section-header{margin-bottom:.7rem}.section-header h2{margin-bottom:.3rem;font-size:1rem}.section-header p{color:var(--text-muted);font-size:.86rem;max-width:680px}.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.advanced-settings{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:#fbfcff}.advanced-settings summary{cursor:pointer;list-style:none;padding:.9rem 1rem;font-weight:600}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary:after{content:"+";float:right;color:var(--text-muted)}.advanced-settings[open] summary:after{content:"-"}.advanced-settings-body{padding:0 1rem 1rem;border-top:1px solid var(--border)}.advanced-card-types{margin-top:1rem}.table-hint{margin-top:.7rem;color:var(--text-muted);font-size:.82rem}.table-hint code{padding:.05rem .28rem;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.submit-row{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin-top:1rem}.export-deck-name{margin:1rem 0 1.15rem;text-align:left}label{display:block;font-weight:500;margin-bottom:.75rem}label small{display:block;color:var(--text-muted);font-weight:400;font-size:.8rem;margin-top:.15rem}input[type=text],input[type=email],input:not([type]),textarea,select{display:block;width:100%;padding:.45rem .65rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;background:var(--surface);color:var(--text);margin-top:.3rem;transition:border-color .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #4f80ff26}textarea{resize:vertical;font-family:monospace}button{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9rem;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:var(--bg)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover:not(:disabled){background:#3b6ee8;border-color:#3b6ee8}.progress-bar-wrap{height:4px;background:var(--border);border-radius:2px;margin-bottom:1.25rem;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.progress-label{font-size:.8rem;color:var(--text-muted);margin-bottom:.35rem}.review-layout{display:flex;gap:1.5rem;align-items:flex-start}.review-sidebar{width:160px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;box-shadow:var(--shadow)}.review-sidebar h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.5rem}.sidebar-word{display:block;width:100%;text-align:left;background:none;border:none;padding:.3rem .5rem;border-radius:5px;font-size:.88rem;cursor:pointer;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-word:hover{background:var(--bg)}.sidebar-word.active{background:var(--accent-light);color:var(--accent);font-weight:600}.review-main{flex:1;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.review-word-title{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.25rem}.review-section{margin-bottom:1.25rem}.review-section-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.4rem;display:flex;align-items:center;gap:.6rem}.toggle-switch{display:inline-flex;cursor:pointer;flex-shrink:0}.toggle-switch input{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;width:2.5rem;height:1.375rem;border-radius:999px;background:var(--border);transition:background .18s}.toggle-switch input:checked+.toggle-track{background:var(--accent)}.toggle-thumb{position:absolute;top:.1875rem;left:.1875rem;width:1rem;height:1rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .18s}.toggle-switch input:checked+.toggle-track .toggle-thumb{transform:translate(1.125rem)}.cloze-input-row{display:flex;gap:.5rem;align-items:flex-start}.cloze-textarea{flex:1;resize:vertical;min-height:3rem;font-family:inherit;font-size:.95rem}.cloze-apply-btn{white-space:nowrap;flex-shrink:0}.cloze-preview{font-size:.9rem;color:var(--text-muted);margin-top:.35rem;padding:.3rem .5rem;background:var(--surface-2, var(--border));border-radius:4px}.audio-badge{display:inline-block;font-size:.72rem;background:var(--border);color:var(--text-muted);padding:.1rem .45rem;border-radius:999px;margin-left:.4rem;vertical-align:middle}.sentence-list{list-style:none;margin-bottom:.5rem;display:flex;flex-direction:column;gap:2px;max-height:12.5rem;overflow-y:auto;padding-right:.2rem}.sentence-item{padding:.4rem .65rem;border-radius:5px;cursor:pointer;border-left:3px solid transparent;font-size:.9rem;transition:background .1s}.sentence-item:hover{background:var(--bg)}.sentence-item.selected{background:var(--accent-light);border-left-color:var(--accent)}.sentence-translation{color:var(--text-muted);font-size:.82rem;margin-left:.4rem}.review-main audio{width:100%;max-width:100%}.review-nav{display:flex;gap:.75rem;margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--border);align-items:center}.review-nav .spacer{flex:1}.export-screen{text-align:center;padding:3rem 1.5rem}.export-screen h2{font-size:1.4rem;margin-bottom:.5rem}.export-screen p{color:var(--text-muted);margin-bottom:1.5rem}.feedback-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);text-align:left}.feedback-label{display:block;font-size:.9rem;color:var(--text-muted);margin-bottom:.5rem}.feedback-textarea{width:100%;resize:vertical;font-family:inherit;font-size:.95rem;margin-bottom:.5rem}.feedback-submit{font-size:.9rem}.feedback-thanks{font-size:.9rem;color:#22c55e;margin:0!important}.lead-form{max-width:460px;margin:0 auto 1.5rem;text-align:left;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,#fff,#f8fbff)}.lead-copy{font-size:.92rem;color:var(--text-muted);margin-bottom:1rem}.export-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.error-msg{color:var(--danger);font-size:.88rem;margin-top:.5rem}.warning-text{color:#b45309;font-size:.85rem;margin-top:.45rem}.inline-code{display:inline-block;margin-left:.35rem;padding:.08rem .38rem;border-radius:999px;border:1px solid #f5d7a1;background:#fff7ed;font-family:monospace;font-size:.8rem;color:#92400e}@media(max-width:760px){main{padding:1rem .9rem 3rem}h1{font-size:1.3rem}.app-subtitle{font-size:.94rem}.steps{gap:.45rem;margin-bottom:1.4rem}.step{padding:.3rem .75rem;font-size:.8rem}.step-divider{display:none}.setup-grid{grid-template-columns:1fr}.submit-row{flex-direction:column;align-items:stretch}.review-layout{flex-direction:column;gap:.9rem}.review-sidebar{width:100%;padding:.65rem}.review-sidebar h3{margin-bottom:.55rem}.review-sidebar{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.review-sidebar h3{width:100%}.sidebar-word{width:auto;max-width:100%;border:1px solid var(--border);background:var(--bg);padding:.35rem .65rem;font-size:.82rem}.sidebar-word.active{border-color:var(--accent)}.review-main{padding:1rem}.review-word-title{font-size:1.3rem;margin-bottom:1rem}.sentence-item{padding:.5rem .6rem;line-height:1.4}.sentence-translation{display:block;margin-left:0;margin-top:.2rem}.review-nav{flex-wrap:wrap;gap:.6rem}.review-nav .spacer{display:none}.review-nav>*{width:100%;justify-content:center}.review-nav button{width:100%;justify-content:center}.export-screen{padding:2rem 1rem}.lead-form{max-width:100%}.export-actions{flex-direction:column}.export-actions button{width:100%;justify-content:center}}.word-table{width:100%;border-collapse:collapse;margin-bottom:.75rem}.word-table th{text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);padding:0 .5rem .5rem;border-bottom:2px solid var(--border)}.word-table td{padding:2px;vertical-align:middle}.word-table input{width:100%;padding:.35rem .5rem;border:1px solid transparent;border-radius:4px;background:transparent;font-size:.9rem;font-family:inherit;color:var(--text);margin-top:0;transition:border-color .12s,background .12s}.word-table input:hover{border-color:var(--border);background:var(--bg)}.word-table input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #4f80ff26}.word-table tr:hover .row-remove{opacity:1}.row-remove{opacity:0;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.2rem .4rem;border-radius:4px;font-size:1rem;line-height:1;transition:opacity .12s,background .12s,color .12s}.row-remove:hover{background:#fee2e2;color:var(--danger);opacity:1}.card-type-toggle{display:flex;flex-direction:column;align-items:stretch;padding:0;border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .15s,box-shadow .15s,opacity .15s;text-align:left;overflow:hidden;opacity:.55}.card-type-toggle:hover:not(:disabled){border-color:#bcc5d6;opacity:.8}.card-type-toggle.active{border-color:var(--accent);opacity:1;box-shadow:0 0 0 3px #4f80ff26}.card-type-toggle-name{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);padding:.35rem .65rem .3rem;border-bottom:1px solid var(--border);background:var(--bg)}.card-type-toggle.active .card-type-toggle-name{color:var(--accent);background:var(--accent-light);border-bottom-color:#4f80ff33}.mini-flashcard{display:flex;align-items:stretch;font-size:.78rem}.mini-flashcard-side{display:flex;flex-direction:column;gap:.2rem;padding:.45rem .6rem;flex:1;min-width:0}.mini-flashcard-side-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600;opacity:.7}.mini-flashcard-item{display:block;color:var(--text);font-size:.8rem}.mini-flashcard-arrow{display:flex;align-items:center;color:var(--text-muted);font-size:.9rem;padding:0 .1rem;opacity:.5;flex-shrink:0}.optional-tag{display:inline-block;font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.05rem .4rem;margin-left:.4rem;vertical-align:middle;opacity:.8}.login-screen{display:flex;justify-content:center;padding-top:3rem}.login-card{width:100%;max-width:400px}.muted{color:var(--text-muted)}.loading-text{color:var(--text-muted);font-size:.88rem;font-style:italic}
