:root,[data-theme=light]{color-scheme:dark;--app-bg: #070b11;--app-text: #e5e7eb;--app-text-secondary: #9ca3af;--app-text-muted: #6b7280;--app-surface: #0d1117;--app-surface-muted: #0f151c;--app-border: #1f2937;--app-border-light: #1f2937;--app-border-subtle: #182230;--app-primary: #22c55e;--app-primary-hover: #16a34a;--app-primary-soft: rgba(34, 197, 94, .14);--app-primary-soft-border: rgba(34, 197, 94, .4);--app-primary-badge-bg: rgba(34, 197, 94, .14);--app-primary-badge-text: #86efac;--app-shadow: 0 10px 28px rgba(0, 0, 0, .28);--app-hover: rgba(34, 197, 94, .08);--app-hover-strong: rgba(34, 197, 94, .14);--app-error: #f87171;--app-error-bg: rgba(220, 38, 38, .12);--app-error-border: rgba(220, 38, 38, .28);--app-highlight-active: rgba(34, 197, 94, .2);--app-highlight-active-border: #22c55e;--app-highlight-match: rgba(34, 197, 94, .1);--app-highlight-mark: rgba(74, 222, 128, .35);--app-accent-key: #4ade80;--app-accent-string: #86efac;--app-input-text: #e5e7eb;--app-input-placeholder: #6b7280;--app-toggle-hover: rgba(34, 197, 94, .12);--app-hero-gradient: linear-gradient(135deg, rgba(34, 197, 94, .14), #0d1117 55%);--app-icon-btn: #9ca3af;--app-icon-btn-hover-bg: rgba(34, 197, 94, .12);--app-icon-btn-hover: #86efac;--code-bg: #0a0f16;--code-border: #1f2937;--code-inline: #d1d5db;--code-comment: #6b7280;--code-keyword: #4ade80;--code-func: #e5e7eb;--code-string: #86efac;--code-number: #22c55e;--table-head-bg: #111827;--chip-bg: #0f151c;--sidebar-bg: #090d13;--sidebar-text: #e5e7eb;--sidebar-text-muted: #6b7280;--sidebar-border: #1f2937;--sidebar-nav-text: #d1d5db;--sidebar-nav-muted: #6b7280;--sidebar-hover: rgba(34, 197, 94, .1);--sidebar-active-bg: rgba(34, 197, 94, .18);--sidebar-active-text: #86efac;--sidebar-toggle-bg: rgba(34, 197, 94, .08);--sidebar-toggle-border: rgba(34, 197, 94, .25)}[data-theme=dark]{color-scheme:dark;--app-bg: #060a10;--app-text: #f3f4f6;--app-text-secondary: #9ca3af;--app-text-muted: #6b7280;--app-surface: #0b1016;--app-surface-muted: #0e141c;--app-border: #1a2533;--app-border-light: #1a2533;--app-border-subtle: #15202d;--app-primary: #22c55e;--app-primary-hover: #16a34a;--app-primary-soft: rgba(34, 197, 94, .16);--app-primary-soft-border: rgba(34, 197, 94, .45);--app-primary-badge-bg: rgba(34, 197, 94, .16);--app-primary-badge-text: #86efac;--app-shadow: 0 12px 32px rgba(0, 0, 0, .34);--app-hover: rgba(34, 197, 94, .1);--app-hover-strong: rgba(34, 197, 94, .16);--app-error: #f87171;--app-error-bg: rgba(220, 38, 38, .12);--app-error-border: rgba(220, 38, 38, .28);--app-highlight-active: rgba(34, 197, 94, .24);--app-highlight-active-border: #22c55e;--app-highlight-match: rgba(34, 197, 94, .12);--app-highlight-mark: rgba(74, 222, 128, .4);--app-accent-key: #4ade80;--app-accent-string: #86efac;--app-input-text: #f3f4f6;--app-input-placeholder: #6b7280;--app-toggle-hover: rgba(34, 197, 94, .16);--app-hero-gradient: linear-gradient(135deg, rgba(34, 197, 94, .16), #0b1016 55%);--app-icon-btn: #9ca3af;--app-icon-btn-hover-bg: rgba(34, 197, 94, .14);--app-icon-btn-hover: #86efac;--code-bg: #070c13;--code-border: #1a2533;--code-inline: #d1d5db;--code-comment: #6b7280;--code-keyword: #4ade80;--code-func: #f3f4f6;--code-string: #86efac;--code-number: #22c55e;--table-head-bg: #0f1720;--chip-bg: #0d131b;--sidebar-bg: #070c12;--sidebar-text: #f3f4f6;--sidebar-text-muted: #6b7280;--sidebar-border: #1a2533;--sidebar-nav-text: #d1d5db;--sidebar-nav-muted: #6b7280;--sidebar-hover: rgba(34, 197, 94, .12);--sidebar-active-bg: rgba(34, 197, 94, .22);--sidebar-active-text: #86efac;--sidebar-toggle-bg: rgba(34, 197, 94, .1);--sidebar-toggle-border: rgba(34, 197, 94, .3)}:root{color:var(--app-text);background:var(--app-bg);font-family:PingFang SC,Microsoft YaHei,Inter,system-ui,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{height:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;height:100%;background:var(--app-bg);color:var(--app-text);transition:background .2s ease,color .2s ease}button,textarea{font:inherit}a{color:inherit;text-decoration:none}#root{height:100%}.card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:14px;box-shadow:var(--app-shadow)}.primary-btn,.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;padding:8px 14px;border:1px solid transparent;cursor:pointer;transition:.2s ease}.primary-btn{background:var(--app-primary);color:#052e16;font-weight:700}.primary-btn:hover:not(:disabled){background:var(--app-primary-hover)}.primary-btn:disabled,.ghost-btn:disabled{opacity:.55;cursor:not-allowed}.ghost-btn{background:var(--app-surface);border-color:var(--app-border);color:var(--app-text)}.ghost-btn:hover:not(:disabled){background:var(--app-hover)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.card-header h3{margin:0;font-size:16px}.card-actions{display:flex;flex-wrap:wrap;gap:8px}.sidebar{position:relative;display:flex;flex-direction:column;min-height:0;height:100%;background:var(--sidebar-bg);color:var(--sidebar-text);padding:20px 12px;border-right:1px solid var(--sidebar-border);overflow:hidden;transition:padding .25s ease,background .2s ease,border-color .2s ease,color .2s ease}.sidebar-brand{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:8px 6px 20px;min-height:58px}.sidebar.collapsed .sidebar-brand{justify-content:center;padding-inline:0}.brand-logo{flex-shrink:0;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#16a34a,#4ade80);color:#052e16;font-weight:700}.sidebar-brand-text{overflow:hidden;white-space:nowrap}.sidebar-brand strong{display:block;font-size:16px}.sidebar-brand p{margin:2px 0 0;color:var(--sidebar-text-muted);font-size:12px}.sidebar-nav{flex:1;min-height:0;display:flex;flex-direction:column;gap:18px;overflow-y:auto;overflow-x:hidden}.nav-section-title{display:block;padding:0 10px 8px;color:var(--sidebar-nav-muted);font-size:12px;white-space:nowrap}.nav-item-row{display:flex;align-items:center;gap:6px}.nav-item-row .nav-item{flex:1;min-width:0}.nav-group+.nav-group{margin-top:8px}.nav-group-toggle{width:100%;display:inline-flex;align-items:center;justify-content:space-between;min-height:30px;padding:0 10px;border:1px solid var(--sidebar-border);border-radius:8px;background:transparent;color:var(--sidebar-text-muted);font-size:12px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.nav-group-toggle:hover{border-color:var(--sidebar-active-text);color:var(--sidebar-active-text);background:var(--sidebar-hover)}.nav-group-toggle.active{border-color:var(--sidebar-active-text);color:var(--sidebar-active-text)}.nav-group-arrow{transition:transform .2s ease}.nav-group-arrow.open{transform:rotate(180deg)}.nav-submenu{margin-top:6px;margin-left:8px;display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--sidebar-nav-text);white-space:nowrap;transition:background .2s ease,color .2s ease}.sidebar.collapsed .nav-item{justify-content:center;padding:10px}.nav-item-icon{flex-shrink:0}.nav-item-label{overflow:hidden;text-overflow:ellipsis}.nav-item:hover{background:var(--sidebar-hover)}.nav-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600}.nav-item.disabled{opacity:.45}.nav-item-sub{padding:8px 10px;border-radius:8px}.nav-favorite-btn{width:24px;height:24px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--sidebar-border);border-radius:999px;background:transparent;color:var(--sidebar-text-muted);cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.nav-favorite-btn:hover{border-color:var(--sidebar-active-text);color:var(--sidebar-active-text)}.nav-favorite-btn.active{border-color:var(--sidebar-active-text);color:var(--sidebar-active-text);background:var(--sidebar-active-bg)}.sidebar-toggle{display:flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;width:100%;margin-top:12px;padding:10px 12px;border:1px solid var(--sidebar-toggle-border);border-radius:10px;background:var(--sidebar-toggle-bg);color:var(--sidebar-text-muted);cursor:pointer;transition:background .2s ease,color .2s ease;white-space:nowrap}.sidebar.collapsed .sidebar-toggle{padding:10px}.sidebar-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}@media (max-width: 960px){.sidebar{border-right:none;border-bottom:1px solid var(--sidebar-border)}.sidebar.collapsed .sidebar-nav{display:none}}.theme-toggle-btn{width:36px;height:36px;display:grid;place-items:center;border:none;border-radius:10px;background:transparent;color:var(--app-icon-btn);cursor:pointer;transition:background .2s ease,color .2s ease}.theme-toggle-btn:hover{background:var(--app-icon-btn-hover-bg);color:var(--app-icon-btn-hover)}.app-shell{--sidebar-width: 260px;display:grid;grid-template-columns:var(--sidebar-width) 1fr;height:100vh;height:100dvh;overflow:hidden;transition:grid-template-columns .25s ease}.app-shell.sidebar-collapsed{--sidebar-width: 72px}.app-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0;padding:24px 28px 12px}.app-header-main{min-width:0}.app-header h1{margin:0;font-size:28px}.app-header p{margin:6px 0 0;color:var(--app-text-secondary)}.app-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-top:4px}.app-content{flex:1;min-height:0;overflow:auto;padding:0 28px 28px;display:flex;flex-direction:column}.app-footer{flex-shrink:0;padding:16px 28px 24px;color:var(--app-text-muted);font-size:13px}.app-main--tool .app-header{padding:16px 28px 8px}.app-main--tool .app-header h1{font-size:24px}.app-main--tool .app-header p{margin-top:4px;font-size:13px}.app-main--tool .app-content{padding-bottom:10px}.app-main--tool .app-footer{padding:0 28px 12px;font-size:12px}.app-main--home{background:#070b11}.app-main--home .app-header{display:none}.app-main--home .app-content{padding:12px 14px 10px}.app-main--home .app-footer{padding:4px 14px 10px;color:#6b7280}@media (max-width: 960px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow:auto;height:auto;min-height:100vh;min-height:100dvh}.app-main,.app-content{overflow:visible}.app-main--home .app-content{padding:8px}}.home-board{display:flex;flex-direction:column;gap:14px;padding:10px;border-radius:14px;background:radial-gradient(circle at top right,#22c55e1f,#22c55e00 32%),#080b10;color:#e5e7eb}.home-board .card{background:#0d1117;border:1px solid #1f2937;box-shadow:0 10px 28px #0000003d}.home-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;padding:18px}.home-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;border:1px solid rgba(34,197,94,.35);background:#22c55e24;color:#86efac;font-size:12px}.home-hero h2{margin:10px 0 8px;font-size:34px;line-height:1.15}.home-hero p{margin:0;color:#9ca3af}.home-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:end}.home-hero-stats div{border:1px solid rgba(34,197,94,.22);border-radius:10px;padding:10px;background:#22c55e14}.home-hero-stats strong{display:block;font-size:22px}.home-hero-stats span{color:#9ca3af;font-size:12px}.home-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.category-card{padding:14px}.category-card h3{margin:0;font-size:18px}.category-card p{margin:8px 0 0;color:#9ca3af;font-size:13px}.category-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.category-tags span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;border:1px solid rgba(34,197,94,.26);background:#22c55e1a;color:#86efac;font-size:12px}.tool-section{padding:14px}.tool-section-head h3{margin:0;font-size:18px}.tool-section-head p{margin:6px 0 0;color:#9ca3af;font-size:13px}.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.tool-filters{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px}.tool-search{display:inline-flex;align-items:center;gap:6px;min-width:260px;padding:0 10px;height:34px;border:1px solid #1f2937;border-radius:8px;background:#0f151c;color:#9ca3af}.tool-search input{width:100%;border:none;outline:none;background:transparent;color:#e5e7eb}.tool-category-tabs{display:inline-flex;gap:6px;flex-wrap:wrap}.tool-category-tabs button{min-height:30px;padding:0 10px;border:1px solid #1f2937;border-radius:999px;background:#0f151c;color:#9ca3af;cursor:pointer}.tool-category-tabs button.active{border-color:#22c55e;color:#86efac;background:#22c55e1f}.tool-card{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;border:1px solid #1f2937;border-radius:10px;padding:10px;background:#0f151c;transition:border-color .2s ease,background .2s ease,transform .2s ease}.tool-card:hover{border-color:#22c55e;background:#22c55e14;transform:translateY(-1px)}.tool-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);color:#4ade80}.tool-copy strong{display:block}.tool-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.tool-favorite-btn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #1f2937;border-radius:999px;background:#0b1117;color:#6b7280;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.tool-favorite-btn:hover{border-color:#22c55e;color:#86efac}.tool-favorite-btn.active{border-color:#22c55e8c;background:#22c55e2e;color:#86efac}.tool-copy span{display:block;margin-top:4px;font-size:12px;color:#9ca3af}.tool-copy em{display:inline-flex;margin-top:6px;font-style:normal;font-size:11px;color:#86efac}.tool-empty{border:1px dashed #1f2937;border-radius:10px;padding:16px;color:#9ca3af}.tool-empty strong{display:block;color:#e5e7eb}.tool-empty span{display:block;margin-top:4px;font-size:13px}.favorite-section,.recent-section,.updates-section{padding:14px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-head button{min-height:28px;padding:0 10px;border:1px solid #1f2937;border-radius:999px;background:#0f151c;color:#9ca3af;cursor:pointer}.section-head button:disabled{opacity:.5;cursor:not-allowed}.section-head h3{margin:0;font-size:18px}.recent-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.recent-link{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid #1f2937;border-radius:999px;background:#0f151c;color:#9ca3af;font-size:12px;transition:border-color .2s ease,color .2s ease,background .2s ease}.recent-link:hover{border-color:#22c55e;color:#86efac;background:#22c55e1a}.update-list{display:grid;gap:8px;margin-top:10px}.update-list div{border:1px solid #1f2937;border-radius:10px;padding:10px;background:#0f151c}.update-list strong{display:block}.update-list span{display:block;margin-top:4px;color:#9ca3af;font-size:13px}@keyframes sectionIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.home-board>section{animation:none}}@media (max-width: 960px){.home-hero,.home-categories,.tool-grid,.home-hero-stats{grid-template-columns:1fr}}.base64-tool{padding:14px;display:flex;flex-direction:column;gap:12px}.base64-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.base64-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.base64-panel{border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);padding:10px;display:flex;flex-direction:column;gap:8px}.base64-panel h3{margin:0;font-size:15px}.base64-panel textarea{width:100%;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:10px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.base64-message{color:var(--app-primary);font-size:13px}@media (max-width: 960px){.base64-grid{grid-template-columns:1fr}}.base64-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.base64-header{padding:16px 18px}.base64-header h2{margin:0;font-size:24px}.base64-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-crop-tool{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding:14px}.crop-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.crop-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px}.crop-canvas-wrap{position:relative;min-height:420px;border:1px solid var(--app-border);border-radius:12px;background:#04080f;overflow:hidden}.crop-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--app-text-muted)}.crop-image{width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.crop-selection{position:absolute;border:1px solid var(--app-primary);box-shadow:0 0 0 9999px #00000073;cursor:move}.crop-handle{position:absolute;width:10px;height:10px;border:1px solid #052e16;border-radius:2px;background:var(--app-primary);padding:0}.handle-nw{left:-5px;top:-5px;cursor:nwse-resize}.handle-n{left:calc(50% - 5px);top:-5px;cursor:ns-resize}.handle-ne{right:-5px;top:-5px;cursor:nesw-resize}.handle-e{right:-5px;top:calc(50% - 5px);cursor:ew-resize}.handle-se{right:-5px;bottom:-5px;cursor:nwse-resize}.handle-s{left:calc(50% - 5px);bottom:-5px;cursor:ns-resize}.handle-sw{left:-5px;bottom:-5px;cursor:nesw-resize}.handle-w{left:-5px;top:calc(50% - 5px);cursor:ew-resize}.crop-fields{border:1px solid var(--app-border);border-radius:12px;padding:12px;background:var(--app-surface-muted);display:flex;flex-direction:column;gap:10px}.crop-fields h3{margin:0;font-size:14px;color:var(--app-text-secondary)}.crop-fields label{display:flex;flex-direction:column;gap:4px;color:var(--app-text-secondary);font-size:12px}.crop-fields input{height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:0 10px}.crop-fields-hint{margin-top:auto;color:var(--app-text-muted);font-size:12px}@media (max-width: 960px){.crop-main{grid-template-columns:1fr}.crop-canvas-wrap{min-height:320px}}.image-crop-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.image-crop-header{padding:16px 18px}.image-crop-header h2{margin:0;font-size:24px}.image-crop-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-crop-tips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-crop-tips span{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:1px solid var(--app-primary-soft-border);border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:12px}.image-base64-tool{padding:14px;display:flex;flex-direction:column;gap:12px}.image-base64-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.image-base64-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.image-base64-panel{border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);padding:10px;display:flex;flex-direction:column;gap:8px}.image-base64-panel h3{margin:0;font-size:15px}.image-base64-panel textarea{width:100%;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:10px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.image-preview-wrap{flex:1;min-height:280px;border:1px dashed var(--app-border);border-radius:8px;display:grid;place-items:center;overflow:hidden;color:var(--app-text-muted)}.image-preview-wrap img{width:100%;height:100%;object-fit:contain}.image-base64-message{color:var(--app-primary);font-size:13px}@media (max-width: 960px){.image-base64-grid{grid-template-columns:1fr}.image-preview-wrap{min-height:220px}}.image-base64-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.image-base64-header{padding:16px 18px}.image-base64-header h2{margin:0;font-size:24px}.image-base64-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-compress-tool{flex:1;min-height:0;display:flex;flex-direction:column;padding:14px;gap:12px}.compress-dropzone{border:1px dashed var(--app-primary-soft-border);border-radius:12px;background:var(--app-surface-muted);min-height:260px;overflow:hidden;color:var(--app-text-secondary);transition:border-color .2s ease,background .2s ease,color .2s ease}.compress-dropzone-empty{min-height:120px;height:100%;display:grid;place-content:center;justify-items:center;text-align:center;gap:6px}.compress-dropzone-empty svg{color:var(--app-primary)}.compress-dropzone-empty p{margin:0}.compress-dropzone-empty small{color:var(--app-text-muted)}.compress-dropzone.is-dragging{border-color:var(--app-primary);background:var(--app-primary-soft);color:var(--app-text)}.compress-dropzone.has-files{border-style:solid}.compress-config{display:flex;flex-wrap:wrap;gap:12px}.config-block,.config-input{display:inline-flex;align-items:center;gap:10px;color:var(--app-text-secondary)}.mode-options{display:inline-flex;gap:6px}.mode-btn{min-width:84px;height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-secondary);cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.mode-btn:hover{border-color:var(--app-primary-soft-border)}.mode-btn.active{border-color:var(--app-primary);color:var(--app-primary);background:var(--app-primary-soft)}.config-input input{width:100px;height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:0 10px}.compress-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.compress-summary{display:inline-flex;gap:16px;color:var(--app-text-secondary);font-size:13px}.compress-list{flex:1;min-height:0;border:none;border-radius:0;overflow:auto;background:transparent}.compress-empty{min-height:120px;display:grid;place-items:center;color:var(--app-text-muted)}.compress-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--app-border-subtle)}.compress-row:last-child{border-bottom:none}.compress-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;border:1px solid var(--app-border)}.compress-meta{min-width:0;display:flex;flex-direction:column;gap:3px}.compress-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compress-meta span{font-size:12px;color:var(--app-text-secondary)}.compress-meta em{font-style:normal;font-size:12px;color:var(--app-primary)}.compress-status{min-width:72px;text-align:center;padding:4px 8px;border:1px solid var(--app-border);border-radius:999px;font-size:12px}.compress-row-actions{display:inline-flex;gap:8px}.compress-hint{display:inline-flex;align-items:center;gap:6px;color:var(--app-text-muted);font-size:12px}@media (max-width: 960px){.compress-row{grid-template-columns:48px minmax(0,1fr)}.compress-thumb{width:48px;height:48px}.compress-status{justify-self:start}.compress-row-actions{grid-column:1 / -1}}.image-compress-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.image-compress-header{padding:16px 18px}.image-compress-header h2{margin:0;font-size:24px}.image-compress-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-compress-tips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-compress-tips span{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:1px solid var(--app-primary-soft-border);border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:12px}.image-convert-tool{flex:1;min-height:0;display:flex;flex-direction:column;padding:14px;gap:12px}.convert-dropzone{border:1px dashed var(--app-primary-soft-border);border-radius:12px;background:var(--app-surface-muted);min-height:260px;overflow:hidden;color:var(--app-text-secondary);transition:border-color .2s ease,background .2s ease,color .2s ease}.convert-dropzone-empty{min-height:128px;height:100%;display:grid;place-content:center;justify-items:center;text-align:center;gap:6px}.convert-dropzone-empty svg{color:var(--app-primary)}.convert-dropzone-empty p{margin:0}.convert-dropzone-empty small{color:var(--app-text-muted)}.convert-dropzone.is-dragging{border-color:var(--app-primary);background:var(--app-primary-soft);color:var(--app-text)}.convert-dropzone.has-files{border-style:solid}.convert-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.format-group{display:inline-flex;align-items:center;gap:10px;color:var(--app-text-secondary)}.format-options{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.format-btn{min-width:58px;height:30px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-secondary);cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.format-btn:hover{border-color:var(--app-primary-soft-border);color:var(--app-text)}.format-btn.active{border-color:var(--app-primary);color:var(--app-primary);background:var(--app-primary-soft)}.convert-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.convert-summary{display:inline-flex;gap:16px;color:var(--app-text-secondary);font-size:13px}.convert-list{flex:1;min-height:0;border:none;border-radius:0;overflow:auto;background:transparent}.empty-list{min-height:120px;display:grid;place-items:center;color:var(--app-text-muted)}.convert-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--app-border-subtle)}.convert-row:last-child{border-bottom:none}.preview-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;border:1px solid var(--app-border);background:#000}.file-meta{min-width:0;display:flex;flex-direction:column;gap:3px}.file-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta span{font-size:12px;color:var(--app-text-secondary)}.file-meta em{font-style:normal;font-size:12px;color:var(--app-primary)}.status-tag{min-width:72px;text-align:center;padding:4px 8px;border:1px solid var(--app-border);border-radius:999px;font-size:12px}.status-waiting{color:var(--app-text-secondary)}.status-converting{color:var(--app-primary);border-color:var(--app-primary-soft-border)}.row-actions{display:inline-flex;gap:8px}.convert-hint{color:var(--app-text-muted);font-size:12px}@media (max-width: 960px){.convert-row{grid-template-columns:48px minmax(0,1fr)}.preview-thumb{width:48px;height:48px}.status-tag{justify-self:start}.row-actions{grid-column:1 / -1}}.image-convert-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.image-convert-header{padding:16px 18px}.image-convert-header h2{margin:0;font-size:24px}.image-convert-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-convert-tips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-convert-tips span{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:1px solid var(--app-primary-soft-border);border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:12px}.image-watermark-tool{flex:1;min-height:0;display:flex;flex-direction:column;padding:14px;gap:12px}.watermark-stage{position:relative;min-height:360px;max-height:520px;height:42vh;border:1px dashed var(--app-primary-soft-border);border-radius:12px;background:var(--app-surface-muted);overflow:hidden;transition:border-color .2s ease,background .2s ease,color .2s ease}.watermark-stage.is-empty{cursor:pointer}.watermark-stage.is-dragging{border-color:var(--app-primary);background:var(--app-primary-soft)}.preview-toolbar{position:absolute;top:10px;left:10px;right:10px;display:inline-flex;align-items:center;gap:6px;z-index:4}.preview-nav-btn{min-width:30px;padding:0;height:30px}.preview-index{min-width:64px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--app-border);background:#040a10cc;color:var(--app-text-secondary);font-size:12px}.preview-download-btn{margin-left:auto}.config-row{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--app-text-secondary)}.switch-options{display:inline-flex;gap:6px}.switch-btn{min-height:32px;min-width:84px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-secondary);cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.switch-btn:hover{border-color:var(--app-primary-soft-border)}.switch-btn.active{border-color:var(--app-primary);color:var(--app-primary);background:var(--app-primary-soft)}.config-row-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.config-input{display:inline-flex;align-items:center;gap:8px;color:var(--app-text-secondary)}.config-checkbox{display:inline-flex;align-items:center;gap:6px;min-height:32px;color:var(--app-text-secondary)}.config-checkbox input{accent-color:var(--app-primary)}.config-input input,.config-input select{height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:0 10px;min-width:120px}.config-input input[type=color]{min-width:40px;width:40px;padding:2px}.watermark-file-name{color:var(--app-text-muted);font-size:12px}.range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.range-item{display:grid;gap:6px;color:var(--app-text-secondary);font-size:12px}.range-item input{width:100%}.preview-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;color:var(--app-text-secondary);font-size:13px}.preview-board{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#05070a;display:grid;place-items:center}.preview-base-image{position:absolute;background-position:center;background-repeat:no-repeat;background-size:contain}.watermark-config{display:grid;gap:10px}.preview-watermark{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none}.preview-watermark.draggable{pointer-events:auto;cursor:grab}.preview-watermark.dragging{cursor:grabbing}.preview-text{white-space:nowrap;text-shadow:0 0 8px rgba(0,0,0,.45)}.preview-image img{width:100%;height:auto;display:block}.watermark-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.watermark-summary{display:inline-flex;gap:16px;color:var(--app-text-secondary);font-size:13px}.watermark-list{flex:1;min-height:0;border:1px solid var(--app-border);border-radius:10px;overflow:auto;background:var(--app-surface-muted)}.watermark-empty{min-height:120px;display:grid;place-items:center;color:var(--app-text-muted)}.watermark-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--app-border-subtle);cursor:pointer}.watermark-row.active{background:#22c55e14}.watermark-row:last-child{border-bottom:none}.watermark-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;border:1px solid var(--app-border)}.watermark-meta{min-width:0;display:flex;flex-direction:column;gap:3px}.watermark-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watermark-meta span{font-size:12px;color:var(--app-text-secondary)}.watermark-meta em{font-style:normal;font-size:12px;color:var(--app-primary)}.watermark-status{min-width:72px;text-align:center;padding:4px 8px;border:1px solid var(--app-border);border-radius:999px;font-size:12px}.status-processing{color:var(--app-primary);border-color:var(--app-primary-soft-border)}.status-done{color:var(--app-primary);border-color:var(--app-primary);background:var(--app-primary-soft)}.status-error{color:var(--app-error);border-color:var(--app-error-border)}.watermark-row-actions{display:inline-flex;gap:8px}.watermark-hint{display:inline-flex;align-items:center;gap:6px;color:var(--app-text-muted);font-size:12px}@media (max-width: 960px){.range-grid{grid-template-columns:1fr}.watermark-row{grid-template-columns:48px minmax(0,1fr)}.watermark-thumb{width:48px;height:48px}.watermark-status{justify-self:start}.watermark-row-actions{grid-column:1 / -1}}.image-watermark-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.image-watermark-header{padding:16px 18px}.image-watermark-header h2{margin:0;font-size:24px}.image-watermark-header p{margin:6px 0 0;color:var(--app-text-secondary)}.image-watermark-tips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-watermark-tips span{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:1px solid var(--app-primary-soft-border);border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:12px}.scroll-to-top-btn{position:absolute;right:16px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--app-border);border-radius:999px;background:var(--app-surface);color:var(--app-text-secondary);box-shadow:var(--app-shadow);font-size:12px;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease}.scroll-to-top-btn:hover{color:var(--app-primary);border-color:var(--app-primary);background:var(--app-hover)}.json-tree-viewer{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.tree-scroll-wrap{position:relative;flex:1;min-height:0}.tree-scroll{position:relative;height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;background:var(--app-surface)}.tree-inner{position:relative;width:100%}.tree-row{position:absolute;top:0;left:0;width:100%;height:34px;display:flex;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;border-bottom:1px solid var(--app-border-subtle)}.tree-toggle{width:20px;height:20px;display:grid;place-items:center;border:none;background:transparent;color:var(--app-text-secondary);cursor:pointer;padding:0}.tree-toggle.placeholder{visibility:hidden}.tree-key{color:var(--app-accent-key)}.tree-separator{color:var(--app-text-muted)}.tree-value.value-string{color:var(--app-accent-string)}.tree-value.value-number,.tree-value.value-boolean{color:var(--app-primary)}.tree-value.value-null{color:var(--app-text-muted)}.tree-value.value-complex{color:var(--app-text-secondary)}.tree-meta{color:var(--app-text-muted);font-size:12px}.tree-row-active{background:var(--app-highlight-active);box-shadow:inset 3px 0 0 var(--app-highlight-active-border)}.tree-row-match{background:var(--app-highlight-match)}.tree-highlight mark{background:var(--app-highlight-mark);color:inherit;padding:0}.tree-value-editable{cursor:text}.tree-value-editable:hover{background:var(--app-toggle-hover);border-radius:4px}.tree-edit-input{flex:1;min-width:80px;max-width:420px;height:24px;padding:0 6px;border:1px solid var(--app-primary);border-radius:4px;outline:none;font-family:inherit;font-size:13px;background:var(--app-surface);color:var(--app-input-text)}.load-more-btn{margin-left:auto;margin-right:12px;border:1px solid var(--app-border);background:var(--app-surface);color:var(--app-primary);border-radius:999px;padding:2px 10px;font-size:12px;cursor:pointer}.load-earlier-btn{margin-left:0;margin-right:6px}.tree-offset-hint{color:var(--app-text-muted)}.spinning{animation:spin .8s linear infinite}.tree-bulk-status{flex-shrink:0;padding:6px 12px;font-size:12px;color:var(--app-primary);background:var(--app-primary-soft);border-bottom:1px solid var(--app-primary-soft-border)}@keyframes spin{to{transform:rotate(360deg)}}.json-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);flex:1;min-height:0;background:var(--app-surface);border:1px solid var(--app-border-light);border-radius:4px;overflow:hidden}.json-input-pane{position:relative;min-width:0;min-height:0;border-right:1px solid var(--app-border-light);overflow:hidden}.json-input{width:100%;height:100%;border:none;outline:none;resize:none;padding:16px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.7;color:var(--app-input-text);background:var(--app-surface)}.json-input::placeholder{color:var(--app-input-placeholder)}.json-output-pane{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--app-surface)}.json-output-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--app-border-light);background:var(--app-surface);flex-wrap:wrap}.toolbar-actions{display:flex;align-items:center;gap:4px}.toolbar-actions button{width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:4px;background:transparent;color:var(--app-text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.toolbar-actions button:hover:not(:disabled){background:var(--app-hover-strong);color:var(--app-text)}.toolbar-actions button:disabled{opacity:.35;cursor:not-allowed}.json-output-hint{color:var(--app-input-placeholder);font-size:12px;white-space:nowrap}.json-search-box{display:flex;align-items:center;gap:6px;min-width:240px;flex:1;max-width:360px;padding:4px 8px;border:1px solid var(--app-border-light);border-radius:6px;color:var(--app-text-secondary);background:var(--app-surface-muted)}.json-search-box input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:13px;color:var(--app-input-text)}.search-clear-btn,.search-nav-btn{width:24px;height:24px;display:grid;place-items:center;border:none;border-radius:4px;background:transparent;color:var(--app-text-secondary);cursor:pointer}.search-clear-btn:hover,.search-nav-btn:hover:not(:disabled){background:var(--app-hover-strong);color:var(--app-text)}.search-nav-btn:disabled{opacity:.35;cursor:not-allowed}.search-count{min-width:42px;font-size:12px;color:var(--app-text-secondary);text-align:right}.json-output-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.json-status-line,.json-error-line{flex-shrink:0;padding:10px 16px;font-size:13px}.json-status-line{color:var(--app-text-secondary)}.json-error-line{color:var(--app-error);background:var(--app-error-bg);border-bottom:1px solid var(--app-error-border)}@media (max-width: 960px){.json-workspace{grid-template-columns:1fr;grid-template-rows:minmax(240px,1fr) minmax(320px,1fr);height:auto}.json-input-pane{border-right:none;border-bottom:1px solid var(--app-border-light)}.json-input{min-height:240px}.json-output-body{min-height:320px}}.json-tool-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;max-width:100%}.password-tool{display:flex;flex-direction:column;gap:14px;padding:16px}.password-controls{display:grid;grid-template-columns:140px 120px 1fr auto;gap:12px;align-items:end}.password-controls label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--app-text-secondary)}.password-controls input[type=number]{height:34px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted);color:var(--app-input-text);padding:0 10px}.length-slider{width:100%;accent-color:var(--app-primary)}.password-controls>span{color:var(--app-primary);font-weight:600}.password-result{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.password-result textarea{min-height:40px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);color:var(--app-input-text);padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;resize:vertical}.password-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--app-text-secondary);font-size:13px}.password-toggle input{accent-color:var(--app-primary)}.password-meta{display:flex;flex-wrap:wrap;gap:16px;color:var(--app-text-secondary);font-size:13px}.password-meta em{font-style:normal;margin-left:4px}.strength-强{color:var(--app-primary)}.strength-中{color:#fbbf24}.strength-弱{color:var(--app-error)}@media (max-width: 900px){.password-controls,.password-result{grid-template-columns:1fr}}.password-generator-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.password-generator-header{padding:16px 18px}.password-generator-header h2{margin:0;font-size:24px}.password-generator-header p{margin:6px 0 0;color:var(--app-text-secondary)}.rsa-tool{padding:14px;display:flex;flex-direction:column;gap:12px}.rsa-actions{display:inline-flex;gap:8px;flex-wrap:wrap;align-items:end}.rsa-actions label{display:flex;flex-direction:column;gap:6px;color:var(--app-text-secondary);font-size:13px}.rsa-actions select{min-width:120px;height:34px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted);color:var(--app-input-text);padding:0 10px}.rsa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rsa-panel{border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);padding:10px;display:flex;flex-direction:column;gap:8px}.rsa-panel h3{margin:0;font-size:15px}.rsa-panel textarea{width:100%;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:10px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.rsa-panel-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.rsa-message{color:var(--app-primary);font-size:13px}@media (max-width: 960px){.rsa-grid{grid-template-columns:1fr}}.rsa-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.rsa-header{padding:16px 18px}.rsa-header h2{margin:0;font-size:24px}.rsa-header p{margin:6px 0 0;color:var(--app-text-secondary)}.sha-tool{padding:14px;display:flex;flex-direction:column;gap:12px}.sha-controls{display:inline-flex;gap:10px}.sha-controls label{display:flex;flex-direction:column;gap:6px;color:var(--app-text-secondary);font-size:13px}.sha-controls select{min-width:140px;height:34px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted);color:var(--app-input-text);padding:0 10px}.sha-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sha-panel{border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);padding:10px;display:flex;flex-direction:column;gap:8px}.sha-panel h3{margin:0;font-size:15px}.sha-panel textarea{width:100%;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:10px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.sha-actions{display:inline-flex;gap:8px}@media (max-width: 960px){.sha-grid{grid-template-columns:1fr}}.sha-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.sha-header{padding:16px 18px}.sha-header h2{margin:0;font-size:24px}.sha-header p{margin:6px 0 0;color:var(--app-text-secondary)}.timestamp-tool{padding:14px}.timezone-switch{display:inline-flex;align-items:center;gap:10px;color:var(--app-text-secondary)}.timezone-buttons{display:inline-flex;gap:6px}.timezone-buttons button{min-width:64px;height:30px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-secondary);cursor:pointer}.timezone-buttons button.active{border-color:var(--app-primary);color:var(--app-primary);background:var(--app-primary-soft)}.timestamp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.timestamp-panel{border:1px solid var(--app-border);border-radius:10px;padding:12px;background:var(--app-surface-muted);display:flex;flex-direction:column;gap:10px}.timestamp-panel h3{margin:0;font-size:16px}.timestamp-input-row{display:flex;gap:8px;flex-wrap:wrap}.timestamp-input-row input{flex:1;min-width:220px;height:36px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:0 10px}.timestamp-result{display:flex;flex-direction:column;gap:8px}.timestamp-result p{margin:0;color:var(--app-text-secondary);word-break:break-all}.timestamp-copy-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--app-border);border-radius:8px;padding:8px 10px;background:var(--app-surface)}.timestamp-error{color:var(--app-error);font-size:13px}.batch-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.batch-row textarea{width:100%;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-input-text);padding:10px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}@media (max-width: 960px){.timestamp-grid,.batch-row{grid-template-columns:1fr}}.timestamp-page{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.timestamp-header{padding:16px 18px}.timestamp-header h2{margin:0;font-size:24px}.timestamp-header p{margin:6px 0 0;color:var(--app-text-secondary)}
