@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Inter Variable", "Inter", ui-sans-serif, system-ui, sans-serif;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--duration-fast: .12s;--duration-medium: .18s;--ease: cubic-bezier(.2, 0, 0, 1);--shadow-overlay-soft: 0 4px 16px -2px rgba(0,0,0,.35), 0 2px 4px -2px rgba(0,0,0,.2)}html.dark{--color-bg-canvas: #1A1D21;--color-bg-surface: #1E2025;--color-bg-hover: #282A2F;--color-bg-input: #141619;--color-text-primary: #EEEFF1;--color-text-secondary: #A1A4A7;--color-text-muted: #6B6E72;--color-border-stroke: #2F3033;--color-border-subtle: #252729;--color-icon: #7C7F83;--color-accent-500: #4D76FF;--color-accent-focus: #4D76FF;--color-state-error-text: #EF4444;--color-state-disabled-text: #555;--color-scrollbar-thumb: #3A3D42;--color-scrollbar-track: transparent}html.light{--color-bg-canvas: #F5F6F8;--color-bg-surface: #FFFFFF;--color-bg-hover: #EDEEF1;--color-bg-input: #F0F1F3;--color-text-primary: #1A1D21;--color-text-secondary: #5F6368;--color-text-muted: #9AA0A6;--color-border-stroke: #DADCE0;--color-border-subtle: #E8EAED;--color-icon: #80868B;--color-accent-500: #4D76FF;--color-accent-focus: #4D76FF;--color-state-error-text: #DC2626;--color-state-disabled-text: #BDC1C6;--color-scrollbar-thumb: #C4C7CC;--color-scrollbar-track: transparent;--shadow-overlay-soft: 0 4px 16px -2px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}body{background:var(--color-bg-canvas);color:var(--color-text-primary);font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:450;height:100%}#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-icon)}*{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar-thumb) var(--color-scrollbar-track)}@media(pointer:coarse){.lang-trigger{height:40px;min-width:44px}.swap-btn{width:40px;height:40px}.icon-btn{width:36px;height:36px}.lang-option{padding:var(--spacing-3) var(--spacing-3);min-height:44px}}:focus-visible{outline:2px solid var(--color-accent-focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app{max-width:960px;margin:0 auto;padding:var(--spacing-8) var(--spacing-6);height:100%;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-8)}.app-brand{display:flex;align-items:center;gap:var(--spacing-2)}.app-title{font-size:17px;font-weight:650;letter-spacing:-.02em;color:var(--color-text-primary)}.app-subtitle{font-size:12px;color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase}.app-header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.auth-btn{padding:var(--spacing-2) var(--spacing-4);background:var(--color-accent-500);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.auth-btn:hover{background:#6a8cff}.auth-btn-secondary{background:transparent;border:1px solid var(--color-border-stroke);color:var(--color-text-primary)}.auth-btn-secondary:hover{background:var(--color-bg-hover)}.app-footer{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);margin-top:auto;padding-top:var(--spacing-6);flex-wrap:wrap}.app-footer-group{display:inline-flex;align-items:center;gap:var(--spacing-1)}.app-footer-text{font-size:12px;color:var(--color-text-muted);margin-left:var(--spacing-1)}.app-footer-sep{color:var(--color-border-stroke);font-size:12px;margin:0 var(--spacing-1)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 var(--spacing-1);background:var(--color-bg-surface);border:1px solid var(--color-border-stroke);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:11px;color:var(--color-text-muted);line-height:1}.translator{display:flex;flex-direction:column;gap:var(--spacing-4);flex:1;min-height:0}.lang-bar{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg)}.lang-bar-side{flex:1;display:flex}.lang-bar-side:last-child{justify-content:flex-end}.panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4);flex:1;min-height:0}@media(max-width:768px){.app{padding:var(--spacing-5) var(--spacing-4)}.app-header{margin-bottom:var(--spacing-6)}.panels{grid-template-columns:1fr}.textarea{min-height:180px}}@media(max-width:480px){.app{padding:var(--spacing-3) var(--spacing-3);padding-bottom:env(safe-area-inset-bottom,var(--spacing-3))}.app-header{margin-bottom:var(--spacing-4)}.app-subtitle{display:none}.app-header-actions{gap:var(--spacing-2)}.auth-btn{padding:var(--spacing-1) var(--spacing-3)}.panels{grid-template-columns:1fr;gap:var(--spacing-3)}.lang-bar{flex-wrap:wrap;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3)}.lang-bar-side{flex:unset;width:100%}.lang-bar-side:last-child{justify-content:flex-start}.swap-btn{order:-1;width:100%;border-radius:var(--radius-sm)}.swap-btn-rotated{transform:rotate(90deg)}.textarea{min-height:150px;font-size:15px;line-height:24px;padding:var(--spacing-4) var(--spacing-3)}.panel{border-radius:var(--radius-md)}.lang-dropdown{position:fixed;top:auto;bottom:0;left:0;width:100%;max-height:60vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none}.app-footer{display:none}.panel-footer{padding:var(--spacing-2) var(--spacing-3)}}.panel{display:flex;flex-direction:column;background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);transition:border-color var(--duration-fast) var(--ease);overflow:hidden;animation:panelSlideUp .3s var(--ease) both}.panel:focus-within{border-color:var(--color-border-stroke)}.panel-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-2) var(--spacing-4) var(--spacing-3);min-height:36px}.panel-footer-tools{display:flex;align-items:center;gap:var(--spacing-1)}.panel-footer-meta{display:flex;align-items:center;gap:var(--spacing-2)}.panel-loading .textarea{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.textarea{width:100%;min-height:220px;max-height:60vh;padding:var(--spacing-5) var(--spacing-4);background:transparent;border:0;border-bottom:1px solid transparent;color:var(--color-text-primary);font-family:var(--font-sans);font-size:16px;line-height:26px;font-weight:400;resize:none;outline:none}.textarea:focus{border-bottom:1px solid var(--color-border-stroke)}.textarea[readonly]{transition:opacity var(--duration-medium) var(--ease)}.textarea::placeholder{color:var(--color-text-muted);font-weight:400}.lang-selector{position:relative}.lang-trigger{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2) var(--spacing-1) var(--spacing-2);height:34px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-sans);font-size:14px;font-weight:500;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);white-space:nowrap}.lang-trigger:hover{background:var(--color-bg-hover)}.lang-trigger:disabled{cursor:default}.lang-trigger-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.lang-trigger svg,.lang-option svg{border-radius:3px;flex-shrink:0}.lang-dropdown{position:absolute;top:calc(100% + var(--spacing-2));left:0;z-index:100;width:260px;max-height:360px;background:var(--color-bg-surface);border:1px solid var(--color-border-stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay-soft);display:flex;flex-direction:column;overflow:hidden;animation:dropdownSlide var(--duration-medium) var(--ease)}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-search-wrapper{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border-bottom:1px solid var(--color-border-subtle)}.lang-search{flex:1;background:transparent;border:none;color:var(--color-text-primary);font-family:var(--font-sans);font-size:13px;outline:none}.lang-search::placeholder{color:var(--color-text-muted)}.lang-list{overflow-y:auto;padding:var(--spacing-1)}.lang-option{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-sans);font-size:13px;cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--ease)}.lang-option:hover{background:var(--color-bg-hover)}.lang-option-active{background:var(--color-bg-hover);color:var(--color-accent-500)}.lang-option-code{margin-left:auto;font-size:11px;color:var(--color-text-muted);font-weight:400}.swap-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:transparent;border:1px solid var(--color-border-stroke);border-radius:var(--radius-md);color:var(--color-icon);cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-medium) var(--ease);flex-shrink:0}.swap-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.swap-btn:disabled{color:var(--color-state-disabled-text);cursor:not-allowed;opacity:.4}.swap-btn-rotated{transform:rotate(180deg)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-icon);cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.icon-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.theme-toggle{transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-medium) var(--ease)}.char-count{font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.char-count-warning{color:var(--color-state-error-text)}.error-text{color:var(--color-state-error-text);font-size:12px;padding:0 var(--spacing-4) var(--spacing-2);animation:fadeOut 5s forwards}@keyframes fadeOut{0%,80%{opacity:1}to{opacity:0}}.history-section{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);overflow:hidden}.history-tabs{display:flex;border-bottom:1px solid var(--color-border-subtle)}.history-tab{padding:var(--spacing-2) var(--spacing-4);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.history-tab:hover{color:var(--color-text-secondary)}.history-tab-active{color:var(--color-text-primary);border-bottom-color:var(--color-accent-500)}.history-tab:disabled{color:var(--color-state-disabled-text);cursor:not-allowed}.history-list{display:grid;gap:var(--spacing-1);max-height:200px;overflow-y:auto;padding:var(--spacing-2)}.history-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--spacing-2) var(--spacing-3);align-items:baseline;padding:var(--spacing-2) var(--spacing-3);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:var(--font-sans);color:var(--color-text-primary);transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);content-visibility:auto}.history-item:hover{background:var(--color-bg-hover);border-color:var(--color-border-subtle)}.history-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:var(--color-accent-500);background:color-mix(in srgb,var(--color-accent-500) 10%,transparent);padding:2px 6px;border-radius:var(--radius-sm);white-space:nowrap}.history-time{font-size:11px;color:var(--color-text-muted);white-space:nowrap;justify-self:end}.history-texts{grid-column:1 / -1;display:flex;gap:var(--spacing-2);font-size:13px;line-height:18px}.history-source{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-arrow{color:var(--color-text-muted);flex-shrink:0}.history-target{flex:1;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-empty{padding:var(--spacing-4);text-align:center;color:var(--color-text-muted);font-size:13px}.shortcut-hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:var(--spacing-2) var(--spacing-4);background:var(--color-bg-surface);border:1px solid var(--color-border-stroke);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-sans);font-size:13px;font-weight:500;box-shadow:var(--shadow-overlay-soft);z-index:200;animation:hintIn var(--duration-medium) var(--ease);pointer-events:none}@keyframes hintIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.avatar-wrapper{position:relative}.avatar-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;cursor:pointer;padding:0;transition:opacity var(--duration-fast) var(--ease)}.avatar-btn:hover{opacity:.8}.avatar-canvas{width:28px;height:28px;border-radius:50%}.avatar-menu{position:absolute;top:calc(100% + var(--spacing-2));right:0;z-index:150;width:220px;background:var(--color-bg-surface);border:1px solid var(--color-border-stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay-soft);overflow:hidden;animation:dropdownSlide var(--duration-medium) var(--ease)}.avatar-menu-info{padding:var(--spacing-3) var(--spacing-4);display:flex;flex-direction:column;gap:2px}.avatar-menu-name{font-size:13px;font-weight:600;color:var(--color-text-primary)}.avatar-menu-email{font-size:12px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-menu-divider{height:1px;background:var(--color-border-subtle)}.avatar-menu-item{display:block;width:100%;padding:var(--spacing-2) var(--spacing-4);background:transparent;border:none;color:var(--color-text-primary);font-family:var(--font-sans);font-size:13px;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.avatar-menu-item:hover{background:var(--color-bg-hover)}.copy-btn-bounce{animation:copyBounce .4s ease-out}@keyframes copyBounce{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.panel:nth-child(2){animation-delay:.1s}
