.sf-tool .sf-panels{margin: 0 -8px}.sf-tool [class*='col-']{padding: 0 8px}.sf-input-panel,.sf-output-panel{height: 100%}.sf-panel-header{display: flex;align-items: center;justify-content: space-between;gap: 12px;flex-wrap: wrap}.sf-body{display: flex;flex-direction: column}.sf-input-panel .sf-body .form-group{margin-bottom: 14px}.sf-input-panel .control-label{font-weight: 600;margin-bottom: 4px}.sf-presets{display: flex;flex-wrap: wrap;gap: 6px}.sf-chip{display: inline-flex;align-items: center;gap: 4px;border-radius: 999px;padding: 3px 12px;font-size: 12.5px}.sf-chip span{color: var(--text-secondary,#5f6b7a);font-size: 11px}.sf-actions{display: flex;gap: 8px;flex-wrap: wrap;margin-top: 4px}.sf-note{margin-top: 16px;display: flex;align-items: flex-start;gap: 8px;font-size: 12px;color: var(--text-secondary,#5f6b7a);line-height: 1.6;background: var(--bg-subtle,#f8f9fa);border: 1px solid var(--border-color,#e3e6ea);border-radius: 8px;padding: 10px 12px}.sf-note i{margin-top: 2px}.sf-empty{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 10px;min-height: 240px;border: 1px dashed var(--border-color,#dde1e6);border-radius: 8px;color: var(--text-secondary,#5f6b7a);text-align: center;padding: 20px}.sf-empty i{font-size: 42px;opacity: 0.45}.sf-empty p{margin: 0;font-size: 13px;max-width: 340px;line-height: 1.6}.sf-empty.hidden{display: none}.sf-result{display: flex;flex-direction: column;gap: 14px}.sf-result.hidden{display: none}.sf-hero{display: flex;align-items: center;gap: 16px;border-radius: 10px;color: #fff;padding: 16px 20px}.sf-tone-success{background: linear-gradient(135deg,#16a34a,#4ade80)}.sf-tone-warning{background: linear-gradient(135deg,#d97706,#fbbf24)}.sf-tone-danger{background: linear-gradient(135deg,#dc2626,#f87171)}.sf-hero-badge{flex: 0 0 auto;background: rgba(255,255,255,0.22);border: 1px solid rgba(255,255,255,0.45);border-radius: 999px;padding: 6px 14px;font-size: 12.5px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.4px}.sf-hero-main{flex: 1;text-align: center}.sf-hero-label{display: block;font-size: 12px;opacity: 0.88}.sf-hero-value{display: block;font-size: 34px;font-weight: 800;line-height: 1.1;font-family: Consolas,Menlo,monospace}.sf-hero-sub{flex: 0 0 auto;text-align: right;font-size: 12px;opacity: 0.92;display: flex;flex-direction: column;gap: 2px}.sf-hero-date{font-weight: 700;font-size: 14px}.sf-section{border: 1px solid var(--border-color,#e3e6ea);border-radius: 8px;padding: 12px 14px}.sf-section-title{font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.4px;color: var(--text-secondary,#5f6b7a);margin-bottom: 10px}.sf-bar{position: relative;height: 10px;background: var(--bg-subtle,#eef0f3);border-radius: 999px;overflow: visible}.sf-bar-fill{height: 100%;border-radius: 999px;min-width: 0;transition: width 0.3s ease}.sf-bar-fill.sf-tone-success{background: #22c55e}.sf-bar-fill.sf-tone-warning{background: #f59e0b}.sf-bar-fill.sf-tone-danger{background: #ef4444}.sf-bar-labels{display: flex;justify-content: space-between;margin-top: 6px;font-size: 11px;color: var(--text-secondary,#5f6b7a)}.sf-formula-row{display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 5px 0;font-size: 13px}.sf-formula-label{color: var(--text-secondary,#5f6b7a)}.sf-formula-val{font-family: Consolas,Menlo,monospace;font-weight: 600;color: var(--text-primary,#212529);text-align: right;word-break: break-all}.sf-tip{display: flex;align-items: flex-start;gap: 8px;border: 1px solid rgba(217,119,6,0.4);background: rgba(255,251,235,0.55);border-radius: 8px;padding: 10px 12px;font-size: 12px;color: #92400e;line-height: 1.55}.sf-tip i{margin-top: 2px}.sf-tip p{margin: 0}.sf-result .result-toolbar{display: flex;align-items: center;justify-content: space-between;gap: 14px;flex-wrap: wrap;margin-top: 2px}.sf-meta-stack{display: flex;align-items: center;gap: 10px;flex-wrap: wrap;min-width: 0}.sf-meta{font-size: 12px;color: var(--text-secondary,#5f6b7a)}.sf-output-actions{display: flex;gap: 8px;flex-wrap: wrap}.sf-message{display: flex;align-items: flex-start;gap: 8px;font-size: 13px;line-height: 1.5;border-radius: 8px;padding: 10px 12px;margin-top: 16px;transition: opacity 0.25s ease}.sf-message.is-fading{opacity: 0}.sf-message.hidden{display: none}.sf-msg-error{background: rgba(220,53,69,0.08);border: 1px solid rgba(220,53,69,0.35);color: #c0392b}.sf-msg-success{background: rgba(40,167,69,0.08);border: 1px solid rgba(40,167,69,0.35);color: #1e7e34}.sf-msg-info{background: rgba(47,111,237,0.08);border: 1px solid rgba(47,111,237,0.35);color: #2f6fed}[data-theme='dark'] .sf-msg-success{background: rgba(40,167,69,0.14);color: #7ddc95}[data-theme='dark'] .sf-msg-error{background: rgba(220,53,69,0.14);color: #f19aa0}[data-theme='dark'] .sf-msg-info{background: rgba(47,111,237,0.14);color: #9dbcf7}[data-theme='dark'] .sf-tip{background: rgba(180,83,9,0.12);border-color: rgba(217,119,6,0.45);color: #fbbf77}@media (max-width: 991px){.sf-panels [class*='col-']{margin-bottom: 16px}}@media (max-width: 575px){.sf-hero{flex-wrap: wrap;gap: 10px;padding: 14px 12px}.sf-hero-sub{text-align: left}.sf-result .result-toolbar{flex-direction: column;align-items: stretch}.sf-output-actions .btn{flex: 1}}