/* ToolCMS V3.1.82 (c) ToolWorld https://www.toolworld.cn/ */
*{box-sizing:border-box;margin:0;padding:0}
body{margin:0;padding:0;font-family:inherit;background:transparent;color:var(--text-1,#333);font-size:14px;line-height:1.6}
.file-base64-container{max-width:100%;margin:0 auto;padding:16px}
.file-base64-card{background:var(--bg-card,#fff);border:1px solid var(--border,#e2e8f0);border-radius:var(--radius,14px);padding:20px}
.file-base64-switch{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:16px}
.file-base64-swbtn{padding:8px 20px;border:1px solid var(--border,#d1d5db);background:var(--bg-card,#fff);color:var(--text-2,#555);border-radius:999px;cursor:pointer;font-size:13px;transition:all .15s}
.file-base64-swbtn.active{background:var(--primary,var(--primary-hover));border-color:var(--primary,var(--primary-hover));color:#fff;font-weight:700}
.file-base64-arrow{font-size:18px;color:var(--text-3,#94a3b8)}
.file-base64-drop{border:2px dashed var(--border,#d1d5db);border-radius:var(--radius-sm,8px);padding:24px 16px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
.file-base64-drop:hover,.file-base64-drop.drag{border-color:var(--primary,var(--primary-hover));background:var(--primary-light)}
.file-base64-drop-icon{font-size:30px;margin-bottom:6px}
.file-base64-drop-text{font-size:14px;color:var(--text-1,#333)}
.file-base64-drop-sub{font-size:12px;color:var(--text-3,#94a3b8);margin-top:4px}
.file-base64-outbar{display:flex;justify-content:space-between;align-items:center;margin:14px 0 6px}
.file-base64-outtitle{font-weight:600;font-size:13px;color:var(--text-2,#555)}
.file-base64-outstat{font-size:12px;color:var(--text-3,#94a3b8);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.file-base64-textarea{width:100%;height:160px;padding:10px 12px;border:1px solid var(--border,#d1d5db);border-radius:var(--radius-sm,8px);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--bg-card,#fff);color:var(--text-1,#333);outline:none;resize:vertical;word-break:break-all}
.file-base64-textarea:focus{border-color:var(--primary,var(--primary-hover))}
.file-base64-decpanel{display:none}
.file-base64-decpanel.show{display:block}
.file-base64-encpanel.hide{display:none}
.file-base64-field label{display:block;font-weight:600;font-size:13px;color:var(--text-2,#555);margin-bottom:6px}
.file-base64-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.file-base64-metaitem{flex:1 1 160px;border:1px solid var(--border,#e2e8f0);border-radius:var(--radius-sm,8px);padding:8px 12px;background:var(--bg-soft,#f8fafc)}
.file-base64-metaitem span{display:block;font-size:11px;color:var(--text-3,#94a3b8)}
.file-base64-metaitem b{font-size:12px;color:var(--text-1,#333);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;word-break:break-all}
.file-base64-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.file-base64-btn{padding:8px 16px;border:1px solid var(--border,#d1d5db);border-radius:var(--radius-sm,8px);background:var(--bg-card,#fff);color:var(--text-1,#333);cursor:pointer;font-size:13px;transition:background .15s}
.file-base64-btn:hover{background:var(--primary-light)}

.file-base64-btn-primary{background:var(--primary,var(--primary-hover));color:#fff;border-color:var(--primary,var(--primary-hover))}
.file-base64-btn-primary:hover{background:var(--primary-light);color:var(--primary)}

.file-base64-message{margin-top:8px;padding:8px 12px;border-radius:var(--radius-sm,8px);font-size:13px;display:none}
.file-base64-message.show{display:block}
.file-base64-message.success{background:var(--primary-light);color:var(--primary,var(--primary-hover))}
.file-base64-message.error{background:var(--error-bg,#fee2e2);color:var(--error,#991b1b)}
.file-base64-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--border-light,#f1f5f9);font-size:12px;color:var(--text-3,#94a3b8)}
.file-base64-footer-right{margin-left:auto}
@media(max-width:640px){.file-base64-card{padding:16px}.file-base64-switch{flex-wrap:wrap}.file-base64-btn{flex:1 1 auto}.file-base64-footer{flex-direction:column;gap:4px;text-align:center}}
