.tool-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:24px;padding:clamp(16px,3vw,28px)}.tool-runner{min-height:var(--tool-min,360px);grid-template-columns:minmax(0,1fr);gap:20px;min-width:0;display:grid}.tool-form{grid-template-columns:minmax(0,1fr);gap:18px;min-width:0;display:grid}.tr-fields{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:16px 14px;display:grid}.tr-fields>*{grid-column:span 6}@media (width>=640px){.tr-fields>.w-half-field{grid-column:span 3}.tr-fields>.w-third-field{grid-column:span 2}}fieldset.field{border:0;min-width:0;margin:0;padding:0}.field .unit{color:var(--text-muted);font-weight:500}.sel-row{align-items:center;gap:8px;display:flex}.sel-row .select{flex:1;min-width:0}.color-row{gap:8px;display:flex}.range-val{float:right;color:var(--brand-text);font-weight:600}.tool-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tool-actions .btn-primary{min-width:180px}.tool-progress{gap:6px;display:grid}.progress-label{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:13.5px}.tool-result{min-height:var(--result-min,160px);min-width:0}.result-placeholder{border:1px dashed var(--border);min-height:140px;color:var(--text-muted);text-align:center;border-radius:16px;place-items:center;margin:0;padding:16px;font-size:14.5px;display:grid}.out-stack{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;display:grid}.out{border:1px solid var(--border);background:var(--bg-raised);border-radius:18px;min-width:0;padding:16px}.out-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.out-h{font-family:var(--font-sans);letter-spacing:.01em;color:var(--text-muted);text-transform:none;margin:0;font-size:14px;font-weight:700}.out-actions{flex-wrap:wrap;gap:8px;display:flex}.out-box{background:var(--surface);border:1px solid var(--border);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:12px;max-height:420px;padding:14px;font-size:15.5px;line-height:1.55;overflow:auto}.out-short{letter-spacing:.01em;text-align:center;padding:18px;font-size:clamp(18px,2.4vw,22px);font-weight:600}.out-pre{white-space:pre;overflow-wrap:normal;margin:0;font-size:13.5px;line-height:1.6}.out-note,.out-summary{color:var(--text-muted);margin:10px 0 0;font-size:13.5px}.out-summary{color:var(--text);margin:0 0 12px;font-size:15px;font-weight:600}.out-stats .stat-hero{justify-items:start;gap:4px;padding:6px 2px 14px;display:grid;position:relative}.stat-label{color:var(--text-muted);font-size:14px;font-weight:600}.stat-primary{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--brand-text);overflow-wrap:anywhere;font-size:clamp(32px,5vw,46px);font-weight:750;line-height:1.1}[data-studio=money] .stat-primary,[data-studio=calc] .stat-primary{font-family:var(--font-sans);font-weight:800}.stat-hero .btn{position:absolute;top:0;right:0}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(min(126px,100%),1fr));gap:8px;margin:0;display:grid}@media (width>=640px){.stat-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.stat-cell{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:0;padding:12px 14px}.stat-cell dt{color:var(--text-muted);font-size:12.5px;font-weight:600}.stat-cell dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:17px;font-weight:650}.table-scroll{border:1px solid var(--border);background:var(--surface);border-radius:12px;max-height:420px;overflow:auto}.table-scroll table{border-collapse:collapse;width:100%;font-size:14px}.table-scroll th,.table-scroll td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:9px 12px}.table-scroll th{background:var(--surface-2);z-index:1;font-weight:700;position:sticky;top:0}.table-scroll tr:last-child td{border-bottom:0}.list-out{gap:6px;max-height:420px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.list-out li{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:center;gap:8px;min-width:0;padding:8px 8px 8px 14px;display:flex}.list-out li>span{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15.5px}.scr,.out-short{position:relative}.scr-anim{position:absolute;inset:0;overflow:hidden}.out-short>.scr-anim{inset:18px}.out-frame{border:1px solid var(--border);background:#fff;border-radius:12px;width:100%}.out-media{border:1px solid var(--border);border-radius:12px;place-items:center;max-height:520px;padding:12px;display:grid;overflow:auto}.out-media img{object-fit:contain;max-height:480px}.checker{background-color:var(--surface);background-image:linear-gradient(45deg, var(--surface-2) 25%, transparent 25%), linear-gradient(-45deg, var(--surface-2) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--surface-2) 75%), linear-gradient(-45deg, transparent 75%, var(--surface-2) 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}.swatches{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.swatch{border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:14px;padding:0;display:grid;overflow:hidden}.sw-chip{background:var(--sw);height:64px}.sw-meta{padding:8px 10px;font-size:13px;display:grid}.sw-meta small{color:var(--text-muted)}.file-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.file-list li,.file-queue li{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:8px 8px 8px 12px;display:flex}.file-thumb{object-fit:cover;border-radius:8px;flex:none;width:44px;height:44px}.file-ico{background:var(--brand-soft);width:44px;height:44px;color:var(--brand-text);border-radius:10px;flex:none;place-items:center;display:grid}.file-name,.q-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14.5px;font-weight:550;overflow:hidden}.file-size,.q-size{color:var(--text-muted);flex:none;font-size:13px}.dropzone{text-align:center;background:var(--bg-raised);border-radius:20px;justify-items:center;gap:6px;padding:clamp(22px,4vw,36px) 16px;display:grid}.drop-ico{color:var(--brand-text)}.drop-title{margin:4px 0 0;font-size:17px;font-weight:700}.drop-sub{color:var(--text-muted);margin:0 0 8px;font-size:13.5px}.file-queue{gap:6px;max-height:360px;margin:12px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.file-queue li{animation:tr-sheet .3s var(--ease-emphasized) both}.file-queue li:nth-child(n+13){animation:none}.file-queue .icon-btn{width:36px;height:36px;font-size:15px}.grip{cursor:grab;color:var(--text-muted);letter-spacing:-2px}.q-idx{background:var(--brand-soft);min-width:26px;height:26px;color:var(--brand-text);border-radius:8px;place-items:center;font-size:12.5px;font-weight:700;display:grid}.q-more{color:var(--text-muted);margin:6px 0 0;font-size:13.5px}.notice{border:1px solid var(--border);background:var(--surface-2);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:12px 14px;font-size:14.5px}.notice-error{border-color:color-mix(in oklab, #dc2626 45%, var(--border));background:color-mix(in oklab, #dc2626 9%, var(--surface))}.notice-warn{border-color:color-mix(in oklab, #d97706 45%, var(--border));background:color-mix(in oklab, #d97706 10%, var(--surface))}.notice-success{border-color:color-mix(in oklab, #16a34a 45%, var(--border));background:color-mix(in oklab, #16a34a 9%, var(--surface))}.chain-bar{flex-wrap:wrap;align-items:center;gap:8px 10px;padding-top:4px;display:flex}.chain-h{font-size:14px;font-weight:700}.chain-bar ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tr-chart{max-width:760px;margin:0}.tr-chart svg{width:100%;height:auto;max-height:340px;display:block}.ch-t{font:500 11px var(--font-sans);fill:var(--text-muted)}.ch-legend{color:var(--text-muted);flex-wrap:wrap;gap:14px;margin-top:8px;font-size:13px;display:flex}.ch-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.grow-x{transform-box:fill-box;transform-origin:0;animation:tr-growx .5s var(--ease-emphasized) both}@keyframes tr-growx{0%{transform:scaleX(0)}to{transform:none}}.grow-y{transform-box:fill-box}.draw-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:tr-draw1 .7s var(--ease-standard) forwards}@keyframes tr-draw1{to{stroke-dashoffset:0}}.privacy-note{color:var(--text-muted);align-items:center;gap:10px;margin:14px 2px 0;font-size:14px;display:flex}.privacy-note svg{color:var(--brand-text);flex:none}.privacy-note a{color:var(--brand-text)}.file-media{flex:none;max-width:220px;height:36px}.file-video{background:#000;border-radius:12px;width:100%;max-height:420px;margin-bottom:12px;display:block}
