:root{--border-dark:var(--border-2);--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--badge-bg:#eef1f4;--badge-color:#374151;--success-bg:#d1fae5;--success-color:#065f46;--success-border:#6ee7b7;--error-bg:#fee2e2;--error-color:#991b1b;--error-border:#fca5a5;--info-bg:#dbeafe;--info-color:#1e40af;--info-border:#bfdbfe;--warn-bg:#fffbeb;--warn-border:#fde68a;--warn-color:#92400e;--warn-accent:#fcd34d;--warn-accent-dark:#f59e0b;--warn-hover:#fef3c7;--diff-add-bg:#d1fae5;--diff-add-color:#065f46;--diff-rem-bg:#fee2e2;--diff-rem-color:#991b1b;--diff-same-color:#9ca3af;--fmt-editor-height:420px;--fmt-editor-height-md:300px;--fmt-editor-height-sm:260px;--fmt-editor-font:"Cascadia Code", "Fira Code", "Consolas", monospace;--fmt-editor-font-size:13.5px;--fmt-editor-line-height:1.65;--fmt-toolbar-pad:12px 16px;--fmt-label-size:10px;--fmt-label-spacing:.8px}.toolbar-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-top:3px solid var(--accent);overflow:hidden;box-shadow:0 4px 24px #00000012}.toolbar-section{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex}.toolbar-section:last-child{border-bottom:none}.toolbar-section:first-child{background:linear-gradient(#fafbfc,#fff)}.toolbar-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-muted);border-right:1px solid var(--border);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;margin:0 4px 0 0;padding-right:10px;font-size:10px;font-weight:800;display:inline-flex}.toolbar-label i{color:var(--accent);font-size:11px}.opt-group{background:var(--surface);border:1.5px solid var(--border);border-radius:8px;align-items:center;gap:6px;padding:4px 10px;transition:border-color .14s,background .14s;display:inline-flex}.opt-group:hover{border-color:var(--accent);background:var(--accent-light)}.opt-group label{color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.4px;margin:0;font-size:11px;font-weight:700}.opt-group label i{color:var(--accent);margin-right:3px;font-size:11px}.opt-group select,.opt-group input[type=number]{color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;outline:none;padding:3px 6px;font-family:inherit;font-size:12px;font-weight:600;transition:border-color .15s,background .15s}.opt-group select:focus,.opt-group input[type=number]:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 2px var(--accent-shadow)}.opt-group input[type=number]{width:56px}.opt-group input[type=range]{width:80px;accent-color:var(--accent);cursor:pointer}.opt-group .range-val{color:var(--accent-deeper);min-width:28px;font-size:11px;font-weight:700}.opt-check{color:var(--text-2);cursor:pointer;background:var(--surface);border:1.5px solid var(--border);-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;transition:all .14s;display:inline-flex}.opt-check:hover{border-color:var(--accent);background:var(--accent-light)}.opt-check input{accent-color:var(--accent);cursor:pointer;margin:0}.opt-check:has(input:checked){background:var(--accent-light);border-color:var(--accent);color:var(--accent-deeper);font-weight:700}.stats-bar{background:var(--soft);border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 16px;display:flex}.stat-chip{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.stat-chip i{color:var(--accent);font-size:10px}@media (width<=768px){.toolbar-section{gap:8px;padding:8px 12px}.toolbar-label{margin-right:2px;padding-right:8px;font-size:9.5px}}.btn-group-main{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.btn-format{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px var(--accent-shadow);letter-spacing:-.1px;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:700;line-height:1.2;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-format i{font-size:13px}.btn-format:hover{background:linear-gradient(135deg, var(--accent-dark), var(--accent-deeper));color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px #00d09a66}.btn-format:active{transform:translateY(0)}.btn-format:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn-tool{border:1.5px solid var(--border);background:var(--surface);color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:7px;align-items:center;gap:5px;padding:6px 12px;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.2;transition:all .14s;display:inline-flex}.btn-tool:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-deeper)}.btn-tool.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent-deeper);font-weight:700}.btn-tool i{pointer-events:none;font-size:12px}.btn-tool.btn-danger-soft{border-color:var(--error-border);color:var(--error-color)}.btn-tool.btn-danger-soft:hover{background:var(--error-bg);border-color:var(--error-color)}.btn-icon{border:1.5px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;transition:all .14s;display:inline-flex}.btn-icon:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-deeper)}.btn-divider{background:var(--border);flex-shrink:0;align-self:center;width:1px;height:22px;margin:0 2px}.btn-panel-close{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.btn-panel-close:hover{background:var(--error-bg);border-color:var(--error-border);color:var(--error-color)}.btn-fullscreen-exit{z-index:10000;background:var(--accent);color:#fff;cursor:pointer;box-shadow:0 4px 16px var(--accent-shadow);border:none;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:12.5px;font-weight:700;display:inline-flex;position:fixed;bottom:16px;right:16px}.btn-fullscreen-exit:hover{background:var(--accent-dark);transform:translateY(-1px)}.status-bar{border-radius:var(--radius-sm);padding:10px 16px;font-size:12.5px;font-weight:500;line-height:1.5;animation:.2s slideDown}.status-bar.success{background:var(--success-bg);color:var(--success-color);border:1px solid var(--success-border)}.status-bar.error{background:var(--error-bg);color:var(--error-color);border:1px solid var(--error-border)}.status-bar.info{background:var(--info-bg);color:var(--info-color);border:1px solid var(--info-border)}:root{--enc-area-height:220px;--enc-area-height-sm:160px;--enc-area-font:"Cascadia Code", "Fira Code", "Consolas", monospace;--enc-area-font-size:13px;--enc-area-line-height:1.65;--enc-nav-height:48px;--border-dark:var(--border-2);--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--success-bg:#d1fae5;--success-color:#065f46;--success-border:#6ee7b7;--error-bg:#fee2e2;--error-color:#991b1b;--error-border:#fca5a5;--info-bg:#dbeafe;--info-color:#1e40af;--info-border:#bfdbfe}.enc-io-grid{grid-template-columns:1fr auto 1fr;align-items:start;gap:16px;display:grid}@media (width<=767px){.enc-io-grid{grid-template-columns:1fr}}.enc-panel{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);flex-direction:column;transition:border-color .18s,box-shadow .18s;display:flex;overflow:hidden}.enc-panel:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-shadow)}.enc-panel-head{background:var(--accent-light);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:9px 14px;display:flex}.enc-panel-label{text-transform:uppercase;letter-spacing:.6px;color:var(--accent-deeper);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.enc-panel-label i{font-size:13px}.enc-panel-actions{gap:5px;display:flex}textarea.enc-area{width:100%;min-height:var(--enc-area-height);resize:vertical;font-family:var(--enc-area-font);font-size:var(--enc-area-font-size);line-height:var(--enc-area-line-height);color:var(--text);background:var(--surface);border:none;outline:none;padding:14px}textarea.enc-area::placeholder{color:var(--text-light)}textarea.enc-area.out{color:var(--text-muted);cursor:default;background:#fafbfc}textarea.enc-area.is-error{background:var(--error-bg);color:var(--error-color)}@media (width<=767px){textarea.enc-area{min-height:var(--enc-area-height-sm)}}.enc-meta{border-top:1px solid var(--border);background:var(--accent-light);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;display:flex}.enc-meta-chip{color:var(--text-muted);background:var(--surface);border:1px solid var(--border-dark);border-radius:20px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.enc-meta-chip i{font-size:10px}.enc-actions-col{flex-direction:column;justify-content:center;align-items:center;gap:10px;padding-top:42px;display:flex}@media (width<=767px){.enc-actions-col{flex-direction:row;justify-content:center;padding-top:0}}.btn-encode{cursor:pointer;white-space:nowrap;background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;width:112px;box-shadow:0 2px 10px var(--accent-shadow);border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:700;transition:all .18s;display:inline-flex}.btn-encode:hover{background:linear-gradient(135deg, var(--accent-dark), var(--accent-deeper));box-shadow:0 4px 14px var(--accent-shadow);transform:translateY(-1px)}.btn-encode:active{transform:translateY(0)}.btn-encode:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-decode{cursor:pointer;white-space:nowrap;background:var(--surface);width:112px;color:var(--text);border:1.5px solid var(--border-dark);box-shadow:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:700;transition:all .18s;display:inline-flex}.btn-decode:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-deeper);transform:translateY(-1px)}.btn-decode:active{transform:translateY(0)}.btn-decode:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-swap{border:1.5px solid var(--border-dark);background:var(--surface);width:36px;height:36px;color:var(--text-muted);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:all .2s;display:flex}.btn-swap:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light);transform:rotate(90deg)}.enc-options{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.enc-opt-group{background:var(--accent-light);border:1px solid var(--border);color:var(--accent-deeper);white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;display:flex}.enc-opt-group i{font-size:13px}.enc-opt-group select,.enc-opt-group input[type=text]{border:1px solid var(--border-dark);color:var(--text);background:var(--surface);border-radius:7px;outline:none;padding:3px 8px;font-size:12px;font-weight:600;transition:border-color .15s}.enc-opt-group select:focus,.enc-opt-group input[type=text]:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-shadow)}.enc-check{color:var(--text);cursor:pointer;background:var(--accent-light);border:1px solid var(--border);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.enc-check input{accent-color:var(--accent);cursor:pointer;width:14px;height:14px;margin:0}.enc-check:has(input:checked){background:var(--accent-mid);border-color:var(--accent-dark);color:var(--accent-deeper)}
