/* Microplate Assay Analyzer landing page: ELISA 4PL example curve, results and file layout. */
.tp-ma-hero{align-items:start}
.tp-ma-hero .store-product-copy,.tp-ma-fig{min-width:0}
.tp-ma-hero h1{max-width:600px}
.tp-ma-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.tp-ma-actions .store-secondary{display:inline-flex;align-items:center;min-height:44px}

.tp-ma-paste{margin:14px 0 4px;border:1px solid #d7e1ee;border-radius:12px;background:#f8fafd}
.tp-ma-paste summary{display:flex;align-items:center;min-height:44px;padding:8px 14px;font-weight:700;font-size:.92rem;color:#071b35;cursor:pointer}
.tp-ma-paste summary:focus-visible{outline:2px solid #1769ff;outline-offset:2px;border-radius:12px}
.tp-ma-paste ol{margin:0;padding:0 16px 14px 34px;font-size:.9rem;line-height:1.55;color:#33475f}
.tp-ma-paste li+li{margin-top:6px}
.tp-ma-hero code,.tp-ma-demo code,.tp-ma-layout code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.86em;padding:1px 5px;border-radius:5px;background:#eef3fa;color:#071b35;overflow-wrap:anywhere}

/* hero figure */
.tp-ma-fig{margin:0;padding:18px;border:1px solid #d7e1ee;border-radius:20px;background:#fff;box-shadow:0 18px 44px rgba(7,27,53,.08)}
.tp-ma-fig-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;margin:0 0 8px}
.tp-ma-fig-head span{font-size:.74rem;font-weight:800;letter-spacing:.08em;color:#52647b}
.tp-ma-fig-head strong{font-size:.95rem;color:#071b35}
.tp-elisa-plot{display:block;width:100%;height:auto}
.tp-grid{stroke:#e5ebf3;stroke-width:1}
.tp-axis{stroke:#8a9ab0;stroke-width:1.2}
.tp-tick{fill:#52647b;font-size:13px}
.tp-label{fill:#33475f;font-size:13px;font-weight:600}
.tp-note{fill:#1b4fd0;font-size:12.5px;font-weight:600}
.tp-range{fill:#1f5cf0;fill-opacity:.06}
.tp-curve{fill:none;stroke:#1f5cf0;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}
.tp-curve-ext{fill:none;stroke:#1f5cf0;stroke-width:1.6;stroke-dasharray:4 5;stroke-opacity:.55}
.tp-ec50{stroke:#1b4fd0;stroke-width:1.2;stroke-dasharray:3 4}
.tp-std{fill:#071b35}
.tp-sample{fill:#fff;stroke:#1f5cf0;stroke-width:1.6}
.tp-sample.tp-flag{fill:#f59e0b;stroke:#92400e;stroke-width:1.6}
.tp-flag-label{fill:#92400e;font-size:13px;font-weight:800}
.tp-ma-legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin:8px 0 0;padding:0;list-style:none;font-size:.84rem;color:#33475f}
.tp-ma-legend li{display:inline-flex;align-items:center;gap:7px}
.tp-key{display:inline-block;width:10px;height:10px}
.tp-key-std{background:#071b35}
.tp-key-sample{border:2px solid #1f5cf0;border-radius:50%;background:#fff}
.tp-key-flag{border:2px solid #92400e;border-radius:50%;background:#f59e0b}
.tp-ma-params{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 0}
.tp-ma-params div{min-width:0;padding:10px 10px 9px;border-radius:12px;background:#f3f6fb}
.tp-ma-params dt{font-weight:800;font-size:.95rem;color:#071b35}
.tp-ma-params dt small{display:block;font-weight:600;font-size:.72rem;color:#52647b;line-height:1.3}
.tp-ma-params dd{margin:4px 0 0;font-size:1.1rem;font-weight:800;font-variant-numeric:tabular-nums;color:#1b4fd0}
.tp-ma-fig figcaption{margin:12px 0 0;font-size:.84rem;line-height:1.5;color:#52647b}

.tp-ma-pagenav{display:flex;flex-wrap:wrap;gap:8px 20px}

/* results + layout sections */
.tp-ma-head{max-width:760px;margin:0 0 22px}
.tp-ma-head h2{margin:6px 0 10px}
.tp-ma-head p{margin:0;color:#52647b;line-height:1.6}
.tp-ma-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:18px;align-items:start}
.tp-ma-card{min-width:0;padding:20px;border:1px solid #d7e1ee;border-radius:16px;background:#fff}
.tp-ma-card h3{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:0 0 12px;font-size:1.05rem;color:#071b35}
.tp-ma-card h3 small{font-size:.8rem;font-weight:600;color:#52647b}
.tp-ma-card h3.tp-ma-sub{margin-top:20px}
.tp-ma-scroll{overflow-x:auto;border-radius:10px}
.tp-ma-scroll:focus-visible{outline:2px solid #1769ff;outline-offset:2px}
.tp-ma-table{width:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}
.tp-ma-table th,.tp-ma-table td{padding:9px 10px;text-align:left;border-bottom:1px solid #e5ebf3;white-space:nowrap}
.tp-ma-table thead th{font-size:.78rem;font-weight:800;color:#52647b;background:#f3f6fb}
.tp-ma-table thead th small{font-weight:600}
.tp-ma-table tbody th{font-weight:800;color:#071b35}
.tp-ma-table .tp-row-flag{background:#fff7ed}
.tp-ma-table .tp-row-flag b{color:#92400e}
.tp-ma-mono td{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.84rem}
.tp-ma-note{margin:10px 0 0;font-size:.84rem;color:#52647b;line-height:1.5}
.tp-ma-flags{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.tp-ma-flags li{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#fff7ed;border:1px solid #fcd9b0}
.tp-ma-flags span{flex:0 0 auto;min-width:52px;padding:3px 8px;border-radius:999px;background:#92400e;color:#fff;font-size:.72rem;font-weight:800;text-align:center;letter-spacing:.04em}
.tp-ma-flags strong{display:block;font-size:.92rem;color:#071b35}
.tp-ma-flags small{display:block;margin-top:2px;font-size:.84rem;color:#5b4630}
.tp-ma-checks{margin:0;padding:0 0 0 18px;font-size:.9rem;line-height:1.6;color:#33475f}
.tp-ma-files{margin:18px 0 0;padding:20px;border-radius:16px;background:#f3f6fb}
.tp-ma-files h3{margin:0 0 12px;font-size:1.05rem;color:#071b35}
.tp-ma-files ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
.tp-ma-files li{min-width:0}
.tp-ma-files code{display:inline-block;margin:0 0 4px;background:#fff}
.tp-ma-files span{display:block;font-size:.88rem;line-height:1.5;color:#33475f}
.tp-ma-settings{margin:0;display:grid;gap:10px}
.tp-ma-settings div{padding:0 0 10px;border-bottom:1px solid #e5ebf3}
.tp-ma-settings div:last-child{border-bottom:0;padding-bottom:0}
.tp-ma-settings dt{font-weight:800;font-size:.9rem;color:#071b35}
.tp-ma-settings dd{margin:2px 0 0;font-size:.9rem;color:#33475f}
.tp-ma-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 0;padding:0;list-style:none}
.tp-ma-steps li{display:flex;gap:12px;align-items:flex-start;min-width:0;padding:16px;border:1px solid #d7e1ee;border-radius:14px;background:#fff}
.tp-ma-steps b{flex:0 0 auto;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#071b35;color:#fff;font-size:.9rem}
.tp-ma-steps strong{display:block;font-size:.95rem;color:#071b35}
.tp-ma-steps span{display:block;margin-top:2px;font-size:.88rem;line-height:1.5;color:#52647b}

@media (max-width:960px){
  .tp-ma-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .tp-ma-fig{padding:14px;border-radius:16px}
  .tp-ma-params{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tp-ma-files ul,.tp-ma-steps{grid-template-columns:minmax(0,1fr)}
  .tp-ma-card{padding:16px}
}
@media (max-width:400px){
  .tp-ma-table th,.tp-ma-table td{padding:8px 7px}
  .tp-ma-actions .button{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .tp-ma-paste summary{transition:none}
}
.tp-elisa-plot{overflow:visible}
.tp-ma-table td small{display:block;font-size:.76rem;font-weight:600;color:#92400e}
@media (max-width:560px){
  .tp-tick,.tp-label{font-size:19px}
  .tp-note{font-size:18px}
  .tp-flag-label{font-size:19px}
}
