.modal{background-color:var(--card-bg)!important;border-radius:8px;max-width:500px;width:90%;box-shadow:0 2px 10px #0000001a}.modal.-white h2{color:#fff!important}.modal h2 svg{font-size:1.5rem}.premium-features{text-align:left;margin:1rem 0;padding-left:1.5rem;list-style-type:none}.premium-features li{margin:.5rem 0;color:var(--text-color);position:relative;padding-left:1.5rem}.premium-features li:before{content:"✓";color:gold;position:absolute;left:0}.modal p{color:var(--text-color);line-height:1.6;margin:1rem 0}.modal-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.modal .primary-button{background-color:#007bff;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:4px;font-weight:700;cursor:pointer;transition:background-color .2s}.modal .primary-button:hover{background-color:#0056b3}.modal .secondary-button{background-color:transparent;color:var(--text-color);border:1px solid #ddd;padding:.8rem 1.5rem;border-radius:4px;cursor:pointer;transition:all .2s}.edit-input:disabled,.mastery-select:disabled,.delete-button:disabled,.csv-button:disabled,.search-input:disabled{background-color:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;opacity:.7}.csv-button:disabled .button-icon{opacity:.5}.csv-button,.add-button,.delete-button{padding:.5rem 1rem;border-radius:4px;border:1px solid var(--border-color);background-color:var(--button-bg);color:var(--text-color);cursor:pointer;transition:all .2s}.csv-button:hover:not(:disabled),.add-button:hover:not(:disabled),.delete-button:hover:not(:disabled){background-color:var(--button-hover-bg)}.premium-notice{background-color:#f8f9fa;border:2px solid #ffd700;border-radius:8px;padding:20px;margin-bottom:20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:15px}.premium-notice svg{color:gold;font-size:2rem}.premium-notice p{margin:0;color:#666;line-height:1.5}.premium-notice .upgrade-button{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s}.premium-notice .upgrade-button:hover{background-color:#0056b3}.trial-badge{font-size:.8em;background-color:#007bff;color:#fff;padding:2px 6px;border-radius:12px;margin-left:8px}.premium-badge{font-size:.8em;background-color:gold;color:#333;padding:2px 6px;border-radius:12px;margin-left:8px}.trial-count{font-size:1.1em;color:#ff9800;margin:15px 0;font-weight:700}.delete-button{background:none;border:none;color:#f44;cursor:pointer;padding:5px;border-radius:4px;transition:background-color .2s}.delete-button:hover{background-color:#ff44441a}.delete-button:disabled{color:#ccc;cursor:not-allowed}.delete-button:disabled:hover{background:none}.generator-button{background-color:var(--primary-color);color:#fff}.generator-button:hover{background-color:var(--primary-color-dark)}.generator-modal{padding:0!important;width:90%;max-width:800px;overflow-y:auto;margin:10px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0}.close-button{padding:0;margin:0;background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-secondary)}.modal-content{padding:10px 0}.ai-generator-controls{margin-top:10px;display:flex;justify-content:flex-start}.ai-generator-controls .operation-button{width:100%;max-width:200px}.button-group{display:flex;gap:10px;width:100%}.add-button,.ai-generate-button{flex:1;padding:8px 15px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s;border:none;color:#fff;position:relative;overflow:hidden;background:linear-gradient(135deg,#6c5ce7,#a29bfe,#8e44ad);background-size:200% 200%;animation:gradientAnimation 3s ease infinite;display:flex;align-items:center;justify-content:center;gap:8px}.ai-generate-button{box-shadow:0 4px 6px #6c5ce733}@media screen and (max-width: 768px){.ai-generate-button{flex-direction:column}}.ai-generate-button:hover{transform:translateY(-2px);box-shadow:0 7px 14px #6c5ce74d;background-size:150% 150%}.ai-generate-button:active{transform:translateY(1px);box-shadow:0 2px 4px #6c5ce733}.ai-generate-button .button-icon{font-size:1.1em;animation:glowIcon 2s ease-in-out infinite alternate}@keyframes glowIcon{0%{text-shadow:0 0 2px rgba(255,255,255,.5)}to{text-shadow:0 0 8px rgba(255,255,255,.8)}}.ai-generate-button .premium-badge{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,#ff9500,#ff5e3a);color:#fff;font-size:.65rem;padding:3px 6px;border-radius:10px;font-weight:700;box-shadow:0 2px 4px #ff95004d;z-index:1}.add-button{background-color:#4caf50;color:#fff;border:none}.ai-generate-button{background-color:#6c5ce7;color:#fff;border:none;display:flex;align-items:center;justify-content:center;gap:0;position:relative}.ai-generate-button:hover{background-color:#5b4dc7}.add-button:hover{background-color:#3d8b40}.csv-button .premium-badge,.ai-generate-button .premium-badge{position:static;display:inline-block;margin-left:8px;background:linear-gradient(135deg,#ff9500,#ff5e3a);color:#fff;font-size:.65rem;padding:3px 6px;border-radius:10px;font-weight:700;box-shadow:0 2px 4px #ff95004d;vertical-align:middle}.csv-button,.ai-generate-button{display:inline-flex;align-items:center;gap:8px}.button-icon{margin-right:4px}.vocabulary-generator{background-color:var(--bg-secondary);border-radius:12px;margin-bottom:20px;transition:all .3s ease;width:100%}.vocabulary-generator .generator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;position:relative}.vocabulary-generator .generator-title{margin:0;color:var(--text-primary);font-weight:600}.vocabulary-generator .remaining-badge{background:linear-gradient(135deg,var(--primary-color-light) 0%,var(--primary-color) 100%);color:#000;font-size:.85rem;padding:6px 14px;border-radius:20px;box-shadow:0 3px 8px rgba(var(--primary-color-rgb),.3);display:flex;align-items:center;gap:6px;transition:all .3s ease}.vocabulary-generator .remaining-badge .count{font-weight:700;font-size:1.1rem;color:#000;text-shadow:0 1px 2px rgba(0,0,0,.2)}.vocabulary-generator .remaining-badge.warning{background:linear-gradient(135deg,#f96,#ff5e62)}.vocabulary-generator .remaining-badge.empty{background:linear-gradient(135deg,#bdc3c7,#7f8c8d)}.vocabulary-generator .generator-form{display:flex;flex-direction:column;gap:18px;margin-bottom:24px}.vocabulary-generator .form-group{display:flex;flex-direction:column}.vocabulary-generator .form-group label{display:flex;align-items:center;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.vocabulary-generator .input-icon{margin-right:8px;color:var(--primary-color);font-size:1rem}.vocabulary-generator .styled-input,.vocabulary-generator .styled-select,.vocabulary-generator .styled-textarea{padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:all .2s ease;width:100%;box-sizing:border-box}.vocabulary-generator .styled-input:focus,.vocabulary-generator .styled-select:focus,.vocabulary-generator .styled-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.vocabulary-generator .styled-textarea{min-height:100px;resize:vertical}.vocabulary-generator .char-count{margin-top:6px;font-size:.8rem;color:var(--text-secondary);text-align:right}.vocabulary-generator .generate-button,.vocabulary-generator .add-button{padding:12px 20px;border:none;border-radius:8px;font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.vocabulary-generator .generate-button{background-color:var(--primary-color);color:#fff;margin-top:8px}.vocabulary-generator .generate-button:hover:not(:disabled){transform:translateY(-1px)}.vocabulary-generator .generate-button:disabled{background-color:#ccc;cursor:not-allowed}.vocabulary-generator .error-message{color:var(--error-color);font-size:.9rem;margin-top:10px;padding:10px;background-color:rgba(var(--error-color-rgb),.1);border-radius:6px;border-left:3px solid var(--error-color)}.vocabulary-generator .result-section{margin-top:0;background-color:var(--bg-primary);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.vocabulary-generator .result-title{margin-top:0;margin-bottom:5px;color:var(--text-primary);font-size:1.2rem}.vocabulary-generator .word-count-info{color:var(--text-secondary);font-size:.9rem;margin-bottom:15px}.vocabulary-generator .word-list{list-style:none;padding:0;margin:0 0 20px;max-height:400px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px}.vocabulary-generator .word-item{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.vocabulary-generator .word-item:hover{background-color:rgba(var(--primary-color-rgb),.05)}.vocabulary-generator .word-item:last-child{border-bottom:none}.vocabulary-generator .word{font-weight:500;color:var(--text-primary)}.vocabulary-generator .translation{color:var(--text-secondary)}.vocabulary-generator .add-button{background-color:var(--success-color);color:#fff;width:100%}.vocabulary-generator .add-button:hover{background-color:var(--success-color-dark);transform:translateY(-1px)}.vocabulary-generator .styled-select{-webkit-appearance:none;-moz-appearance:none;appearance: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='%23888' d='M6 8.825L1.175 4 2.238 2.938 6 6.7 9.763 2.938 10.825 4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}@media (max-width: 768px){.vocabulary-generator .styled-input,.vocabulary-generator .styled-select,.vocabulary-generator .styled-textarea{padding:10px 14px}}.vocabulary-generator .back-button{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--primary-color);font-weight:500;cursor:pointer;padding:8px 0;transition:all .2s}.vocabulary-generator .back-button:hover{color:var(--primary-color-dark);transform:translate(-2px)}[data-theme=dark] .remaining-badge,[data-theme=dark] .remaining-badge .count{color:#fff}.vocabulary-generator.results-view{max-height:none;overflow-y:visible}.word-grid{display:grid;gap:12px;margin-bottom:20px}.word-card{background-color:var(--bg-secondary);border-radius:8px;padding:12px;box-shadow:0 2px 4px #0000000d;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;gap:6px;border:1px solid var(--border-color)}.word-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.word-card .word{font-weight:600;color:var(--text-primary);font-size:1.1rem}.word-card .translation{color:var(--text-secondary)}.generator-modal{position:relative;max-width:800px}.generator-modal .modal-content{padding:20px 30px;max-height:50vh;overflow-y:auto}.results-view .word-list{display:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;overflow:hidden}.modal{background-color:var(--bg-primary);border-radius:8px;padding:0;max-width:500px;overflow:hidden;box-shadow:0 2px 10px #0003;display:flex;flex-direction:column}.modal-wrapper{display:flex;flex-direction:column;height:100%}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 30px;border-bottom:1px solid var(--border-color);background-color:var(--bg-primary);z-index:10}.fixed-header{position:sticky;top:0}.modal-header h2{margin:0;color:var(--text-primary);font-size:1.2rem}.close-button{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-secondary)}.close-button:hover{color:var(--text-primary)}.modal-content{padding:20px;overflow-y:auto;flex:1}.modal-footer{padding:15px 30px;border-top:1px solid var(--border-color);background-color:var(--bg-primary);z-index:10;display:flex;gap:10px}.modal-footer .generate-button,.modal-footer .add-button{flex:1;padding:10px;border-radius:4px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.modal-footer .generate-button{background:linear-gradient(135deg,#6c5ce7,#a29bfe,#8e44ad);background-size:200% 200%;animation:gradientAnimation 3s ease infinite;color:#fff;box-shadow:0 4px 6px #6c5ce733;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px}.modal-footer .generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 14px #6c5ce74d;background-size:150% 150%}.modal-footer .generate-button:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 4px #6c5ce733}.modal-footer .generate-button:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none;box-shadow:none}@keyframes gradientAnimation{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.modal-footer .add-button{background-color:var(--success-color);color:#fff}.modal-footer .add-button:hover{background-color:var(--success-color-dark);transform:translateY(-2px)}.modal-footer .add-button:active{transform:translateY(1px)}.confirmation-dialog{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:20}.confirmation-content{background-color:var(--bg-primary);padding:20px;border-radius:8px;width:80%;max-width:400px;text-align:center;box-shadow:0 4px 12px #00000026}.confirmation-content p{margin-bottom:20px;color:var(--text-primary)}.confirmation-buttons{display:flex;justify-content:center;gap:10px}.confirmation-buttons button{padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-button{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.confirm-button{background-color:var(--error-color);color:#fff;border:none}.cancel-button:hover{background-color:var(--border-color)}.confirm-button:hover{background-color:var(--error-color-dark, #c82333)}body.modal-open{overflow:hidden}.account-settings-container{max-width:1200px;margin:2rem auto;padding:0 1rem;color:var(--text-color)}.account-settings-header{margin-bottom:3rem;text-align:center}.account-settings-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(45deg,#2196f3,#1976d2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.account-settings-section{background:var(--card-bg);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.account-settings-section h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-color);display:flex;align-items:center;gap:.5rem;justify-content:center}.account-settings-section h2 svg{width:24px;height:24px;color:#1976d2}.subscription-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.subscription-plan{background:var(--background-color);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;position:relative;transition:all .3s ease}.subscription-plan:hover{border-color:#1976d2;transform:translateY(-2px)}.subscription-plan.active{border-color:#4caf50;background:linear-gradient(45deg,#4caf501a,#4caf500d)}.subscription-plan.popular{border-color:#f5b014}.popular-badge{position:absolute;top:-12px;right:-12px;background:#f5b014;color:#fff;padding:.25rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.discount-badge{position:absolute;top:-12px;left:-12px;background:#e91e63;color:#fff;padding:.25rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.plan-details{flex:1;display:flex;flex-direction:column;gap:1rem}.plan-name{font-weight:600;font-size:1.4rem;color:var(--text-color)}.plan-pricing{display:flex;align-items:baseline;gap:.25rem;margin-bottom:1rem}.plan-price{font-size:2rem;font-weight:700;color:var(--text-color)}.plan-period{color:var(--text-secondary);font-size:1rem}.plan-features{display:flex;flex-direction:column;gap:.75rem;margin:1.5rem 0}.plan-feature{display:flex;align-items:center;gap:.75rem;color:var(--text-color);font-size:.95rem}.plan-feature svg{color:#4caf50;width:16px;height:16px;flex-shrink:0}.profile-header{display:flex;align-items:center;gap:2rem;margin-bottom:2.5rem;padding:1.5rem;background:var(--background-secondary);border-radius:12px}.profile-avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(45deg,#1976d2,#2196f3);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;font-weight:600;flex-shrink:0}.profile-info{flex:1}.profile-info h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.profile-info p{color:var(--text-secondary);font-size:1.1rem}.account-form-group{margin-bottom:2rem}.account-form-group label{display:block;margin-bottom:.75rem;color:var(--text-color);font-weight:500;font-size:1rem}.account-form-group input{width:100%;padding:1rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;background:var(--input-background);color:var(--text-color);transition:all .3s ease}.account-form-group input:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #1976d21a}.account-form-group input:disabled{background:var(--disabled-background);cursor:not-allowed}.account-save-button{background:linear-gradient(45deg,#1976d2,#2196f3);color:#fff;padding:1rem 2rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.account-save-button:hover{background:linear-gradient(45deg,#1565c0,#1976d2);transform:translateY(-1px);box-shadow:0 4px 15px #1976d233}.subscription-button{background:linear-gradient(45deg,#4caf50,#66bb6a);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;margin-top:auto;width:100%;justify-content:center}.subscription-button:hover{background:linear-gradient(45deg,#43a047,#4caf50);transform:translateY(-1px);box-shadow:0 4px 15px #4caf5033}.cancel-subscription{background:linear-gradient(45deg,#f44336,#ef5350)}.cancel-subscription:hover{background:linear-gradient(45deg,#e53935,#f44336);box-shadow:0 4px 15px #f4433633}.current-plan-badge{background:#4caf50;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem}@media (max-width: 1024px){.subscription-plans{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.account-settings-container{padding:1rem}.subscription-plans{grid-template-columns:1fr}.profile-header{flex-direction:column;text-align:center;gap:1rem}.profile-avatar{margin:0 auto}}.profile-info-display{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:var(--background-secondary);border-radius:12px}.account-info{display:flex;flex-direction:column;gap:1.5rem}.info-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--background-secondary);border-radius:8px}.info-item svg{color:var(--text-secondary);font-size:1.2rem;margin-top:.2rem}.info-content{flex:1}.info-content label{display:block;font-size:.9rem;color:var(--text-secondary);margin-bottom:.3rem}.info-content p{margin:0;color:var(--text-color)}.display-name-container{display:flex;align-items:center;gap:.5rem}.display-name-container button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0 4px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#1976d2}.display-name-container button:hover{background-color:var(--background-hover)}.edit-name-container{display:flex;gap:8px;flex-wrap:wrap;width:100%;align-items:center}.edit-name-input{flex:1;max-width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;background:var(--input-background);color:var(--text-color);transition:border-color .2s,box-shadow .2s}.edit-name-input:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 2px #1976d233}.edit-name-container button{width:36px;height:36px;padding:0;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.edit-name-container button:first-of-type{background-color:#1976d2;color:#fff}.edit-name-container button:first-of-type:hover{background-color:#1565c0}.edit-name-container button:last-of-type{background-color:#6c757d;color:#fff}.edit-name-container button:last-of-type:hover{background-color:#5a6268}.danger-zone{border:2px solid var(--danger-color, #dc3545)}.danger-zone h2{color:var(--danger-color, #dc3545)}.danger-zone h2 svg{color:var(--danger-color, #dc3545)}.danger-zone-content{display:flex;flex-direction:column;gap:1rem;align-items:center}.danger-zone-content p{color:var(--text-secondary);font-size:.95rem;margin:0}.delete-account-button{background-color:var(--danger-color, #dc3545);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .2s;max-width:200px}.delete-account-button:hover{background-color:var(--danger-hover-color, #c82333)}.subscription-info{display:flex;flex-direction:column;gap:8px}.subscription-details{display:flex;flex-direction:column;gap:4px;font-size:.9em;color:#666}.subscription-date,.subscription-end-date{display:block}.subscription-end-date{color:#e74c3c}.info-item .subscription-button.cancel-subscription{margin-top:8px;padding:6px 12px;font-size:.9em;max-width:180px}:root{--primary-color: #007bff;--secondary-color: #6c757d;--success-color: #28a745;--danger-color: #dc3545;--light-color: #f8f9fa;--dark-color: #343a40;--bg-color: #fafafa;--text-color: #1a1a1a;--border-color: #e0e0e0;--card-bg: #ffffff;--input-bg: #ffffff;--hover-color: #f5f5f5;--content-padding: clamp(10px, 3vw, 20px);--border-radius: clamp(4px, 2vw, 8px);--font-size-base: clamp(14px, 2vw, 16px);--font-size-large: clamp(18px, 3vw, 24px);--font-size-xlarge: clamp(24px, 4vw, 32px);--spacing-base: clamp(8px, 2vw, 16px)}[data-theme=dark]{--primary-color: #3b82f6;--secondary-color: #adb5bd;--success-color: #198754;--danger-color: #dc3545;--light-color: #212529;--dark-color: #f8f9fa;--bg-color: #1a1a1a;--text-color: #ffffff;--border-color: #495057;--card-bg: #2d2d2d;--input-bg: #333333;--hover-color: #1e293b;--table-row-hover: #3a3a3a;--table-header-bg: #2c2c2c;--badge-bg: #3d3d3d;--active-bg: #2563eb;--active-border: #60a5fa}#root{width:100%;min-height:100vh;margin:0;box-sizing:border-box;display:flex;justify-content:center;align-items:flex-start;background-color:var(--bg-color)}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.app{width:100%;margin:0 auto;box-sizing:border-box;background-color:var(--bg-color);box-shadow:0 0 20px #0000001a;border-radius:var(--border-radius);font-size:var(--font-size-base);min-height:100vh;display:flex;flex-direction:column}.app.card-expanded{position:fixed;width:100%;height:100%;top:0;left:0;overflow:hidden;overscroll-behavior:none;touch-action:none}.app-header{text-align:center;margin-bottom:var(--spacing-base);padding:var(--content-padding);background:linear-gradient(135deg,var(--primary-color),#0056b3);color:#fff;border-radius:8px}.app-description{margin-top:10px;opacity:.9}.csv-button{flex:1;padding:20px;border:2px dashed var(--border-color);border-radius:var(--border-radius);background-color:var(--card-bg);color:var(--text-color);cursor:pointer;font-size:var(--font-size-base);transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px}.button-icon{font-size:1.2em}.csv-button:hover{background-color:var(--hover-color);border-color:var(--primary-color)}.controls{position:relative;margin:20px 0;display:flex;flex-direction:column;gap:20px}.mode-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-base)}.mode-button{width:100%;padding:var(--spacing-base);font-size:var(--font-size-base);border:2px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--card-bg);color:var(--text-color);font-weight:700;cursor:pointer;transition:all .3s ease}.mode-button:hover{background-color:var(--hover-color);border-color:var(--primary-color)}.mode-button.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.content{width:100%;max-width:100%;margin:0 auto;box-sizing:border-box;background-color:#d9f5ff;border-radius:var(--border-radius);box-shadow:0 2px 10px #0000001a;padding:var(--content-padding)}.word-list-container{padding:0 var(--content-padding);margin:20px 0}.word-list::-webkit-scrollbar{display:none}.word-list table{width:100%;min-width:800px;border-collapse:collapse;background-color:var(--card-bg);border-radius:var(--border-radius);overflow:hidden}.word-list th{background-color:var(--primary-color);color:#fff;font-weight:700;padding:15px;text-align:left;position:sticky;top:0;z-index:1}.word-list td{padding:12px 15px;border-bottom:1px solid var(--border-color);color:var(--text-color);transition:background-color .2s ease}.word-list tr:hover td{background-color:var(--hover-color)}.word-list tr.mastered{background-color:#28a7451a}.word-list tr.mastered:hover td{background-color:#28a74526}[data-theme=dark] .word-list table{background-color:var(--card-bg)}[data-theme=dark] .word-list th{background-color:var(--primary-color)}[data-theme=dark] .word-list td{border-color:var(--border-color)}[data-theme=dark] .word-list tr.mastered{background-color:#28a74526}[data-theme=dark] .word-list tr.mastered:hover td{background-color:#28a74533}@media (max-width: 1024px){.word-list-container{padding:0 10px;margin:10px 0}.word-list th,.word-list td{padding:10px;font-size:.9em}.file-controls{display:flex!important;flex-direction:column!important;width:100%;margin-bottom:15px}.csv-button{width:100%}}.study-mode{max-width:100%;margin:0;padding:20px;overflow-x:auto}.study-controls{display:flex;flex-direction:column;gap:15px;margin:30px auto;width:100%;max-width:462px;justify-self:center}.control-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;width:100%}.study-controls button{width:100%;padding:15px;border:none;border-radius:var(--border-radius);font-size:1.1em;font-weight:700;cursor:pointer;transition:all .3s ease;background-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #0000001a;text-align:center;min-height:50px;display:flex;align-items:center;justify-content:center}.study-controls button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.mastery-button.good{background-color:var(--success-color)}.mastery-button.bad{background-color:var(--danger-color);color:#fff}.mastery-info{display:flex;align-items:center;gap:10px}.mastery-level{padding:4px 8px;border-radius:4px;color:#fff}.card{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.card h2{font-size:24px;margin-bottom:20px}.meaning{font-size:1.5em;justify-self:center;color:var(--secondary-color)}.buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.buttons button{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;background-color:#007bff;color:#fff}.mastered-button{background-color:#28a745!important}.progress{color:#666}.progress-text{display:flex;justify-content:center}.study-complete{text-align:center;font-size:24px;margin:40px 0}.typing-game{padding:20px;max-width:100%;margin:0}.game-info{display:flex;gap:15px;align-items:stretch;margin-bottom:2rem;flex-wrap:wrap}.game-stat{flex:1;min-width:120px;background:var(--card-bg);padding:12px 15px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center}.stat-title{font-size:.9em;color:var(--secondary-color);margin-bottom:4px}.stat-value{font-size:1.2em;font-weight:700;color:var(--text-color)}.time-stats{font-size:1em;display:flex;flex-direction:column;gap:2px}.time-stats span{line-height:1.2}.stop-button{flex:1;min-width:120px;padding:12px 15px;border:none;border-radius:var(--border-radius);background-color:var(--danger-color);color:#fff;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.stop-button:hover{background-color:#c82333;transform:translateY(-1px)}@media (max-width: 768px){.game-info{gap:10px}.game-stat{padding:10px;min-width:100px}.stat-title{font-size:.85em}.stat-value{font-size:1.1em}.time-stats{font-size:.95em}.stop-button{min-width:100px;padding:10px}}@media (max-width: 600px){.game-info{gap:1rem}.game-stat{min-width:80px;padding:.5rem}.stat-value{font-size:1rem}}[data-theme=dark] .game-stat{background-color:var(--card-bg);border:1px solid var(--border-color)}[data-theme=dark] .stat-title{color:var(--text-color);opacity:.8}[data-theme=dark] .stat-value{color:var(--text-color)}[data-theme=dark] .accuracy{color:#4cd964}[data-theme=dark] .mistakes{color:#ff3b30}[data-theme=dark] .remaining{color:#5ac8fa}.word-display{width:100%;max-width:100%;margin:20px 0;padding:20px;box-sizing:border-box;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-size:var(--font-size-large)}.current-word{display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:var(--font-size-xlarge);margin-bottom:10px;color:var(--primary-color);word-break:break-word}.typing-game input{width:100%;max-width:100%;font-size:1.5em;padding:15px;text-align:center;border:2px solid var(--primary-color);border-radius:var(--border-radius);box-sizing:border-box;background-color:var(--input-bg);color:var(--text-color)}.results{margin-top:20px;font-size:1.2em}.edit-mode{padding:20px;width:100%;box-sizing:border-box}.table-container{width:100%;overflow-x:auto;margin-top:20px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--card-bg);box-shadow:0 2px 4px #0000001a;scrollbar-width:none;-ms-overflow-style:none}.table-container::-webkit-scrollbar{display:none}.edit-mode table{width:100%;min-width:800px;border-collapse:collapse;margin:0}.edit-mode th{background-color:var(--primary-color);color:#fff;font-weight:700;padding:12px;text-align:left;position:sticky;top:0;z-index:1}.edit-mode td{padding:12px;border-bottom:1px solid var(--border-color);background-color:var(--card-bg)}.edit-mode tr:hover td{background-color:var(--hover-color)}[data-theme=dark] .edit-mode th{background-color:var(--primary-color)}[data-theme=dark] .edit-mode td{border-color:var(--border-color)}[data-theme=dark] .edit-mode tr:hover td{background-color:var(--hover-color)}@media (max-width: 768px){.edit-mode{padding:10px}.table-container{border-radius:var(--border-radius-sm);margin-top:15px}.edit-mode th,.edit-mode td{padding:10px}}.add-word-section{background-color:var(--card-bg);padding:20px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a}.add-word-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.word-input,.meaning-input{flex:1;padding:12px;border:2px solid var(--border-color);border-radius:6px;font-size:1rem;transition:border-color .3s ease}.word-input:focus,.meaning-input:focus{border-color:var(--primary-color);outline:none}.add-button{padding:12px 24px;background-color:var(--primary-color);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;transition:background-color .3s ease}.search-section{margin:20px 0;width:100%;box-sizing:border-box}.search-container{position:relative;width:100%;display:flex;align-items:center;box-sizing:border-box}.search-icon{position:absolute;left:12px;color:var(--text-color);opacity:.6}.search-input{width:100%;padding:12px 40px;font-size:var(--font-size-base);border:2px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--input-bg);color:var(--text-color);transition:all .3s ease;box-sizing:border-box}.search-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #007bff1a}.clear-search{position:absolute;right:12px;background:none;border:none;color:var(--text-color);opacity:.6;cursor:pointer;padding:4px 8px;font-size:1.1em}.clear-search:hover{opacity:1}.search-results{margin-top:8px;font-size:.9em;color:var(--text-color);opacity:.8}.word-list-edit{background-color:var(--card-bg);padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a}.word-list-edit table{width:100%;min-width:600px;border-collapse:collapse;margin-top:15px}.word-list-edit th{background-color:var(--light-color);padding:12px;text-align:left;font-weight:700}.word-list-edit td{padding:8px;border-bottom:1px solid var(--border-color)}.edit-input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.mastery-select{width:100%;padding:8px;border-radius:4px;color:#fff;cursor:pointer}.delete-button{padding:8px 16px;background-color:var(--danger-color);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.delete-button:hover{background-color:#c82333}.export-button{background-color:#28a745;color:#fff;padding:10px 20px;border:none;border-radius:5px;cursor:pointer}.export-button:hover{background-color:#218838}.style-editor{max-width:800px;margin:20px auto;padding:20px;background-color:#f8f9fa;border-radius:8px}.style-controls{display:flex;flex-direction:column;gap:15px}.style-properties{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;padding:15px;background-color:#fff;border-radius:4px}.property-group{display:flex;flex-direction:column;gap:5px}.property-group label{font-weight:700;color:#666}.game-settings{width:100%;max-width:100%;margin:10px 0;padding:15px;box-sizing:border-box}.setting-group{margin:15px 0;text-align:left}.setting-group label{font-weight:700;margin-right:15px;color:var(--dark-color)}.setting-group select{padding:10px;border-radius:6px;border:2px solid var(--primary-color);background-color:#fff;font-size:1.1em;width:200px;cursor:pointer}.game-history{margin-top:30px}.game-history-container{padding:0 var(--content-padding);margin:20px 0}.game-history{width:100%;overflow-x:auto;border-radius:var(--border-radius)}.game-history table{width:100%;min-width:600px;border-collapse:collapse;background-color:var(--card-bg);border-radius:var(--border-radius);overflow:hidden}.game-history th{background-color:var(--primary-color);color:#fff;font-weight:700;padding:15px;text-align:left;position:sticky;top:0;z-index:1}.game-history td{padding:16px 20px;border-bottom:1px solid var(--border-color);color:var(--text-color);transition:background-color .2s ease}.game-history tr:hover td{background-color:var(--hover-color)}[data-theme=dark] .game-history table{background-color:var(--card-bg)}[data-theme=dark] .game-history th{background-color:var(--primary-color)}[data-theme=dark] .game-history td{border-color:var(--border-color)}@media (max-width: 768px){.game-history-container{padding:0 10px;margin:10px 0}.game-history th,.game-history td{padding:10px;font-size:.9em}}body{background-color:var(--bg-color);color:var(--text-color);transition:all .3s ease}.app{background-color:var(--bg-color);color:var(--text-color)}.header-content{display:flex;align-items:center;justify-content:center;gap:20px}.theme-toggle{position:relative;background:none;border:2px solid var(--border-color);font-size:1.2em;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;gap:8px;color:var(--text-color);background-color:var(--card-bg)}.theme-toggle:after{content:attr(data-mode);font-size:.8em;font-weight:700}.theme-toggle:hover{background-color:var(--hover-color);border-color:var(--primary-color);transform:translateY(-1px)}input,select,textarea{background-color:var(--input-bg);color:var(--text-color);border-color:var(--border-color);width:100%;padding:var(--spacing-base);font-size:var(--font-size-base);border-radius:var(--border-radius)}.card,.word-display,.game-settings{background-color:var(--card-bg);color:var(--text-color)}table{border-color:var(--border-color);min-width:100%}th,td{border-color:var(--border-color);padding:var(--spacing-base);white-space:nowrap}.csv-dropzone{background-color:var(--card-bg);border-color:var(--border-color)}.mode-button{background-color:var(--card-bg);color:var(--text-color)}.mode-button.active{background-color:var(--primary-color);color:#fff}.word-list-controls{margin-bottom:30px;display:grid;grid-template-columns:300px 1fr;gap:30px;padding:20px}.filter-section{display:flex;flex-direction:column;gap:15px}.start-button{width:100%;font-size:1.5em;padding:15px;margin:20px 0;background:linear-gradient(135deg,#3bf688,#0056b3);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #007bff4d;text-transform:uppercase;font-weight:700;letter-spacing:1px;box-sizing:border-box}@media (max-width: 768px){.app{border-radius:0;box-shadow:none}.content{border-radius:0}.table-container{width:100%;margin:0 -var(--content-padding);overflow-x:auto;-webkit-overflow-scrolling:touch}td,th{padding:8px;font-size:.9em;white-space:normal}input,select,textarea{font-size:16px;max-width:100%;box-sizing:border-box}.game-info{align-items:stretch;gap:10px}.game-stat{flex-direction:row;justify-content:space-between}.stat-title{font-size:.85em}.stat-value{font-size:1.1em}.word-display{padding:15px;margin:10px 0;width:100%;box-sizing:border-box}.current-word{font-size:1.8em;line-height:1.3;word-break:break-word}.edit-mode{padding:20px}.add-word-section,.word-list-edit{margin:10px 0;padding:15px;border-radius:0}.search-section{margin:15px 0}.mode-button,.add-button,.delete-button{padding:12px;min-height:44px}.app-header{padding:10px}.header-content h1{font-size:var(--font-size-xlarge)}.mode-buttons{flex-direction:column}.mode-button{width:100%}.game-settings{padding:10px;border-radius:8px;margin:5px 0}.setting-group{margin:8px 0}.setting-group label{display:block;margin-bottom:5px}.game-info{align-items:flex-start;gap:8px;font-size:.9em}.word-display{padding:var(--content-padding)}.current-word{font-size:2em}.typing-game input{font-size:1.2em;padding:8px}.add-word-form{flex-direction:column}.word-input,.meaning-input{width:100%}.word-list,.word-list-edit,.game-history{overflow-x:auto;-webkit-overflow-scrolling:touch}.word-list th,.word-list-edit th,.game-history th{position:sticky;top:0;background-color:var(--primary-color);z-index:1}.start-button{width:100%;padding:12px}.search-container{width:100%;max-width:100%}.search-input{width:100%;max-width:100%;padding:10px 36px;font-size:.9em}.custom-words{flex-direction:column;align-items:flex-start}.custom-word-input{width:100%;max-width:100%}.search-icon{left:10px;font-size:.9em}.clear-search{right:10px;padding:4px}.search-results{padding:0 5px}}@media (max-width: 768px){.game-info{display:flex;flex-wrap:wrap;gap:var(--spacing-base)}.add-word-form{display:grid;grid-template-columns:1fr;gap:var(--spacing-base)}}.study-card{border:1px solid var(--border-color);background-color:var(--card-bg);border-radius:var(--border-radius);padding:30px;box-shadow:0 2px 10px #0000001a;cursor:pointer;transition:all .3s ease;position:relative;min-height:350px;display:flex;justify-content:center;align-items:center;flex-direction:column;max-width:400px;margin:0 auto}.study-card .speech-button,.study-card .language-toggle,.study-card .expand-button{position:absolute;width:40px;height:40px;min-width:40px;min-height:40px;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;background-color:#4a90e2;color:#fff;font-weight:700;padding:0;box-sizing:border-box;line-height:1}.study-card .expand-button{bottom:20px;right:20px}.study-card .speech-button:hover,.study-card .language-toggle:hover,.study-card .expand-button:hover{background-color:#357abd;transform:scale(1.05)}.study-card:after{content:"クリックで意味を非表示";position:absolute;bottom:10px;left:50%;transform:translate(-50%);font-size:.8em;color:var(--secondary-color);opacity:.7}.study-card.showing-meaning:after{content:"クリックで意味を非表示"}.main-nav button{color:#fff}@media (max-width: 1024px){.menu-overlay{display:block}.main-nav{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--card-bg);padding:80px 20px 20px;flex-direction:column;gap:20px;transition:right .3s ease;z-index:1000;box-shadow:-5px 0 15px #0000001a}.main-nav.open{right:0}.theme-toggle-mobile{display:block;width:100%;text-align:left;padding:15px;border-top:1px solid var(--border-color);background:none;border:none;color:var(--text-color);cursor:pointer}.theme-toggle-mobile:hover{background-color:var(--hover-color)}}.typing-controls{display:flex;gap:10px;margin:20px 0;width:100%;align-items:center}.list-info{width:100%}.list-info h3{margin:0 0 10px;color:var(--text-color)}.description{color:var(--secondary-color)}.game-history td{padding:12px;border-bottom:1px solid var(--border-color)}.history-row{cursor:pointer;transition:background-color .2s ease}.history-row:hover,.history-row.selected{background-color:var(--hover-color)}.history-results{border-radius:0 0 var(--border-radius) var(--border-radius);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.game-history th,.game-history td{padding:8px;font-size:.9em}}.time-stats{display:flex;flex-direction:column;gap:4px;font-size:.9em}.time-stats .best-time{color:var(--success-color);font-weight:700}.history-results{margin-top:2rem}.history-results h3{margin-bottom:1rem;color:var(--text-color)}@media (max-width: 768px){.time-stats{font-size:.85em}}.pricing-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:1.5rem}.plan{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:all .3s ease}.plan:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0000001a}.plan h3{color:var(--primary-color);margin-bottom:1rem;font-size:1.3em}.plan.premium{border:2px solid var(--primary-color);position:relative}.plan.premium:before{content:"おすすめ";position:absolute;top:-12px;right:10px;background:var(--primary-color);color:#fff;padding:4px 12px;border-radius:12px;font-size:.8em}.contact-info{background:var(--card-bg);padding:1rem;border-radius:var(--border-radius);text-align:center;font-size:1.2em;color:var(--primary-color);margin:1rem 0}.policy-links{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.policy-links a{color:var(--primary-color);text-decoration:none;transition:color .3s ease}.policy-links a:hover{color:var(--text-color)}.separator{color:var(--border-color)}.content-section h3{color:var(--text-color);margin:1.5rem 0 1rem;font-size:1.2em}.content-section pre{background:var(--card-bg);padding:1rem;border-radius:var(--border-radius);overflow-x:auto;font-family:monospace;margin:1rem 0;border:1px solid var(--border-color)}.content-section strong{color:var(--primary-color)}@media (max-width: 768px){.pricing-plans{grid-template-columns:1fr}.plan{padding:1.2rem}.content-section pre{font-size:.9em}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-color)}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-color)}.loading-spinner svg{width:3rem;height:3rem;animation:spin 1s linear infinite}.loading-spinner span{font-size:1rem}[data-theme=dark] .loading-container{background-color:var(--bg-color)}[data-theme=dark] .loading-spinner{color:var(--text-color)}[data-theme=dark] .google-button{background-color:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color)}[data-theme=dark] .google-button:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}[data-theme=dark] .google-button:hover{background-color:var(--card-bg)}[data-theme=dark] .auth-button-secondary{border:1px solid var(--border-color);color:var(--text-color)}[data-theme=dark] .auth-button-secondary:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.button-group{display:flex;margin-bottom:1rem}.action-button{flex:1;padding:.75rem 1rem;border:none;border-radius:.5rem;background-color:var(--primary-color);color:#fff;font-size:1rem;cursor:pointer;transition:background-color .2s}.action-button:hover{background-color:var(--primary-color-dark)}.modal-content{background-color:var(--card-bg);border-radius:var(--border-radius);max-width:500px}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:var(--text-color)}.modal-content .form-group{margin-bottom:1.5rem}.modal-content label{display:block;margin-bottom:.5rem;color:var(--text-color)}.modal-content input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background-color:var(--input-bg);color:var(--text-color)}.modal-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.modal-buttons button{padding:.5rem 1.5rem;border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-base);transition:all .3s ease}.modal-buttons .primary-button{background-color:var(--primary-color);color:#fff}.modal-buttons .secondary-button{background-color:var(--border-color);color:var(--text-color)}.modal-buttons button:hover{opacity:.9;transform:translateY(-1px)}.dataset-selector{position:relative;margin:20px 0}.dataset-select-button{width:100%;padding:15px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.dataset-select-button:hover{background-color:var(--hover-color)}.dataset-list{position:absolute;top:100%;left:0;right:0;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-top:5px;max-height:300px;overflow-y:auto;z-index:100;box-shadow:0 4px 6px #0000001a}.dataset-item{width:100%;padding:12px 15px;border:none;background:none;color:var(--text-color);cursor:pointer;text-align:left;transition:background-color .2s ease}.file-input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background-color:var(--input-bg);color:var(--text-color);cursor:pointer}.selected-file{margin-top:.5rem;padding:.5rem;background-color:var(--hover-color);border-radius:var(--border-radius-sm);font-size:.9em;color:var(--text-color)}.dataset-item-container{display:flex;align-items:center;border-bottom:1px solid var(--border-color)}.dataset-item-container:last-child{border-bottom:none}.dataset-item{flex:1;width:auto;padding:12px 15px;border:none;background:none;color:var(--text-color);cursor:pointer;text-align:left;transition:background-color .2s ease}.dataset-controls{display:flex;align-items:center;gap:8px;margin-right:8px}.dataset-edit-button,.dataset-delete-button{padding:8px;border:none;background:none;color:var(--text-color);opacity:.5;cursor:pointer;transition:all .2s ease}.dataset-edit-button:hover,.dataset-delete-button:hover{color:var(--primary-color);opacity:1}.dataset-delete-button:hover{color:var(--danger-color)}.dataset-item:hover{background-color:var(--hover-color)}.dataset-edit-input{flex:1;padding:8px 12px;margin:4px 15px;border:1px solid var(--primary-color);border-radius:var(--border-radius);background-color:var(--input-bg);color:var(--text-color);font-size:var(--font-size-base)}.current-dataset-icon{color:var(--primary-color);opacity:.8}.current-dataset-label{color:var(--secondary-color);font-size:.9em}.current-dataset-name{color:var(--text-color);font-weight:700;font-size:1.1em}@media (max-width: 768px){.current-dataset{padding:12px 15px}.current-dataset-name{font-size:1em}}.list-controls{display:grid;grid-template-columns:1fr 300px;gap:20px;margin-bottom:20px;align-items:start;background-color:var(--card-bg);padding:20px;border-radius:var(--border-radius);box-shadow:0 2px 10px #0000000d}.search-section{flex:1;margin:0}.search-container{width:100%}.search-input{width:100%;height:48px;padding:12px 40px;font-size:var(--font-size-base);border:2px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--input-bg);color:var(--text-color);transition:all .3s ease}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}.filter-section{display:flex;flex-direction:column}.filter-section h3{color:var(--dark-color);margin-bottom:10px;font-size:1.2em;border-bottom:2px solid var(--primary-color);padding-bottom:8px}.filter-stats{display:flex;flex-direction:column;gap:10px;margin-top:10px}.stat-item{display:flex;align-items:center;gap:10px;padding:12px;background-color:var(--card-bg);border-radius:var(--border-radius);transition:all .3s ease;border:2px solid transparent;position:relative}.stat-item:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a;background-color:var(--hover-color)}.stat-item.selected{border-color:var(--primary-color);background-color:var(--hover-color);box-shadow:0 2px 8px #00000026}.stat-item.selected:after{content:"✓";position:absolute;top:50%;right:10px;transform:translateY(-50%);color:var(--primary-color);font-weight:700}.stat-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;transition:all .3s ease;font-size:12px}.stat-item.selected .stat-icon{transform:scale(1.1)}.stat-info{flex:1}.stat-label{font-size:.9em;color:var(--text-color);font-weight:700}.stat-value{font-size:1.2em;font-weight:700;color:var(--primary-color)}.pie-segment{position:absolute;width:100%;height:100%;border-radius:50%;transition:all .3s ease;opacity:.7}.pie-segment:hover{transform:scale(1.05);opacity:1;z-index:2}.pie-chart{position:relative;width:100%;height:100%;border-radius:50%;transition:all .3s ease;box-shadow:0 2px 10px #0000001a}.total-label{font-size:1.1em;color:var(--text-color);opacity:.8}.segment-tooltip{position:absolute;background-color:var(--card-bg);padding:10px 15px;border-radius:6px;box-shadow:0 2px 8px #0003;font-size:.9em;color:var(--text-color);pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:10;white-space:nowrap;border-left:4px solid}.pie-segment:hover .segment-tooltip{opacity:1}.legend-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--border-radius);transition:all .3s ease;cursor:pointer;border:2px solid transparent}@keyframes selectPulse{0%{box-shadow:0 0 #007bff66}70%{box-shadow:0 0 0 10px #007bff00}to{box-shadow:0 0 #007bff00}}.stat-item.selected{animation:selectPulse 2s infinite}@media (max-width: 768px){.word-list-controls{grid-template-columns:1fr;gap:20px}.filter-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.stat-item{padding:8px}.stat-icon{font-size:8px;width:20px;height:20px}.stat-value{font-size:1.1em}}.start-button{width:100%;font-size:1.5em;padding:15px;margin:20px 0;color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #007bff4d;text-transform:uppercase;font-weight:700;letter-spacing:1px;box-sizing:border-box}.start-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #007bff66;background:linear-gradient(135deg,#0056b3,var(--primary-color))}.mistake-counter{color:var(--danger-color);font-weight:700}.hint{color:#666;font-size:.9em;margin:10px 0;padding:8px;background-color:#f5f5f5;border-radius:4px;text-align:center}.hint-text{color:var(--danger-color);font-size:.9em;margin-top:5px}.edit-message{padding:10px;margin:10px 0;border-radius:4px;animation:fadeIn .3s ease}.edit-message.success{background-color:var(--success-color);color:#fff}.edit-message.error{background-color:var(--danger-color);color:#fff}.speech-controls{display:flex;gap:8px;align-items:center}.speech-button{padding:8px 12px;border:none;border-radius:var(--border-radius);background-color:var(--primary-color);color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.speech-button:hover:not(:disabled){background-color:var(--hover-color);transform:translateY(-1px)}.speech-button:disabled{background-color:var(--secondary-color);cursor:not-allowed;opacity:.7}.speech-button svg{font-size:1.2em}.typing-game .speech-button{margin:10px 0}.word-list .speech-button{padding:6px 10px;margin:0 5px}[data-theme=dark] .word-list table,[data-theme=dark] .game-history table{background-color:var(--card-bg)}[data-theme=dark] .word-list th,[data-theme=dark] .game-history th{color:var(--text-color)}[data-theme=dark] .word-list tr:hover,[data-theme=dark] .game-history tr:hover{background-color:var(--table-row-hover)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--input-bg);color:var(--text-color);border-color:var(--border-color)}[data-theme=dark] select option{background-color:var(--input-bg);color:var(--text-color)}[data-theme=dark] .mastery-badge{background-color:var(--badge-bg)}[data-theme=dark] .badge-count{background-color:var(--light-color);color:var(--text-color)}[data-theme=dark] .game-info{background-color:var(--card-bg)}[data-theme=dark] .game-info span{color:var(--text-color)}[data-theme=dark] .csv-dropzone{background-color:var(--card-bg);border-color:var(--border-color)}[data-theme=dark] .mode-button{background-color:var(--card-bg);color:var(--text-color);border:1px solid var(--border-color)}[data-theme=dark] .mode-button:hover{background-color:var(--hover-color);border-color:var(--primary-color)}[data-theme=dark] .mode-button.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 0 10px #0d6efd80}[data-theme=dark] .content{background-color:var(--bg-color);border:1px solid var(--border-color)}[data-theme=dark] .app{box-shadow:0 0 20px #0000004d}.custom-words{display:flex;align-items:center;gap:10px;margin-top:15px}.custom-word-input{width:80px;padding:8px;border:2px solid var(--primary-color);border-radius:6px;font-size:1.1em;text-align:center}.word-count-info{color:var(--secondary-color);font-size:.9em}[data-theme=dark] .custom-word-input{background-color:var(--input-bg);color:var(--text-color);border-color:var(--border-color)}.game-play{width:100%;max-width:100%;padding:15px;box-sizing:border-box}@media (max-width: 768px){.app{border-radius:0;box-shadow:none}.content{border-radius:0}.table-container{width:100%;margin:0 -var(--content-padding);overflow-x:auto;-webkit-overflow-scrolling:touch}td,th{padding:8px;font-size:.9em;white-space:normal}input,select,textarea{font-size:16px;max-width:100%;box-sizing:border-box}.game-info{align-items:stretch;gap:10px}.game-stat{flex-direction:row;justify-content:space-between}.stat-title{font-size:.85em}.stat-value{font-size:1.1em}.word-display{padding:15px;margin:10px 0;width:100%;box-sizing:border-box}.current-word{font-size:1.8em;line-height:1.3;word-break:break-word}.edit-mode{padding:20px}.add-word-section,.word-list-edit{margin:10px 0;padding:15px;border-radius:0}.search-section{margin:15px 0}.mode-button,.add-button,.delete-button{padding:12px;min-height:44px}.app-header{padding:10px}.header-content h1{font-size:var(--font-size-xlarge)}.mode-buttons{flex-direction:column}.mode-button{width:100%}.game-settings{padding:10px;border-radius:8px;margin:5px 0}.setting-group{margin:8px 0}.setting-group label{display:block;margin-bottom:5px}.game-info{align-items:flex-start;gap:8px;font-size:.9em}.word-display{padding:var(--content-padding)}.current-word{font-size:2em}.typing-game input{font-size:1.2em;padding:8px}.add-word-form{flex-direction:column}.word-input,.meaning-input{width:100%}.word-list,.word-list-edit,.game-history{overflow-x:auto;-webkit-overflow-scrolling:touch}.word-list th,.word-list-edit th,.game-history th{position:sticky;top:0;background-color:var(--primary-color);z-index:1}.search-container{width:100%;max-width:100%}.search-input{width:100%;max-width:100%;padding:10px 36px;font-size:.9em}.custom-words{flex-direction:column;align-items:flex-start}.custom-word-input{width:100%;max-width:100%}.search-icon{left:10px;font-size:.9em}.clear-search{right:10px;padding:4px}.search-results{padding:0 5px}}@media (max-width: 480px){:root{--content-padding: 8px;--spacing-base: 6px}.app-header{padding:10px}table{font-size:.85em}.typing-game input{font-size:1em;padding:8px}.game-settings{padding:8px}.mode-buttons{flex-direction:column}.mode-button{width:100%}.current-word{font-size:1.5em}.game-history,.typing-instructions{font-size:.8em}.mastery-badges{grid-template-columns:1fr}}.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-base)}@media (max-width: 768px){.add-word-form{display:grid;grid-template-columns:1fr;gap:var(--spacing-base)}}@media (max-width: 480px){:root{--content-padding: 8px;--spacing-base: 6px}.header-content{flex-direction:column;text-align:center}.game-history{font-size:.9em}}@media (hover: none){select,input[type=submit]{min-height:44px}.mode-button,.custom-word-input,.search-input{touch-action:manipulation}}@media print{.app{box-shadow:none}.word-list table{page-break-inside:avoid}}@media (max-width: 768px){.theme-toggle{padding:10px 15px;font-size:1.1em}}.file-operations{display:flex;flex-direction:column;gap:10px;width:100%;margin-bottom:20px}.new-file-button,.export-button.full-width{width:100%;padding:15px;font-size:var(--font-size-base);border:2px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--card-bg);color:var(--text-color);cursor:pointer;transition:all .3s ease}.new-file-button:hover,.export-button.full-width:hover{background-color:var(--hover-color);border-color:var(--primary-color)}.export-button.full-width{background-color:var(--success-color);color:#fff;border-color:var(--success-color)}.export-button.full-width:hover{background-color:#218838;border-color:#1e7e34}.file-info{display:flex;flex-direction:column;gap:10px;width:100%}@media (max-width: 768px){.new-file-button,.export-button.full-width{padding:12px;font-size:.95em}}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.dialog{background-color:var(--card-bg);padding:20px;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;max-width:90%;width:400px}.dialog h3{margin:0 0 15px;color:var(--text-color)}.dialog p{margin:0 0 20px;color:var(--text-color)}.dialog-buttons{display:flex;gap:10px;justify-content:flex-end}.dialog-buttons button{padding:8px 16px;border:none;border-radius:var(--border-radius);cursor:pointer;font-weight:700}.dialog-buttons .confirm-button{background-color:var(--primary-color);color:#fff}.dialog-buttons .cancel-button{background-color:var(--secondary-color);color:#fff}@media (max-width: 768px){.file-operations{flex-direction:column;align-items:stretch;gap:10px}.current-file{text-align:center}.dialog{width:95%;margin:10px}}.no-file-warning{color:var(--danger-color);font-weight:700;padding:8px 12px;background-color:#dc35451a;border-radius:var(--border-radius);border:1px solid var(--danger-color);justify-content:center;display:flex;align-items:center;gap:8px;font-size:.9em}@media (max-width: 768px){.no-file-warning{text-align:center;padding:10px;font-size:.85em}}.autosave-notice{text-align:center;color:var(--success-color);padding:8px;margin:10px 0;font-size:.9em;display:flex;align-items:center;justify-content:center;gap:8px}.autosave-icon{font-size:1.2em}.no-file-warning{color:var(--danger-color);font-weight:700;padding:12px;margin-top:10px;background-color:#dc35451a;border-radius:var(--border-radius);border:1px solid var(--danger-color);text-align:center;line-height:1.4}.file-controls{display:flex;flex-direction:row;gap:10px;width:100%;max-width:100%;margin:0 auto 10px;padding:0}@media (max-width: 768px){.no-file-warning{font-size:.9em;padding:10px}.autosave-notice{font-size:.85em;padding:6px}}.study-card{background-color:var(--card-bg);border-radius:var(--border-radius);padding:30px;margin-bottom:20px;box-shadow:0 2px 10px #0000001a;cursor:pointer;transition:all .3s ease;position:relative;min-height:350px;display:flex;justify-content:center;align-items:center;flex-direction:column}.study-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000026}.word-content{text-align:center}.study-card .word{font-size:3em;margin:0;color:var(--text-color)}.study-card .meaning{font-size:1.5em;margin:20px 0 0;color:var(--secondary-color)}.study-card .speech-button,.study-card .language-toggle{position:absolute;width:40px;height:40px;min-width:40px;min-height:40px;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;background-color:#4a90e2;color:#fff;font-weight:700;padding:0;box-sizing:border-box;line-height:1}.study-card .speech-button{top:20px;right:20px}.study-card .language-toggle{top:20px;left:20px;font-size:1em}.study-card .speech-button:hover,.study-card .language-toggle:hover{background-color:#357abd;transform:scale(1.05)}.study-card .speech-button:disabled{background-color:#ccc;cursor:not-allowed}@media (max-width: 768px){.study-card .speech-button,.study-card .language-toggle{width:40px;height:40px;min-width:40px;min-height:40px}}.study-card .language-toggle:hover{background-color:#357abd}.study-card .language-toggle:disabled{background-color:#ccc;cursor:not-allowed}.study-card:after{content:"クリックで意味を表示";position:absolute;bottom:10px;left:50%;transform:translate(-50%);font-size:.8em;color:var(--secondary-color);opacity:.7}.main-header{background:linear-gradient(135deg,var(--primary-color),#0056b3);padding:15px 0;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:1000}.header-content{margin:0 auto;padding:0 var(--content-padding);display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center}.logo-link{text-decoration:none;color:#fff;transition:transform .3s ease;display:flex;align-items:center}.header-logo{width:28px;height:28px;object-fit:contain;margin-right:4px}.logo-link h1{margin:0;font-size:1.8em;color:#fff}.main-content{padding:var(--content-padding)}.main-nav{display:flex;gap:20px}.main-nav a{color:#ffffffe6;text-decoration:none;padding:8px 16px;border-radius:var(--border-radius);transition:all .3s ease}.main-nav a:hover,.main-nav a.active{background-color:#fff3;color:#fff}.guide-page,.about-page{max-width:800px;margin:0 auto;padding:20px}.guide-section,.about-section{margin-bottom:30px;padding:20px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:0 2px 10px #0000001a}.guide-section h3,.about-section h3{color:var(--primary-color);margin-bottom:15px}.guide-section ul,.about-section ul{padding-left:20px}.guide-section li,.about-section li{margin-bottom:10px;line-height:1.6}@media (max-width: 1024px){.main-nav{gap:10px}.main-nav a{padding:6px 12px;font-size:.9em}.logo-link h1{font-size:1.5em}}.main-content{max-width:1200px;margin:0 auto;padding:var(--content-padding);width:100%;box-sizing:border-box}@media (max-width: 768px){.main-content{max-width:100%;padding:var(--content-padding)}}.header-content{max-width:1200px;margin:0 auto;flex-direction:row;padding:0 var(--content-padding);display:flex;justify-content:space-between;align-items:center;width:100%;box-sizing:border-box}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:10px;z-index:1001}.hamburger{display:flex;flex-direction:column;justify-content:space-between;width:24px;height:20px}.hamburger .bar{width:100%;height:2px;background-color:#fff;transition:all .3s ease}.hamburger.open .bar{background-color:var(--secondary-color)}.hamburger.open .bar:nth-child(1){transform:translateY(9px) rotate(45deg)}.hamburger.open .bar:nth-child(2){opacity:0}.hamburger.open .bar:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.theme-toggle.desktop-only{display:flex;background:none;border:none;font-size:1.2em;cursor:pointer;padding:8px;color:#fff;border-radius:var(--border-radius);transition:all .3s ease}.theme-toggle-mobile{display:none;width:100%;padding:15px;text-align:left;background:none;border:none;color:var(--text-color);font-size:1em;cursor:pointer;transition:all .3s ease}.theme-toggle-mobile:hover{background-color:var(--hover-color)}@media (max-width: 1024px){.theme-toggle.desktop-only{display:none}.theme-toggle-mobile{display:block;border-top:1px solid var(--border-color)}.menu-toggle{display:block}.hamburger .bar{background-color:#fff}.main-nav{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--card-bg);padding:80px 20px 20px;flex-direction:column;gap:20px;transition:right .3s ease;z-index:1000;box-shadow:-5px 0 15px #0000001a}.main-nav.open{right:0}.main-nav a{color:var(--text-color);width:100%;text-align:left;padding:15px}.main-nav a:hover,.main-nav a.active{background-color:var(--hover-color)}.theme-toggle{margin-top:auto;width:100%}[data-theme=dark] .main-nav{background-color:var(--card-bg)}[data-theme=dark] .main-nav a{color:var(--text-color)}}.header-controls{display:flex;align-items:center;gap:20px}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:999;display:none}@media (max-width: 768px){.menu-overlay{display:block}.main-nav{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--card-bg);padding:80px 20px 20px;flex-direction:column;gap:20px;transition:right .3s ease;z-index:1000;box-shadow:-5px 0 15px #0000001a}.main-nav.open{right:0}.theme-toggle-mobile{display:block;width:100%;text-align:left;padding:15px;border-top:1px solid var(--border-color);background:none;border:none;color:var(--text-color);cursor:pointer}.theme-toggle-mobile:hover{background-color:var(--hover-color)}}.mobile-menu{display:none;position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--card-bg);padding:80px 20px 20px;flex-direction:column;gap:20px;transition:right .3s ease;z-index:1000}.mobile-menu.open{right:0}@media (max-width: 1024px){.main-nav,.theme-toggle.desktop-only{display:none}.menu-toggle{display:block}.mobile-menu{display:flex}.mobile-menu a{color:var(--text-color);text-decoration:none;padding:15px;width:100%;text-align:left;opacity:.9;transition:all .3s ease}.mobile-menu a:hover,.mobile-menu a.active{background-color:var(--hover-color);opacity:1}.theme-toggle-mobile{width:100%;text-align:left;padding:15px;border-top:1px solid var(--border-color);background:none;border:none;color:var(--text-color);cursor:pointer}.theme-toggle-mobile:hover{background-color:var(--hover-color)}}.main-footer{margin-top:auto;padding:20px 0;color:var(--text-color)}.footer-content{max-width:1200px;margin:0 auto;padding:0 var(--content-padding);display:flex;justify-content:center;align-items:center}.copyright{margin:0;font-size:.9em;opacity:.9;text-align:center}@media (max-width: 768px){.main-footer{padding:15px 0}}.nav-icon{margin-right:8px}.hamburger-icon{font-size:1.5em;color:#fff}.hamburger-icon.open{color:var(--secondary-color)}.mobile-menu .nav-icon{width:20px;margin-right:12px}.theme-toggle-mobile .nav-icon{margin-right:12px}.page-content{max-width:800px;margin:0 auto;padding:40px var(--content-padding);box-sizing:border-box;width:100%}.page-content h1{color:var(--primary-color);margin-bottom:40px;font-size:2em;text-align:center}.content-section{background-color:var(--card-bg);border-radius:var(--border-radius);padding:30px;margin:30px 0;box-shadow:0 2px 10px #0000001a}.content-section h2{color:var(--text-color);margin:0 0 20px;font-size:1.5em;border-bottom:2px solid var(--primary-color);padding-bottom:10px}.content-section p{margin:0 0 20px;line-height:1.8;color:var(--text-color)}.content-section ul{margin:0;padding-left:25px}.content-section li{margin:12px 0;line-height:1.6;color:var(--text-color)}@media (max-width: 768px){.page-content{padding:30px var(--content-padding)}.content-section{padding:20px;margin:20px 0}.page-content h1{font-size:1.8em;margin-bottom:30px}.content-section h2{font-size:1.3em;margin-bottom:15px}}.typing-controls input{flex:1;padding:12px;font-size:1.1em;border:2px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--input-bg);color:var(--text-color);height:48px;box-sizing:border-box}.submit-button{padding:12px 24px;font-size:1.1em;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;height:48px;box-sizing:border-box}.submit-button:hover:not(:disabled){background-color:var(--hover-color);transform:translateY(-1px)}.submit-button:disabled{background-color:var(--secondary-color);cursor:not-allowed;opacity:.7}@media (max-width: 768px){.typing-controls{flex-direction:column}.submit-button{padding:15px;width:100%}}.swipe-hint{position:absolute;bottom:40px;left:50%;transform:translate(-50%);font-size:.8em;color:var(--secondary-color);opacity:.7;white-space:nowrap}.study-card.swiping-left{transform:translate(-100px) rotate(-5deg);opacity:.5}.study-card.swiping-right{transform:translate(100px) rotate(5deg);opacity:.5}.nav-button{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;font-size:2em;color:var(--secondary-color);cursor:pointer;padding:20px;transition:all .3s ease;opacity:.5}.nav-button:hover{opacity:1;color:var(--primary-color)}.nav-button.prev{left:0}.nav-button.next{right:0}@media (max-width: 768px){.nav-button{font-size:1.5em;padding:15px}}.word-lists{display:grid;gap:20px;margin-top:20px}.word-list-card{background-color:var(--card-bg);border-radius:var(--border-radius);padding:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 2px 10px #0000001a;transition:all .3s ease}.word-list-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000026}.list-meta{display:flex;gap:15px;font-size:.9em}.word-count,.level,.category{background-color:var(--light-color);padding:4px 8px;border-radius:4px;color:var(--text-color)}.download-button{padding:10px 20px;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.download-button:hover{background-color:var(--hover-color);transform:translateY(-1px)}.category-filter{margin-bottom:20px;display:flex;align-items:center;gap:10px}.category-filter label{width:120px}@media (max-width: 768px){.word-list-card{flex-direction:column;align-items:flex-start}.download-button{width:100%;justify-content:center}.list-meta{flex-wrap:wrap;gap:10px}}.mastery-graph{margin:20px 0;padding:20px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:0 2px 10px #0000001a}.mastery-graph h3{margin-bottom:15px;color:var(--text-color)}.graph-container{display:flex;gap:8px;margin-top:15px}.graph-bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.bar{width:100%;background-color:var(--border-color);border-radius:4px;position:relative;height:150px;overflow:hidden}.bar-fill{position:absolute;bottom:0;left:0;width:100%;transition:height .3s ease}.bar-label{font-size:.8em;color:var(--text-color);text-align:center}.bar-value{font-size:.9em;font-weight:700;color:var(--text-color)}@media (max-width: 768px){.graph-container{gap:4px}.bar{height:120px}.bar-label{font-size:.7em}.bar-value{font-size:.8em}}.pie-chart-container{margin:20px 0;padding:20px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:0 2px 10px #0000001a;text-align:center}.pie-chart-container h3{margin-bottom:15px;color:var(--text-color);text-align:center}.pie-chart-wrapper{position:relative;width:250px;height:250px;margin:0 auto}.pie-chart{position:relative;width:100%;height:100%;border-radius:50%;transition:all .3s ease}.pie-chart:hover{transform:scale(1.02)}.pie-chart-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--card-bg);border-radius:50%;width:150px;height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 15px #0000001a;z-index:3}.total-words{font-size:2em;font-weight:700;color:var(--primary-color);margin-bottom:5px}.mastery-rate{font-size:1.1em;color:var(--text-color)}.mastery-rate-value{font-weight:700;color:var(--success-color)}.pie-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:30px;justify-items:start}.legend-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--border-radius);transition:all .3s ease;cursor:pointer;width:90%;border:2px solid transparent}.legend-item:hover{background-color:var(--hover-color)}.legend-item.selected{border-color:var(--primary-color);background-color:var(--hover-color)}.legend-color{width:16px;height:16px;border-radius:4px;transition:transform .3s ease}.legend-item:hover .legend-color{transform:scale(1.2)}.legend-info{display:flex;flex-direction:column;gap:2px}.legend-label{font-size:.9em;color:var(--text-color);font-weight:700}.legend-value{font-size:.85em;color:var(--secondary-color)}@media (max-width: 768px){.pie-chart-wrapper{width:200px;height:200px}.pie-chart-center{width:120px;height:120px}.total-words{font-size:1.5em}.mastery-rate{font-size:.9em}.pie-legend{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.legend-item{padding:6px}}.game-mode-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.mode-card{background-color:var(--card-bg);border:2px solid var(--border-color);border-radius:var(--border-radius);padding:20px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center}.mode-card:hover{transform:translateY(-2px);border-color:var(--primary-color);box-shadow:0 4px 15px #007bff33}.mode-card.selected{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.mode-icon{font-size:2em;color:var(--primary-color)}.mode-card.selected .mode-icon,.difficulty-card.selected .mode-icon{color:#fff}.mode-title{font-size:1.2em;font-weight:700;margin:0}.mode-description{font-size:.9em;opacity:.8;margin:0}.difficulty-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.difficulty-card{background-color:var(--card-bg);border:2px solid var(--border-color);border-radius:var(--border-radius);padding:20px;cursor:pointer;transition:all .3s ease;text-align:center}.difficulty-card:hover{transform:translateY(-2px);border-color:var(--primary-color);box-shadow:0 4px 15px #007bff33}.difficulty-card.selected{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.difficulty-level{font-size:1.2em;font-weight:700;margin-bottom:10px}.word-count{font-size:.9em;opacity:.8}.custom-words-container{background-color:var(--card-bg);border:2px solid var(--border-color);border-radius:var(--border-radius);padding:20px;margin-top:20px;text-align:center;transition:all .3s ease}.custom-words-container.active{border-color:var(--primary-color);box-shadow:0 4px 15px #007bff33}.custom-words{display:flex;flex-direction:column;align-items:center;gap:15px}.custom-word-input{width:120px;padding:12px;font-size:1.2em;text-align:center;border:2px solid var(--primary-color);border-radius:var(--border-radius);background-color:var(--input-bg);color:var(--text-color)}.word-count-info{font-size:.9em;color:var(--secondary-color)}@media (max-width: 768px){.game-mode-selection,.difficulty-selection{grid-template-columns:1fr;gap:15px}.mode-card,.difficulty-card{padding:15px}.mode-icon{font-size:1.5em}.custom-words-container{padding:15px}}.answer-display{background-color:#ffebee;color:#d32f2f;padding:10px;border-radius:4px;margin:10px 0;font-weight:700;border:1px solid #ffcdd2;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .answer-display{background-color:#3d1f1f;color:#ff6b6b}[data-theme=dark] .hint{background-color:#2a2a2a;color:#aaa}.pagination{display:flex;justify-content:center;align-items:center;margin-top:1.5rem;gap:.5rem;padding:1rem}.pagination-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:50%;transition:all .3s ease}.pagination-button:hover:not(:disabled){background:var(--hover-color);border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-1px)}.pagination-button:disabled{background:var(--card-bg);color:var(--border-color);cursor:not-allowed;opacity:.6}.page-info{margin:0 1rem;font-size:.95rem;color:var(--text-color);min-width:4rem;text-align:center}@media (max-width: 768px){.pagination{padding:.5rem}.pagination-button{width:32px;height:32px}.page-info{margin:0 .5rem;font-size:.9rem}}.typing-results-table{width:100%;overflow-x:auto;border-radius:var(--border-radius);margin:2rem 0 1rem;scrollbar-width:none;-ms-overflow-style:none}.game-play .typing-results-table{margin-top:2rem;border-top:1px solid var(--border-color);padding-top:2rem}.typing-results-table::-webkit-scrollbar{display:none}.typing-results-table table{width:100%;min-width:800px;border-collapse:collapse;background-color:var(--card-bg);border-radius:var(--border-radius);overflow:hidden}.typing-results-table th{background-color:var(--primary-color);color:#fff;font-weight:700;padding:12px 15px;text-align:left;position:sticky;top:0;z-index:1;white-space:nowrap}.typing-results-table td{padding:10px 15px;border-bottom:1px solid var(--border-color);color:var(--text-color);transition:background-color .2s ease}.typing-results-table tr:hover td{background-color:var(--hover-color)}.typing-results-table td:nth-child(1),.typing-results-table td:nth-child(2){min-width:150px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.typing-results-table td:nth-child(3){min-width:120px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.typing-results-table{margin:.5rem 0}.typing-results-table th,.typing-results-table td{padding:8px 12px;font-size:.9em}.typing-results-table td:nth-child(1),.typing-results-table td:nth-child(2),.typing-results-table td:nth-child(3){min-width:100px;max-width:150px}}.typing-result-correct{color:var(--success-color);font-weight:700}.typing-result-incorrect{color:var(--danger-color);font-weight:700}.typing-results-table tr.incorrect td{color:var(--danger-color)}.typing-results-table tr.incorrect td:nth-child(3){text-decoration:line-through;opacity:.8}.speed-indicator{display:flex;align-items:center;gap:8px}.speed-bar{height:8px;border-radius:4px;background:var(--primary-color);opacity:.3}.speed-bar.active{opacity:1}@media (max-width: 768px){.speed-indicator{flex-direction:column;align-items:flex-start;gap:4px}}.game-history table{width:100%;border-collapse:collapse;margin-top:1rem;background:var(--card-bg);border-radius:var(--border-radius);overflow:hidden}.game-history th{background-color:var(--primary-color);color:#fff;padding:12px;text-align:left}.game-settings-container{display:flex;flex-direction:column;gap:30px;margin:0 auto}.selection-row{display:flex;gap:20px;justify-content:center;align-items:flex-start}.mode-selector,.difficulty-selector{flex:1;position:relative}.selector-header{padding:12px 15px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);font-size:1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.selector-header:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.selector-header span{display:flex;align-items:center;gap:8px}.mode-icon{color:var(--primary-color)}.mode-list{position:absolute;top:100%;left:0;right:0;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-top:5px;box-shadow:0 4px 12px #0000001a;z-index:1000}.mode-list .dropdown-item{padding:12px 15px;cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;gap:8px}.mode-list .dropdown-item:hover{background-color:var(--hover-color)}.mode-list .dropdown-item.selected{background-color:var(--primary-color);color:#fff}.mode-list .dropdown-item.selected .mode-icon{color:#fff}.start-button{background:linear-gradient(45deg,#3bf688,#2196f3);color:#fff;border:none;border-radius:var(--border-radius);padding:40px;font-size:2rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #007bff4d;display:block;width:100%;margin:auto 0;text-transform:uppercase;letter-spacing:1px}.start-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #007bff66;background:linear-gradient(45deg,#2196f3,#3bf688)}.start-button:active{transform:translateY(1px);box-shadow:0 2px 10px #007bff4d}.speech-language-settings{position:relative;width:100%;margin-bottom:20px}.speech-language-settings .dataset-select-button{width:100%;padding:12px 15px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);font-size:1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.speech-language-settings .dataset-select-button:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.speech-language-settings .dataset-select-button .button-icon{margin-right:8px}.speech-language-settings .dataset-list{position:absolute;top:100%;left:0;right:0;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-top:5px;box-shadow:0 4px 12px #0000001a;z-index:1000}.speech-language-settings .dataset-item-container{border-bottom:1px solid var(--border-color)}.speech-language-settings .dataset-item-container:last-child{border-bottom:none}.speech-language-settings .dataset-item{width:100%;padding:12px 15px;background:none;border:none;color:var(--text-color);text-align:left;cursor:pointer;transition:background-color .2s ease}.speech-language-settings .dataset-item:hover{background-color:var(--hover-color)}@media (max-width: 768px){.selection-row{flex-direction:column;gap:20px}.mode-selector,.difficulty-selector{width:100%}.selector-header,.mode-list .dropdown-item{padding:12px 15px}}.section-heading{color:var(--text-color);font-size:1.2em;margin:1.5em 0 1em;padding-bottom:.5em;border-bottom:2px solid var(--primary-color);opacity:.9}@media (max-width: 768px){.word-list th,.word-list td,.typing-results-table th,.typing-results-table td,.edit-mode th,.edit-mode td,.game-history th,.game-history td{padding:20px 14px;font-size:1rem;line-height:1.4}}.game-setup{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1200px;margin:0 auto}.current-dataset-icon,.speech-language-icon{margin-right:10px;color:var(--primary-color);font-size:1.2em}.current-dataset-label,.speech-language-label{margin-right:10px;color:var(--text-secondary);font-weight:700}.current-dataset-name{color:var(--text-color);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.word-list-info{display:flex;gap:20px;margin-bottom:20px;align-items:center}.current-dataset,.current-speech-language{display:flex;align-items:center;padding:10px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--card-shadow);border:1px solid var(--border-color);flex:1}@media (max-width: 768px){.word-list-info{gap:10px;padding:0 10px;flex-direction:column}.word-list-info .current-dataset,.word-list-info .current-speech-language{width:100%}}.selection-container{display:flex;gap:20px;width:100%;margin-bottom:20px}.selection-group{flex:1;display:flex;flex-direction:column;gap:10px}.dataset-selector{display:flex;gap:20px;margin-bottom:20px}.dataset-selector .section-heading{flex:1}@media (max-width: 768px){.selection-container,.dataset-selector{flex-direction:column;gap:10px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{padding:2rem;background:var(--background-color);border-radius:8px;box-shadow:0 2px 10px #0000001a;width:90%;max-width:500px;margin:10px}.modal h2{margin-top:0;color:var(--text-color)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-color)}.form-group input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-background);color:var(--text-color)}.modal-buttons{display:flex;justify-content:flex-end;gap:1rem}.error-message{color:var(--error-color);margin-bottom:1rem;font-size:.9rem}.primary-button{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.primary-button:disabled{background:var(--disabled-color);cursor:not-allowed}.secondary-button{background:var(--secondary-color);color:var(--text-color);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:4px;cursor:pointer}.secondary-button:disabled{opacity:.5;cursor:not-allowed}.add-button{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:.5rem}.add-button:disabled{background:var(--disabled-color);cursor:not-allowed}.filters-section{background:var(--card-bg);padding:20px;border-radius:10px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a}.filter-options{display:flex;gap:20px;flex-wrap:wrap}.filter-group{flex:1;min-width:200px}.filter-group label{display:block;margin-bottom:8px;font-weight:700}.filter-group select{width:100%;padding:10px;border:2px solid #ddd;border-radius:8px;font-size:14px}.word-list-card{position:relative;background:linear-gradient(145deg,#fff,#f0f0f0);border-radius:10px;padding:20px;height:300px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d,inset 0 0 15px #0000001a;transition:all .3s ease;border-left:12px solid #4a90e2;display:flex;flex-direction:column}.word-list-card:hover{transform:translateY(-5px);box-shadow:0 14px 28px #00000040,0 10px 10px #00000038,inset 0 0 15px #0000001a}.word-list-card h3{font-size:1.4em;margin:0 0 15px;color:#333;font-weight:700;border-bottom:2px solid #eee;padding-bottom:10px}.word-list-card .description{font-size:.9em;color:#666;margin-bottom:15px;flex-grow:1}.list-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.list-meta span{padding:4px 8px;border-radius:15px;font-size:.8em;font-weight:500}.word-count{background-color:#e3f2fd;color:#1976d2}.level{background-color:#f3e5f5;color:#7b1fa2}.category{background-color:#e8f5e9;color:#388e3c}.language{background-color:#fff3e0;color:#f57c00}.add-button{width:100%;padding:12px;background-color:#4a90e2;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.add-button:disabled{background-color:#ccc;cursor:not-allowed}.advertisement-container{width:100%;max-width:100%;text-align:center;background-color:var(--bg-color-secondary);min-height:90px;margin-top:10px}.filters-section{margin:2rem 0;position:relative;z-index:2}.filter-group .filter-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.filter-group{position:relative}.filter-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.custom-select{position:relative;width:100%}.select-button{width:100%;padding:.8rem;border:2px solid var(--border-color);border-radius:8px;background-color:var(--bg-secondary);color:var(--text-primary);font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.select-button:hover{border-color:var(--primary-color)}.select-button.active{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color-alpha)}.select-options{position:absolute;top:calc(100% + 5px);left:0;right:0;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;max-height:200px;overflow-y:auto;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;box-shadow:0 4px 12px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.select-options.show{opacity:1;visibility:visible;transform:translateY(0)}.select-option{padding:.8rem;cursor:pointer;transition:all .2s ease;color:var(--text-primary)}.select-option:hover{background-color:var(--primary-color-alpha)}.select-option.selected{background-color:var(--primary-color);color:#fff}.select-options::-webkit-scrollbar{width:8px}.select-options::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.select-options::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.word-lists{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:2rem;position:relative;z-index:1;min-height:200px}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem;background:var(--bg-secondary);border-radius:12px;color:var(--text-secondary);font-size:1.1rem;line-height:1.6;border:2px dashed var(--border-color)}.empty-state p{margin:0;opacity:.8}.empty-state strong{color:var(--primary-color);font-weight:500}.word-list-card{background:var(--bg-secondary);border-radius:8px;transition:all .3s ease;position:relative;overflow:hidden;border:none;box-shadow:-5px 5px 15px #0003,2px 0 5px #0000001a;display:flex;flex-direction:column}.word-list-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:var(--primary-color);border-radius:3px 0 0 3px}.word-list-card:after{content:"";position:absolute;left:3px;top:0;bottom:0;width:4px;background:linear-gradient(to right,rgba(0,0,0,.1),transparent)}.word-list-card:hover{transform:translateY(-5px);box-shadow:-8px 8px 20px #00000040,3px 0 8px #00000026}.word-list-card h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.2rem;position:relative}.word-list-card .description{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem;line-height:1.5}.list-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.list-meta span{padding:.3rem .8rem;border-radius:20px;font-size:.8rem;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.add-button{width:100%;padding:.8rem;border:none;border-radius:8px;background:transparent;border:1px solid var(--border-color);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;overflow:hidden}.add-button.premium{color:gold;border-color:gold;background-color:#00000080}.button-container{width:100%}.add-button:hover{transform:translateY(-2px);border-color:var(--primary-color)}.add-button:disabled{background:var(--disabled-color);cursor:not-allowed;transform:none}@media (prefers-color-scheme: dark){.word-list-card{background:var(--bg-secondary);box-shadow:-5px 5px 15px #0000004d,2px 0 5px #0003}.word-list-card:hover{box-shadow:-8px 8px 20px #0006,3px 0 8px #0000004d}.select-options{background-color:var(--bg-primary);box-shadow:0 4px 12px #0000004d}}@media (max-width: 1024px){.filter-options{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.filter-options{grid-template-columns:1fr}}.landing-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.landing-container .hero-section{text-align:center;padding:4rem 0;margin-bottom:4rem}.landing-container .hero-content h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;color:#1a202c}.landing-container .hero-content .accent{color:#667eea}.landing-container .hero-description{font-size:1.125rem;color:#4a5568;margin-bottom:2rem;line-height:1.6}.landing-container .hero-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.landing-container .demo-card-section{padding:3rem 1rem;text-align:center;background-color:var(--bg-color-secondary);border-radius:10px;margin:2rem auto;max-width:1200px;position:relative;overflow:hidden}.landing-container .demo-description{max-width:800px;margin:0 auto 2rem}.landing-container .demo-card-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;overflow:visible;width:100%;max-width:400px;margin:0 auto}.landing-container .demo-study-card{position:relative;width:300px;height:400px;border-radius:10px;box-shadow:0 4px 15px #0000001a;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:pan-y pinch-zoom;-webkit-touch-callout:none;border:1px solid var(--border-color)}.landing-container .demo-study-card:hover{box-shadow:0 8px 25px #00000026}.landing-container .demo-word-content{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.landing-container .demo-word{font-size:2rem;margin:0;color:var(--text-color-primary);transition:font-size .3s ease}.landing-container .demo-meaning{font-size:1.5rem;color:var(--accent-color);margin-top:10px}.landing-container .demo-language-button{position:absolute;top:20px;left:20px;width:40px;height:40px;background-color:var(--primary-color);color:#fff;border:none;border-radius:50%;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease;z-index:10;display:flex;align-items:center;justify-content:center}.landing-container .demo-language-button:hover{background-color:#357abd}.landing-container .demo-speech-button{position:absolute;top:20px;right:20px;width:40px;height:40px;background-color:var(--primary-color);color:#fff;border:none;border-radius:50%;font-size:1rem;cursor:pointer;transition:background-color .2s ease;z-index:10;display:flex;align-items:center;justify-content:center}.landing-container .demo-speech-button:hover{background-color:#357abd}.landing-container .demo-hint-text{position:absolute;bottom:30px;left:50%;transform:translate(-50%);font-size:.8em;color:var(--secondary-color);opacity:.7}.landing-container .demo-mastery-button{position:absolute;bottom:10px;background:none;border:none;font-size:1.2rem;cursor:pointer;transition:all .2s ease;z-index:10;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.landing-container .demo-mastery-button.bad{left:10px;color:#f44;background-color:#ff44441a}.landing-container .demo-mastery-button.good{right:10px;color:#4f4;background-color:#44ff441a}.landing-container .demo-mastery-button.bad:hover{background-color:#f443}.landing-container .demo-mastery-button.good:hover{background-color:#4f43}.landing-container .demo-nav-button{position:absolute;background:none;border:none;color:var(--text-color-secondary);font-size:1.5rem;cursor:pointer;transition:color .2s ease;padding:.5rem;z-index:10}.landing-container .demo-nav-button.prev{left:20px;top:50%;transform:translateY(-50%)}.landing-container .demo-nav-button.next{right:20px;top:50%;transform:translateY(-50%)}.landing-container .demo-instructions{background-color:var(--bg-color);padding:1rem;border-radius:10px;box-shadow:0 2px 10px #0000000d;max-width:300px}.landing-container .demo-instructions p{margin:.5rem 0;font-size:.9rem}.landing-container .swipe-hint{position:absolute;top:50%;transform:translateY(-50%);background-color:#000000b3;color:#fff;padding:10px 15px;border-radius:20px;font-size:.9rem;transition:opacity .3s ease;pointer-events:none}.landing-container .swipe-hint.left{left:10px}.landing-container .swipe-hint.right{right:10px}.landing-container .demo-feedback{position:absolute;bottom:10px;left:50%;transform:translate(-50%);padding:.5rem 1rem;border-radius:5px;font-weight:700;animation:fadeInOut 2s ease;z-index:20}.landing-container .demo-feedback.success{background-color:#4caf50e6;color:#fff}.landing-container .demo-feedback.warning{background-color:#ff9800e6;color:#fff}@keyframes fadeInOut{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}@media (min-width: 768px){.demo-card-container{flex-direction:row;justify-content:center;align-items:center}.demo-study-card{width:400px;height:400px}.demo-word{font-size:2.5rem}}.features-section{padding:4rem 0;background-color:#d9f5ff;border-radius:1rem;margin-bottom:4rem}.features-section h2{text-align:center;font-size:2rem;color:#1a202c;margin-bottom:3rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:0 2rem}.feature-card{background:#fff;padding:2rem;border-radius:1rem;text-align:center;box-shadow:0 4px 6px #0000000d;transition:transform .2s}.feature-card:hover{transform:translateY(-5px)}.feature-icon{font-size:2rem;color:#667eea;margin-bottom:1rem}.feature-card h3{font-size:1.25rem;color:#2d3748;margin-bottom:1rem}.feature-card p{color:#4a5568;line-height:1.6}.how-to-section{padding:4rem 0;margin-bottom:4rem}.how-to-section h2{text-align:center;font-size:2rem;color:#1a202c;margin-bottom:3rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:0 2rem}.step-card{text-align:center;padding:2rem;position:relative}.step-number{width:2.5rem;height:2.5rem;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;margin:0 auto 1rem}.step-card h3{font-size:1.25rem;color:#2d3748;margin-bottom:1rem}.step-card p{color:#4a5568;line-height:1.6}.cta-section{text-align:center;padding:4rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;color:#fff}.cta-section h2{font-size:2rem;margin-bottom:1.5rem}.cta-section p{font-size:1.125rem;margin-bottom:2rem;opacity:.9}.cta-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;text-decoration:none;transition:all .2s}.cta-button.primary{background-color:#667eea;color:#fff}.cta-button.primary:hover{background-color:#5a67d8}.cta-button.secondary{background-color:#ececec;color:#2d3748}.cta-button.secondary:hover{background-color:#c6c6c6}.cta-button.large{font-size:1.125rem;padding:1rem 2rem}[data-theme=dark] .hero-content h1{color:#f7fafc}[data-theme=dark] .hero-description{color:#e2e8f0}[data-theme=dark] .features-section{background-color:#2d3748}[data-theme=dark] .features-section h2{color:#f7fafc}[data-theme=dark] .feature-card{background:#1a202c}[data-theme=dark] .feature-card h3{color:#e2e8f0}[data-theme=dark] .feature-card p{color:#cbd5e0}[data-theme=dark] .how-to-section h2{color:#f7fafc}[data-theme=dark] .step-card h3{color:#e2e8f0}[data-theme=dark] .step-card p{color:#cbd5e0}[data-theme=dark] .cta-button.secondary{background-color:#2d3748;color:#f7fafc}[data-theme=dark] .cta-button.secondary:hover{background-color:#4a5568}[data-theme=dark] .demo-study-card.expanded{background-color:transparent}[data-theme=dark] .demo-study-card.expanded .demo-hint-text{color:#fff}@media (max-width: 768px){.hero-content h1{font-size:2rem}.hero-description{font-size:1rem}.features-grid,.steps-grid{grid-template-columns:1fr}.feature-card,.step-card{padding:1.5rem}body{overflow-x:hidden}.demo-study-card{max-width:70vw}.demo-study-card.expanded{width:90vw;max-width:90vw;height:60vh}}.testimonials-section{padding:4rem 0;margin-bottom:4rem}.testimonials-section h2{text-align:center;font-size:2rem;color:#1a202c;margin-bottom:3rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;padding:0 2rem}.testimonial-card{background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px #0000000d;transition:transform .2s}.testimonial-card:hover{transform:translateY(-5px)}.testimonial-content{position:relative;margin-bottom:1.5rem}.quote-icon{color:#667eea;opacity:.2;font-size:1.5rem}.quote-icon.left{position:absolute;top:-.5rem;left:-.5rem}.quote-icon.right{position:absolute;bottom:-.5rem;right:-.5rem}.testimonial-content p{color:#4a5568;line-height:1.6;font-size:.875rem;margin:0;padding:1rem}.testimonial-author{display:flex;align-items:center;gap:1rem;margin-top:1rem}.author-info{flex:1}.author-name{font-weight:600;color:#2d3748;margin:0}.author-detail{color:#667eea;font-size:.875rem;margin:.25rem 0 0}[data-theme=dark] .testimonials-section h2{color:#f7fafc}[data-theme=dark] .testimonial-card{background:#1a202c}[data-theme=dark] .testimonial-content p{color:#e2e8f0}[data-theme=dark] .author-name{color:#f7fafc}[data-theme=dark] .author-detail,[data-theme=dark] .quote-icon{color:#818cf8}@media (max-width: 768px){.testimonials-grid{grid-template-columns:1fr}.testimonial-card{padding:1.5rem}}.author-avatar{width:3rem;height:3rem;background-color:#e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#718096;font-size:1.5rem;flex-shrink:0}[data-theme=dark] .author-avatar{background-color:#2d3748;color:#a0aec0}.landing-footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;padding:0 1rem}.footer-link{color:#4a5568;text-decoration:none;font-size:.875rem;transition:color .2s}.footer-link:hover{color:#667eea}[data-theme=dark] .footer-link{color:#e2e8f0}[data-theme=dark] .footer-link:hover{color:#818cf8}@media (max-width: 768px){.landing-footer-links{flex-direction:column;align-items:center;gap:1rem}}.plans-section{padding:4rem 0;margin-bottom:4rem}.plans-section h2{text-align:center;font-size:2rem;color:#1a202c;margin-bottom:3rem}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;padding:0 2rem;max-width:1000px;margin:0 auto}.plan-card{background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 4px 6px #0000000d;position:relative;transition:transform .2s;display:flex;flex-direction:column;height:100%}.plan-card:hover{transform:translateY(-5px)}.plan-card.premium{border:2px solid #667eea}.plan-badge{position:absolute;top:-.75rem;right:1.5rem;background:#667eea;color:#fff;padding:.25rem 1rem;border-radius:1rem;font-size:.875rem;font-weight:500}.plan-header{text-align:center;margin-bottom:2rem}.plan-header h3{font-size:1.5rem;color:#2d3748;margin-bottom:.5rem}.plan-price{font-size:2.5rem;font-weight:700;color:#2d3748;margin:0}.plan-price span{font-size:1rem;font-weight:400;color:#718096}.plan-saving{font-size:.9rem;color:#48bb78;margin-top:.5rem;font-weight:500}[data-theme=dark] .plan-saving{color:#68d391}.plan-features{list-style:none;padding:0;margin:0 0 2rem;flex-grow:1}.plan-features li{display:flex;align-items:center;gap:.75rem;color:#4a5568;margin-bottom:1rem;font-size:.875rem}.check-icon{color:#667eea;font-size:1rem}.plan-button{display:block;padding:.75rem;text-align:center;border-radius:.5rem;font-weight:500;text-decoration:none;transition:all .2s;background-color:#fff;border:1px solid #667eea;color:#667eea;margin-top:auto}.plan-button:hover{background-color:#f7fafc}.plan-button.premium{background-color:#667eea;color:#fff;border:none}.plan-button.premium:hover{background-color:#5a67d8}[data-theme=dark] .plans-section h2{color:#f7fafc}[data-theme=dark] .plan-card{background:#1a202c}[data-theme=dark] .plan-header h3,[data-theme=dark] .plan-price{color:#f7fafc}[data-theme=dark] .plan-price span{color:#a0aec0}[data-theme=dark] .plan-features li{color:#e2e8f0}[data-theme=dark] .plan-button{background-color:#2d3748;border-color:#818cf8;color:#818cf8}[data-theme=dark] .plan-button:hover{background-color:#374151}[data-theme=dark] .plan-button.premium{background-color:#818cf8;color:#1a202c}[data-theme=dark] .plan-button.premium:hover{background-color:#6366f1}@media (max-width: 768px){.plans-grid{grid-template-columns:1fr;gap:7rem;padding:0 1rem}}@media (min-width: 768px) and (max-width: 1024px){.landing-container{max-width:95%;margin:0 auto;padding:1.5rem}.features-grid,.steps-grid,.testimonials-grid,.plans-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:0}.feature-card,.step-card,.testimonial-card,.plan-card{margin:0}.hero-content h1{font-size:2.2rem}.features-section,.how-to-section,.testimonials-section,.plans-section{padding:3rem 1.5rem;margin-bottom:3rem}.feature-card h3,.step-card h3,.testimonial-card h3{font-size:1.1rem}.feature-card p,.step-card p,.testimonial-card p{font-size:.9rem}}.social-media-links{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin:3rem auto;flex-wrap:wrap;max-width:800px;padding:0 1rem;box-sizing:border-box}.social-link{display:flex;align-items:center;gap:.5rem;padding:.8rem 1.2rem;border-radius:50px;text-decoration:none;transition:all .3s ease;font-weight:500;min-width:120px;justify-content:center;font-size:.9rem;box-sizing:border-box}.social-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}@media (max-width: 768px){.social-media-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 1rem;padding:0;width:calc(100% - 2rem)}.social-link{width:100%;min-width:unset;padding:.7rem 1rem;font-size:.85rem}}.social-link:nth-child(1){background-color:red;color:#fff}.social-link:nth-child(1):hover{background-color:#c00}.social-link:nth-child(2){background-color:#000;color:#fff}.social-link:nth-child(2):hover{background-color:#333}.social-link:nth-child(3){background:linear-gradient(45deg,#405de6,#5851db,#833ab4,#c13584,#e1306c,#fd1d1d);color:#fff}.social-link:nth-child(3):hover{background:linear-gradient(45deg,#304ad1,#4742c6,#72309f,#ac2e73,#cb1b5b,#e81818)}.social-link:nth-child(4){background-color:#000;color:#fff}.social-link:nth-child(4):hover{background-color:#333}.social-link:nth-child(5){color:#fff;background-color:red}.social-link:nth-child(5):hover{background-color:#c00}.social-link:nth-child(6){color:#fff;background-color:#000}.social-link:nth-child(6):hover{background-color:#333}.video-section{text-align:center}.video-section h2{font-size:2rem;color:#1a202c;margin-bottom:2rem}.video-container{position:relative;width:100%;max-width:800px;margin:0 auto;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px;box-shadow:0 10px 30px #0000001a}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:12px}[data-theme=dark] .video-section h2{color:#f7fafc}@media (max-width: 768px){.video-container{max-width:100%}}.demo-expand-button{position:absolute;bottom:20px;right:20px;width:40px;height:40px;background-color:var(--primary-color);color:#fff;border:none;border-radius:50%;font-size:1rem;cursor:pointer;transition:background-color .2s ease;z-index:10;display:flex;align-items:center;justify-content:center}.demo-expand-button:hover{background-color:#357abd}.demo-study-card.expanded{position:fixed;top:50%;left:50%;width:75vw;height:70vh;max-width:600px;max-height:500px;z-index:900;box-shadow:0 10px 30px #0003;cursor:pointer;background-color:#fff}.demo-study-card.expanded .demo-hint-text{color:#000}.demo-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;z-index:899;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.swipe-feedback{position:absolute;top:25px;left:0;right:0;text-align:center;font-size:1.2rem;font-weight:700;transition:opacity .15s ease,transform .15s ease,visibility .15s ease;pointer-events:none;z-index:5;visibility:hidden}.registration-prompt{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:901;display:flex;justify-content:center;align-items:center;animation:fadeIn .3s ease}.registration-prompt-content{background-color:#2d3748;padding:1rem;max-width:500px;border-radius:10px;width:80%;text-align:center;box-shadow:0 10px 30px #0003}.registration-prompt-content h3{font-size:1.5rem;margin-bottom:1rem;color:#fff}.registration-prompt-content p{margin-bottom:1.5rem;color:#fff}.registration-prompt-buttons{display:flex;flex-direction:column;gap:1rem}.last-card-hint{position:absolute;top:60px;left:0;right:0;text-align:center;font-size:1rem;color:var(--accent-color);animation:pulse 1.5s infinite;pointer-events:none}@keyframes pulse{0%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.5;transform:scale(1)}}@media (min-width: 768px){.registration-prompt-buttons{flex-direction:row;justify-content:center}}.auth-container{min-height:100%;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.auth-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px #0000001a;width:100%;box-sizing:border-box}.auth-title{font-size:1.75rem;font-weight:700;color:#1a1a1a}.auth-subtitle{font-size:.875rem;color:#666;margin-top:.25rem}[data-theme=dark] .auth-card{background:#1f2937;box-shadow:0 4px 6px #0000004d}[data-theme=dark] .auth-title{color:#f9fafb}[data-theme=dark] .auth-subtitle{color:#9ca3af}[data-theme=dark] .form-label{color:#d1d5db}[data-theme=dark] .form-label svg{color:#6b7280}[data-theme=dark] .form-input{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .form-input::placeholder{color:#9ca3af}[data-theme=dark] .form-input:focus{border-color:#818cf8;box-shadow:0 0 0 3px #818cf833}[data-theme=dark] .form-input:disabled{background:#1f2937;color:#6b7280;border-color:#374151}[data-theme=dark] .auth-button-primary{background-color:#818cf8}[data-theme=dark] .auth-button-primary:hover:not(:disabled){background-color:#6366f1}[data-theme=dark] .auth-button-secondary{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .auth-divider{color:#9ca3af}[data-theme=dark] .auth-divider:before,[data-theme=dark] .auth-divider:after{border-color:#4b5563}[data-theme=dark] .auth-links{color:#9ca3af}[data-theme=dark] .auth-link{color:#818cf8}[data-theme=dark] .auth-link:hover{color:#6366f1}[data-theme=dark] .auth-error{background:#3f1f2b;border-color:#dc2626;color:#fca5a5}.auth-box{width:100%;max-width:360px}.auth-header{text-align:center;margin-bottom:1.5rem}.auth-error{background:#fff5f5;border:1px solid #feb2b2;color:#c53030;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1.5rem;display:flex;align-items:center}.auth-error span{margin-right:.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.25rem;width:100%}.form-label{font-size:.875rem;font-weight:500;color:#4a5568;display:flex;align-items:center;gap:.5rem}.form-label svg{margin-right:5px}.form-input{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;transition:all .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input::placeholder{color:#a0aec0}.form-input:disabled{background-color:#f7fafc;color:#a0aec0}.auth-button{width:100%;padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-button-primary{background-color:#667eea;color:#fff}.auth-button-primary:hover:not(:disabled){background-color:#5a67d8}.auth-button-secondary{background-color:#fff;border:1px solid #e2e8f0;color:#4a5568}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-divider{display:flex;align-items:center;margin:1.5rem 0;color:#a0aec0;font-size:.875rem;width:100%}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-top:1px solid #e2e8f0}.auth-divider span{padding:0 .75rem}.auth-links{margin-top:1.5rem;text-align:center;font-size:.75rem;color:#718096}.auth-link{color:#667eea;text-decoration:none;font-weight:500;margin-left:.25rem}.auth-link:hover{color:#5a67d8}.loading-spinner{display:inline-flex;align-items:center;gap:.5rem}.loading-spinner svg{animation:spin 1s linear infinite;width:1rem;height:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logout-button,.logout-button-mobile{background:none;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;font-weight:500;padding:.5rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.logout-button:hover,.logout-button-mobile:hover{background-color:#fed7d7;border-color:#f56565;color:#c53030}[data-theme=dark] .logout-button,[data-theme=dark] .logout-button-mobile{color:#f9fafb}[data-theme=dark] .logout-button:hover,[data-theme=dark] .logout-button-mobile:hover{background-color:#7f1d1d;border-color:#f87171;color:#fecaca}.login-button,.login-button-mobile{background-color:#667eea;border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:500;padding:.5rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s;text-decoration:none}.login-button:hover,.login-button-mobile:hover{background-color:#5a67d8}.nav-link{color:#4a5568;text-decoration:none;font-size:.875rem;font-weight:500;padding:.5rem 1rem;display:flex;align-items:center;gap:.5rem;transition:all .2s}.nav-link:hover{color:#667eea}[data-theme=dark] .nav-link{color:#d1d5db}.password-requirements{margin-top:10px;padding:10px;background-color:#0000000d;border-radius:5px}.requirements-title{font-weight:700;margin-bottom:5px}.password-requirements ul{list-style:none;padding-left:5px;margin:0}.password-requirements li{margin:5px 0;display:flex;align-items:center}.valid{color:#28a745}.invalid{color:#6c757d}.valid-icon{color:#28a745;margin-right:8px}.invalid-icon{color:#dc3545;margin-right:8px}.password-input-container{position:relative;width:100%}.password-toggle-button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#718096;padding:0;display:flex;align-items:center;justify-content:center}.password-toggle-button:focus{outline:none}[data-theme=dark] .password-toggle-button{color:#9ca3af}.commercial-disclosure{max-width:800px;margin:0 auto;padding:2rem;line-height:1.6}.commercial-disclosure h1{font-size:2rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color);color:var(--text-color)}.disclosure-content{background:var(--card-bg);padding:2rem;border-radius:8px;box-shadow:var(--card-shadow)}.disclosure-content h2{font-size:1.5rem;margin:2rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);color:var(--text-color)}.disclosure-content h2:first-child{margin-top:0}.disclosure-content h3{font-size:1.2rem;margin:1.5rem 0 1rem;color:var(--text-color-secondary)}.disclosure-content p{margin:1rem 0;color:var(--text-color)}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}input[type=text],input[type=number],input[type=email],input[type=password],input[type=search],textarea{font-size:16px;-webkit-text-size-adjust:100%}.table-container{width:100%;overflow-x:auto;position:relative}.pagination-container{position:sticky;left:0;right:0;display:flex;justify-content:center;padding:1rem 0;background-color:inherit;width:100%;align-items:center}table{min-width:100%;border-collapse:collapse}.game-info{display:flex;flex-direction:column;gap:10px}.game-stats-container{display:flex;flex-wrap:wrap;gap:10px}.game-controls{display:flex;gap:10px;justify-content:center}.control-button{padding:8px 16px;border-radius:4px;border:none;color:#fff;cursor:pointer;transition:background-color .2s;flex:1;height:40px;display:flex;align-items:center;justify-content:center}.stop-button{background-color:#dc3545}.stop-button:hover{background-color:#c82333}.hint-button{background-color:#4a90e2}.hint-button:hover,.hint-button.active{background-color:#357abd}@media (max-width: 768px){.game-controls{width:100%}.control-button{flex:1;max-width:none}}.hint{font-size:1.2em;color:#666;margin:10px 0;text-align:center;letter-spacing:2px}
