@tailwind base;@tailwind components;@tailwind utilities;:root{--bg:#f8fafc;--bg-surface:#ffffff;--bg-card:#ffffff;--bg-elevated:#f1f5f9;--border:rgba(14,165,233,0.2);--border-glow:rgba(251,146,60,0.4);--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--accent:#0ea5e9;--accent-dark:#0284c7;--accent-glow:rgba(14,165,233,0.2);--coral:#fb923c;--coral-glow:rgba(251,146,60,0.25);--gold:#fbbf24;--gold-glow:rgba(251,191,36,0.3);--danger:#ef4444;--radius-sm:10px;--radius:14px;--radius-lg:20px;--shadow-sm:0 2px 8px rgba(14,165,233,0.08);--shadow:0 4px 20px rgba(14,165,233,0.12);--shadow-lg:0 8px 32px rgba(14,165,233,0.15);--font-display:"Syne",sans-serif;--font-body:"Noto Sans JP",sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:linear-gradient(135deg,#e0f2fe,#fef3c7 35%,#fce7f3 70%,#ddd6fe);background-attachment:fixed;color:var(--text-primary);font-family:var(--font-body);font-size:15px;line-height:1.6;min-height:100dvh}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:16px;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--accent-glow);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.offline-banner{z-index:100;background:linear-gradient(90deg,#fbbf24,#f59e0b);color:#1e293b;font-size:13px;font-weight:600;text-align:center;padding:8px 16px;border-bottom:1px solid rgba(0,0,0,.1)}.app-header,.offline-banner{position:-webkit-sticky;position:sticky;top:0;box-shadow:var(--shadow-sm)}.app-header{z-index:50;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--border)}.header-inner{max-width:900px;margin:0 auto;padding:14px 20px;gap:16px;flex-wrap:wrap}.app-title,.header-inner{display:flex;align-items:center}.app-title{font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,var(--accent),var(--coral));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;gap:8px;white-space:nowrap}.app-title-icon{font-size:26px;filter:none;-webkit-text-fill-color:initial}.header-auth{margin-left:auto}.auth-user{display:flex;align-items:center;gap:12px}.auth-email{font-size:13px;color:var(--text-secondary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-auth{background:linear-gradient(135deg,var(--accent),var(--coral));border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font-body);font-size:12px;font-weight:600;padding:6px 14px;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-auth:hover{opacity:.9;transform:translateY(-1px)}.btn-auth--logout{background:rgba(255,255,255,.1);color:var(--text-secondary)}.btn-auth--logout:hover{background:rgba(255,255,255,.15);color:var(--text-primary)}.auth-modal-desc{font-size:13px;color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.auth-modal-switch{display:block;width:100%;margin-top:16px;background:none;border:none;color:var(--accent);font-size:12px;cursor:pointer;text-align:center;transition:color .15s}.auth-modal-switch:hover{color:var(--accent-dark)}.auth-prompt{font-size:13px;color:var(--text-muted);margin-top:-4px}.empty-state-actions{justify-content:center}.empty-state-actions,.guest-banner{display:flex;flex-wrap:wrap;gap:12px}.guest-banner{align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:20px;background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));border:1px solid var(--border);border-radius:var(--radius);font-size:13px;color:var(--text-secondary)}.guest-banner-btn{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#fff;font-size:12px;font-weight:600;padding:6px 14px;cursor:pointer;white-space:nowrap;transition:opacity .15s}.guest-banner-btn:hover{opacity:.9}.btn-icon--login{font-size:11px!important;padding:4px 8px!important;color:var(--accent)!important;border-color:var(--accent)!important}.btn-icon--login:hover{background:var(--accent-glow)!important}.search-wrap{flex:1 1;min-width:200px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;font-size:15px;pointer-events:none}.search-input{width:100%;background:rgba(255,255,255,.9);border:2px solid var(--border);border-radius:999px;padding:10px 40px 10px 38px;color:var(--text-primary);font-family:var(--font-body);font-size:16px;transition:border-color .2s,box-shadow .2s;outline:none}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow);background:#fff}.search-clear{position:absolute;right:12px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:13px;line-height:1;padding:2px;transition:color .15s}.search-clear:hover{color:var(--text-primary)}.lang-tabs{background:rgba(255,255,255,.85);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lang-tabs::-webkit-scrollbar{display:none}.lang-tabs-inner{max-width:900px;margin:0 auto;padding:0 20px;display:flex;align-items:stretch;gap:4px}.lang-tab,.lang-tab-wrap{position:relative;display:flex;align-items:center}.lang-tab{gap:7px;padding:12px 16px;background:none;color:var(--text-secondary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;border:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.lang-tab:hover{color:var(--text-primary)}.lang-tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}.lang-flag{font-size:18px}.lang-name{font-size:14px}.lang-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:11px;padding:2px 4px;transition:color .15s;line-height:1}.lang-delete-btn:hover{color:var(--danger)}.lang-add-btn{margin-left:auto;background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));border:2px dashed var(--accent);border-radius:var(--radius-sm);color:var(--accent-dark);font-family:var(--font-body);font-size:13px;font-weight:600;padding:6px 12px;cursor:pointer;white-space:nowrap;transition:all .2s;align-self:center}.lang-add-btn:hover{background:linear-gradient(135deg,var(--accent),var(--coral));color:#fff;border-style:solid;transform:translateY(-1px);box-shadow:var(--shadow)}.app-main{max-width:900px;margin:0 auto;padding:24px 20px 80px}.lang-hero{display:flex;align-items:center;gap:16px;padding:20px 24px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(224,242,254,.5));border:2px solid var(--border);border-radius:var(--radius-lg);margin-bottom:24px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lang-hero-flag{font-size:40px;line-height:1}.lang-hero-name{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--text-primary);line-height:1.2}.lang-hero-native{font-size:14px;color:var(--text-muted);margin-top:2px}.lang-hero-count{margin-left:auto;background:linear-gradient(135deg,var(--accent),var(--coral));color:#fff;font-size:13px;font-weight:700;padding:6px 14px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 8px rgba(14,165,233,.3)}.category-section{margin-bottom:16px;border:2px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:rgba(255,255,255,.95);box-shadow:var(--shadow-sm);transition:all .25s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.category-section:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.category-header{display:flex;align-items:center;gap:10px;padding:14px 18px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s}.category-header:hover{background:linear-gradient(90deg,var(--accent-glow),var(--coral-glow))}.category-icon{font-size:20px;flex-shrink:0}.category-name{font-weight:600;font-size:15px;color:var(--text-primary)}.category-name-input{font-weight:600;font-size:15px;width:180px}.category-count{font-size:12px;color:var(--text-secondary);background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));padding:3px 10px;border-radius:999px;font-weight:600}.category-menu{margin-left:auto;display:flex;gap:4px}.category-chevron{font-size:11px;color:var(--text-muted);margin-left:4px}.category-body{padding:16px 18px 20px;min-width:0}.phrase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px;margin-bottom:14px;min-width:0}.phrase-card{background:rgba(255,255,255,.98);border:2px solid var(--border);border-radius:var(--radius);padding:16px 18px 14px;transition:all .25s;position:relative;box-shadow:var(--shadow-sm);min-width:0;overflow:hidden}.phrase-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-3px);background:#fff}.phrase-ruby-wrap{margin-bottom:8px;min-width:0;overflow:hidden}.phrase-ruby{display:inline-flex;flex-direction:column-reverse;align-items:flex-start;line-height:1.2;max-width:100%;min-width:0;overflow:hidden}.phrase-target{font-size:20px;color:var(--text-primary);letter-spacing:.02em}.phrase-rt,.phrase-target{font-weight:600;word-break:break-word;overflow-wrap:anywhere;max-width:100%;min-width:0}.phrase-rt{font-size:12px;color:var(--coral);letter-spacing:.05em;font-family:var(--font-body);margin-bottom:3px}.phrase-ja{font-size:13px;color:var(--text-muted);margin-bottom:8px;word-break:break-word;overflow-wrap:anywhere;max-width:100%;min-width:0}.phrase-notes-toggle{background:none;border:none;font-size:12px;color:var(--text-muted);cursor:pointer;padding:0;margin-bottom:6px;transition:color .15s}.phrase-notes-toggle:hover{color:var(--accent)}.phrase-notes{font-size:12px;background:linear-gradient(90deg,var(--accent-glow),var(--coral-glow));border-left:3px solid var(--accent);padding:8px 12px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;line-height:1.5}.phrase-meta-badge,.phrase-notes{color:var(--text-secondary);margin-bottom:8px;word-break:break-word;overflow-wrap:break-word;max-width:100%}.phrase-meta-badge{font-size:11px;background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));display:inline-block;padding:4px 10px;border-radius:var(--radius-sm);font-weight:600}.phrase-actions{gap:6px;margin-top:4px}.btn-speak,.phrase-actions{display:flex;align-items:center}.btn-speak{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--coral));border:none;color:#fff;cursor:pointer;font-size:12px;justify-content:center;transition:all .2s;flex-shrink:0;box-shadow:0 2px 8px rgba(14,165,233,.4)}.btn-speak:hover{transform:scale(1.1);box-shadow:0 4px 16px rgba(14,165,233,.5)}.btn-speak--active{background:linear-gradient(135deg,var(--coral),var(--accent));animation:pulse-glow 1s ease-in-out infinite;box-shadow:0 0 0 4px var(--coral-glow)}.btn-speak--disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-speak--disabled:hover{transform:none}.speech-unavailable{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.speech-unavailable-msg{font-size:12px;color:var(--text-muted);white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content}.speech-unavailable-msg--error{color:var(--danger)}.speech-unavailable-msg--inline{font-size:11px}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 6px transparent}}.btn-icon{background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:14px;padding:4px 6px;transition:color .15s,border-color .15s,background .15s}.btn-icon:hover{color:var(--text-primary);background:rgba(255,255,255,.05)}.btn-icon--danger:hover{color:var(--danger);background:rgba(248,113,113,.08)}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--coral));border:none;border-radius:var(--radius);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:700;padding:12px 24px;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px rgba(14,165,233,.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(14,165,233,.45)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:#fff;border:2px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-family:var(--font-body);font-size:14px;font-weight:600;padding:10px 22px;cursor:pointer;transition:all .2s}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.btn-translate{background:linear-gradient(135deg,#8b5cf6,#ec4899);border:none;border-radius:var(--radius);color:#fff;font-family:var(--font-body);font-size:13px;font-weight:700;padding:10px 18px;cursor:pointer;white-space:nowrap;transition:all .2s;flex-shrink:0;box-shadow:0 2px 12px rgba(139,92,246,.4)}.btn-translate:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(139,92,246,.5)}.btn-translate:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-add-phrase{background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));border:2px dashed var(--accent);border-radius:var(--radius);color:var(--accent-dark);font-family:var(--font-body);font-size:13px;font-weight:600;padding:10px 16px;cursor:pointer;width:100%;transition:all .2s}.btn-add-phrase:hover{background:linear-gradient(135deg,var(--accent),var(--coral));color:#fff;border-style:solid;box-shadow:var(--shadow)}.btn-add-category{display:block;margin-top:16px;background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));border:2px dashed var(--accent);border-radius:var(--radius-lg);color:var(--accent-dark);font-family:var(--font-body);font-size:14px;font-weight:600;padding:16px;cursor:pointer;width:100%;text-align:center;transition:all .2s}.btn-add-category:hover{background:linear-gradient(135deg,var(--accent),var(--coral));color:#fff;border-style:solid;transform:translateY(-2px);box-shadow:var(--shadow)}.modal-overlay{position:fixed;inset:0;z-index:200;background:rgba(14,165,233,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;padding:0;animation:fade-in .2s ease;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (min-width:600px){.modal-overlay{align-items:center;padding:20px}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{background:linear-gradient(180deg,#fff,#f8fafc);border:2px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:28px 24px 32px;width:100%;max-width:520px;max-height:calc(100dvh - 24px);min-height:min-content;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;animation:slide-up .25s ease;box-shadow:0 -8px 32px rgba(14,165,233,.15);flex-shrink:0}@media (min-width:600px){.modal{border-radius:var(--radius-lg);max-height:calc(100dvh - 40px);margin:auto 0;animation:scale-in .18s ease}}@keyframes slide-up{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scale-in{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.modal-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.modal-context{font-size:14px;color:var(--text-secondary);margin-bottom:20px;padding:8px 12px;background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));border-radius:var(--radius-sm);border:1px solid var(--border);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.modal-context-lang{font-weight:600}.modal-context-sep{color:var(--text-muted);font-weight:700}.modal-context-cat{font-weight:600}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.field-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;margin-top:14px}.field-input{width:100%;background:#fff;border:2px solid var(--border);border-radius:var(--radius);padding:10px 14px;color:var(--text-primary);font-family:var(--font-body);font-size:16px;outline:none;transition:all .2s}.field-input::placeholder{color:var(--text-muted)}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.field-textarea{resize:vertical;min-height:72px}.field-row{display:flex;gap:8px}.field-row .field-input{flex:1 1}.field-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.field-error{color:var(--danger);background:rgba(248,113,113,.08);border-radius:var(--radius-sm);border:1px solid rgba(248,113,113,.2)}.field-error,.field-success{font-size:13px;margin-top:8px;padding:8px 12px}.field-success{color:#059669;background:rgba(5,150,105,.08);border-radius:var(--radius-sm);border:1px solid rgba(5,150,105,.25)}.icon-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.icon-btn{background:#fff;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:20px;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.icon-btn:hover{border-color:var(--accent);background:var(--accent-glow);transform:scale(1.05)}.icon-btn--active{border-color:var(--accent);background:linear-gradient(135deg,var(--accent-glow),var(--coral-glow));box-shadow:0 0 0 2px var(--accent)}.icon-custom-wrap{display:flex;align-items:center;gap:12px;margin-bottom:4px}.icon-custom-input{flex:1 1;min-width:0;max-width:200px}.icon-custom-preview{font-size:24px;line-height:1;padding:4px 8px;background:var(--accent-glow);border-radius:var(--radius-sm);border:1px solid var(--border)}.preset-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.preset-btn{background:#fff;border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:12px;font-weight:500;padding:6px 12px;cursor:pointer;transition:all .2s}.preset-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-glow);transform:translateY(-1px)}.search-count{font-size:13px;color:var(--text-muted);margin-bottom:16px}.search-empty{color:var(--text-muted);padding:48px 0}.empty-state,.search-empty{text-align:center;font-size:15px}.empty-state{color:var(--text-secondary);padding:60px 20px;flex-direction:column;gap:20px;background:rgba(255,255,255,.7);border-radius:var(--radius-lg);border:2px dashed var(--border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.empty-state,.error-boundary{display:flex;align-items:center}.error-boundary{min-height:100dvh;justify-content:center;padding:24px;background:linear-gradient(135deg,#e0f2fe,#fef3c7 35%,#fce7f3 70%,#ddd6fe);background-attachment:fixed}.error-boundary-inner{max-width:420px;text-align:center;background:rgba(255,255,255,.95);border:2px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;box-shadow:var(--shadow-lg)}.error-boundary-icon{font-size:48px;display:block;margin-bottom:12px}.error-boundary-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.error-boundary-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.error-boundary-actions .btn-secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.privacy-page{min-height:100dvh;background:linear-gradient(135deg,#e0f2fe,#fef3c7 35%,#fce7f3 70%,#ddd6fe);background-attachment:fixed}.privacy-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:14px 20px}.privacy-back{font-size:14px;font-weight:600;color:var(--accent);text-decoration:none;transition:color .15s}.privacy-back:hover{color:var(--accent-dark)}.privacy-main{max-width:680px;margin:0 auto;padding:32px 24px 80px}.privacy-main h1{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.privacy-updated{font-size:13px;color:var(--text-muted);margin-bottom:32px}.privacy-main section{margin-bottom:28px}.privacy-main h2{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:10px}.privacy-main h3{font-size:14px;font-weight:600;color:var(--text-secondary);margin-top:16px;margin-bottom:6px}.privacy-main li,.privacy-main p{font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:8px}.privacy-main ul{margin-left:1.2em;margin-bottom:12px}.app-footer{padding:20px;text-align:center;border-top:1px solid var(--border);margin-top:auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px}.footer-link{font-size:12px;color:var(--text-muted);text-decoration:none;transition:color .15s}.footer-link:hover{color:var(--accent)}.footer-link-btn{background:none;border:none;cursor:pointer;padding:0;font-size:inherit;font-family:inherit}.footer-link-voice{color:var(--accent)!important;font-weight:600;font-size:13px}.footer-link-voice:hover{color:var(--accent-dark)!important;text-decoration:underline}.voice-help-modal{max-height:90dvh;overflow-y:auto}.voice-help-intro{font-size:14px;color:var(--text-secondary);line-height:1.6}.voice-help-intro,.voice-help-section{margin-bottom:24px}.voice-help-step-title{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.voice-help-section p{font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:8px}.voice-help-section p:last-child{margin-bottom:0}.voice-help-list{margin:8px 0;padding-left:1.2em}.voice-help-list li{font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:4px}.voice-help-note{font-size:13px;color:var(--text-muted);font-style:normal}.voice-help-others{padding-top:12px;border-top:1px solid var(--border)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgba(255,255,255,.5);border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent),var(--coral));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-dark)}@media (max-width:480px){.phrase-grid{grid-template-columns:1fr}.lang-hero{padding:14px 16px}.lang-hero-flag{font-size:30px}.app-title,.lang-hero-name{font-size:18px}}