.fsn-calculator :root{}
.fsn-calculator *{box-sizing:border-box}
.fsn-calculator html,.fsn-calculator body{height:auto}
.fsn-calculator{--bg:#ffffff; --text:#0b1220; --muted:#5b6470;
--card:#ffffff; --border:#e6e8ec; --shadow:0 6px 18px rgba(0,0,0,.06);
--accent:#0ea5e9; --accent-2:#22c55e; --danger:#ef4444; --warn:#f59e0b; --ok:#16a34a;
--ring:0 0 0 3px rgba(14,165,233,.25);
--brand:#39AFFF; --brand-2:#064477; --brand-ink:#0b1220;
color:var(--text); font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;}

.fsn-calculator .container{max-width:780px;margin:24px auto;padding:0 14px}
.fsn-calculator .tool-shell{background:#f9fafb;border:1px solid #eef2f7;border-radius:20px;padding:18px 14px 22px;margin:40px auto;box-shadow:0 4px 16px rgba(2,6,23,.06)}
@media (min-width:920px){.fsn-calculator .tool-shell{padding:24px 20px 28px}}

.fsn-calculator .header-box{position:relative;border-radius:16px;padding:26px 20px 22px;color:#fff;text-align:center;margin-bottom:16px;border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 24px rgba(2,6,23,.18), inset 0 1px 0 rgba(255,255,255,.05);
background:radial-gradient(1100px 360px at 50% -10%, rgba(0,0,0,.08), transparent 46%), linear-gradient(145deg, var(--brand-2) 0%, var(--brand-2) 40%, var(--brand) 88%, #39AFFF 100%);}
.fsn-calculator .header-box::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:conic-gradient(from 180deg at 50% 10%, rgba(255,255,255,.04), transparent 35%),repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 12px);mix-blend-mode:overlay;opacity:.32}
.fsn-calculator .header-box .title{font-size:clamp(22px,3.2vw,34px);font-weight:900;margin:0 0 6px}
.fsn-calculator .header-box .subtitle{color:#eef2ff;font-size:14px;margin:0}

.fsn-calculator .actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 12px}
.fsn-calculator .btn{appearance:none;border:0;background:var(--accent);color:#fff;padding:12px 14px;border-radius:12px;font-weight:700;cursor:pointer;transition:.15s;min-height:44px}
.fsn-calculator .btn:hover{filter:brightness(1.05)}
.fsn-calculator .btn.primary{background:var(--brand);color:#fff;border:0}
.fsn-calculator .btn.outline{background:#666;color:#fff;border:1px solid #555}
.fsn-calculator .btn.outline:hover{background:#555}
.fsn-calculator .btn.subtle{background:#3099e6;color:#fff;border:none}
.fsn-calculator .btn.subtle:hover{background:#2788cf}
.fsn-calculator .btn.warn{background:var(--warn);color:#111827}
.fsn-calculator .btn.danger{background:var(--danger)}
.fsn-calculator .btn.block{width:100%}

.fsn-calculator .card{background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}
.fsn-calculator .card .hd{padding:14px 16px;border-bottom:1px solid var(--border);font-weight:800}
.fsn-calculator .card .bd{padding:16px}

.fsn-calculator .form-grid{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:920px){.fsn-calculator .form-grid{grid-template-columns:1fr 1fr}}
.fsn-calculator .full{grid-column:1/-1}
.fsn-calculator label{font-size:13px;color:var(--muted);display:block;margin-bottom:8px}

.fsn-calculator .form-grid>div{min-width:0}
.fsn-calculator input[type="text"],.fsn-calculator input[type="number"],.fsn-calculator select,.fsn-calculator textarea{width:100%;min-width:0;padding:12px;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--text);outline:none;overflow:hidden}
.fsn-calculator textarea{min-height:210px;resize:vertical;word-break:break-word}
.fsn-calculator textarea::placeholder{white-space:pre-line;opacity:.7}
.fsn-calculator input:focus,.fsn-calculator select:focus,.fsn-calculator textarea:focus{box-shadow:var(--ring);border-color:rgba(14,165,233,.55)}

.fsn-calculator .hint{color:var(--muted);font-size:12px}
.fsn-calculator .pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:#f8fafc;color:var(--muted);font-size:12px}

.fsn-calculator .toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}
.fsn-calculator .right{margin-left:auto}
.fsn-calculator .stat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:6px}
.fsn-calculator .stat .s{background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:10px;text-align:center}
.fsn-calculator .s .v{font-size:18px;font-weight:900}
.fsn-calculator .s .k{font-size:12px;color:var(--muted)}

.fsn-calculator .table-wrap{overflow:auto;border-radius:12px}
.fsn-calculator table{width:100%;border-collapse:separate;border-spacing:0 8px;min-width:680px}
.fsn-calculator thead th{position:sticky;top:0;background:var(--card);z-index:1;font-size:12px;color:var(--muted);text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}
.fsn-calculator tbody tr{background:#fff;border:1px solid var(--border)}
.fsn-calculator tbody td{padding:10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.fsn-calculator tbody tr td:first-child{border-left:1px solid var(--border);border-top-left-radius:12px;border-bottom-left-radius:12px}
.fsn-calculator tbody tr td:last-child{border-right:1px solid var(--border);border-top-right-radius:12px;border-bottom-right-radius:12px}
.fsn-calculator .tag{padding:4px 8px;border-radius:999px;font-size:12px;font-weight:800;display:inline-block}
.fsn-calculator .Fast{background:rgba(22,163,74,.12);color:var(--ok);border:1px solid rgba(22,163,74,.35)}
.fsn-calculator .Slow{background:rgba(245,158,11,.10);color:var(--warn);border:1px solid rgba(245,158,11,.35)}
.fsn-calculator .NonMoving{background:rgba(239,68,68,.08);color:var(--danger);border:1px solid rgba(239,68,68,.35)}

.fsn-calculator .mobile-cards{display:none}
@media (max-width:640px){
  .fsn-calculator .toolbar .btn{flex:1 1 calc(50% - 8px)}
  .fsn-calculator .table-wrap{display:none}
  .fsn-calculator .mobile-cards{display:grid;gap:10px}
  .fsn-calculator .card-row{border:1px solid var(--border);border-radius:12px;padding:12px;background:#fff}
  .fsn-calculator .row-top{display:flex;justify-content:space-between;gap:8px}
  .fsn-calculator .sku{font-weight:800}
  .fsn-calculator .meta{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;font-size:13px;color:#374151}
  .fsn-calculator .meta div{background:#f8fafc;border:1px solid var(--border);border-radius:8px;padding:6px}
}