.ts-shell{background:var(--bg, #f6f7f8);min-height:calc(100vh - var(--topbar-h, 56px));padding:20px 16px 40px;color:var(--text, #1f2329);font-family:var(--font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif)}.ts-page{width:min(920px,100%);margin:0 auto}.ts-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.ts-head h1{margin:0 0 6px;font-size:26px;line-height:1.3}.ts-sub{margin:0;font-size:14px;color:var(--muted, #86909c)}.ts-toast{flex:0 0 auto;font-size:13px;color:var(--primary, #1677ff);background:var(--primary-soft, #eff6ff);border:1px solid var(--primary-border, #cfe1ff);border-radius:999px;padding:6px 12px}.ts-card{background:#fff;border:1px solid var(--line, #e5e6eb);border-radius:var(--radius, 10px);box-shadow:var(--shadow, 0 1px 2px rgba(0, 0, 0, .05));padding:20px;margin-bottom:14px}.ts-card h2{margin:0 0 14px;font-size:16px;display:flex;align-items:center;gap:8px}.section-dot{width:8px;height:8px;border-radius:50%;background:var(--primary, #1677ff);flex:0 0 auto}.live-card .live-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.live-label{font-size:13px;color:var(--muted, #86909c);margin-bottom:8px}.live-value-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.live-value{font-size:34px;font-weight:700;letter-spacing:.2px;font-variant-numeric:tabular-nums;line-height:1.2}.unit-badge{font-size:12px;color:#0f766e;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;padding:2px 8px}.live-readable{margin-top:8px;font-size:13px}.live-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.mode-tabs{display:inline-flex;gap:4px;padding:4px;background:#eef0f3;border-radius:10px;margin-bottom:14px}.mode-tab{border:0;background:transparent;color:#4e5969;height:34px;padding:0 14px;border-radius:8px;cursor:pointer;font-size:13px}.mode-tab.active{background:#fff;color:var(--primary, #1677ff);font-weight:600;box-shadow:0 1px 2px #0000000f}.field-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:140px}.field.grow{flex:1 1 220px}.field.compact{min-width:120px}.field span{font-size:12px;color:var(--muted, #86909c)}.field input,.field select,.field textarea,.result-input{height:38px;border:1px solid var(--line, #e5e6eb);border-radius:8px;padding:0 12px;background:#fff;color:var(--text, #1f2329);font:inherit;outline:none}.field textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.6;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:13px}.field input:focus,.field select:focus,.field textarea:focus,.result-input:focus{border-color:var(--primary-border, #cfe1ff);box-shadow:0 0 0 3px #1677ff1a}.action-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.result-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.result-input{flex:1 1 220px;background:#fafbfc}.ts-shell .btn{height:36px;padding:0 14px;border-radius:8px;border:1px solid var(--line, #e5e6eb);background:#fff;color:#4e5969;cursor:pointer;font:inherit;font-size:13px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.ts-shell .btn:hover:not(:disabled){background:#f7f8fa;border-color:#d0d3d9}.ts-shell .btn:disabled{opacity:.45;cursor:not-allowed}.ts-shell .btn.primary{background:var(--primary, #1677ff);border-color:var(--primary, #1677ff);color:#fff;font-weight:600}.ts-shell .btn.primary:hover:not(:disabled){filter:brightness(.96);background:var(--primary, #1677ff)}.ts-shell .btn.danger{background:#fff1f0;border-color:#ffccc7;color:#cf1322}.ts-shell .btn.danger:hover:not(:disabled){background:#ffe7e4}.batch-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.hint{margin:-4px 0 12px;font-size:13px}.ts-intro p{margin:0 0 12px;font-size:14px;line-height:1.85;color:#4e5969}.ts-intro ul{margin:0 0 12px;padding-left:18px;color:#4e5969;font-size:14px;line-height:1.85}.ts-intro li{margin-bottom:6px}.ts-intro li strong{color:#1f2329;font-weight:600}.ts-intro .intro-note{margin:0;font-size:12px}.muted{color:var(--muted, #86909c)}@media(max-width:800px){.live-card .live-top{flex-direction:column}.live-actions{justify-content:flex-start}.live-value{font-size:28px}.batch-grid{grid-template-columns:1fr}}
