:root{color:#17201d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f5f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{min-height:100vh;padding:24px}.topbar{border-bottom:1px solid #dce3dd;justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px;display:flex}.eyebrow{color:#607066;letter-spacing:0;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:700}h1,h2,h3,p{margin:0}h1{font-size:28px;line-height:1.1}h2{font-size:18px;line-height:1.2}h3{font-size:15px;line-height:1.3}.topbar-actions,.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.env-pill,.health-pill,.status-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;min-height:28px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.env-pill{color:#fff;background:#24352c}.health-pill.checking{color:#405063;background:#eef2f7}.health-pill.ok{color:#17623a;background:#d9efe4}.health-pill.down{color:#a23027;background:#fae0df}.tabs{gap:8px;margin:20px 0;display:flex;overflow-x:auto}.tabs button,.primary-button,.secondary-button,.icon-button{border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:38px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.tabs button{color:#4e5c54;background:0 0;border-color:#d8e0da;padding:0 14px}.tabs button.active{color:#1d5636;background:#fff;border-color:#8eb99f}.primary-button,.secondary-button{padding:0 14px;font-weight:700}.primary-button{color:#fff;background:#247449}.primary-button:hover{background:#1d633d}.secondary-button{color:#233329;background:#fff;border-color:#cad5ce}.secondary-button:hover,.icon-button:hover{border-color:#93ad9c}.icon-button{aspect-ratio:1;color:#233329;background:#fff;border-color:#cad5ce;min-width:38px;padding:0}.icon-button.danger{color:#9f2f27}.workspace-grid{grid-template-columns:minmax(0,1fr) 390px;gap:18px;display:grid}.panel{background:#fff;border:1px solid #dce3dd;border-radius:8px;min-width:0;box-shadow:0 8px 28px #1c31250d}.wide-panel,.detail-panel,.side-panel,.settings-panel{padding:18px}.panel-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.panel-header p,.merchant-main p,.merchant-meta,.empty-note{color:#627166;font-size:13px}.filters{grid-template-columns:repeat(2,minmax(140px,1fr)) repeat(2,minmax(130px,1fr)) 92px 40px;align-items:end;gap:10px;margin-bottom:14px;display:grid}label{color:#405049;gap:7px;font-size:12px;font-weight:700;display:grid}input,select{color:#17201d;background:#fbfcfb;border:1px solid #cbd6d0;border-radius:7px;width:100%;min-height:38px;padding:0 10px}input:focus,select:focus{border-color:#247449;outline:none;box-shadow:0 0 0 3px #2474491f}.submit-filter{align-self:end}.error-banner{color:#962f27;background:#fff0ef;border:1px solid #f1c4c0;border-radius:7px;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:700}.table-wrap{border:1px solid #e2e8e3;border-radius:8px;max-height:calc(100vh - 258px);overflow:auto}table{border-collapse:collapse;width:100%;min-width:940px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7ede8;padding:10px 12px;font-size:13px}th{color:#54645b;z-index:1;background:#f7faf7;font-size:12px;font-weight:800;position:sticky;top:0}tbody tr{cursor:pointer}tbody tr:hover,.selected-row{background:#eef7f1}.empty-cell{color:#6e7b72;text-align:center;height:92px}.status-chip.pending{color:#8a5c00;background:#fff3d8}.status-chip.successful{color:#17623a;background:#dcefe3}.status-chip.declined,.status-chip.failed,.status-chip.timeout{color:#9e3028;background:#fbe1df}.detail-panel{max-height:calc(100vh - 142px);overflow:auto}.detail-content{gap:14px;display:grid}.meta-grid{grid-template-columns:1fr;gap:10px;margin:0;display:grid}.meta-grid div{border-bottom:1px solid #e6ece7;padding-bottom:9px}dt{color:#627166;font-size:12px;font-weight:800}dd{color:#1f2b25;overflow-wrap:anywhere;margin:4px 0 0;font-size:13px}.json-block{border:1px solid #e1e8e3;border-radius:7px}.json-block summary{color:#35443c;cursor:pointer;padding:10px 12px;font-size:13px;font-weight:800}pre{color:#ddf0e3;background:#111916;max-height:260px;margin:0;padding:12px;font-size:12px;line-height:1.55;overflow:auto}.merchant-list{gap:12px;display:grid}.merchant-row{border:1px solid #e2e8e3;border-radius:8px;gap:12px;padding:14px;display:grid}.merchant-main,.key-row{align-items:center;gap:10px;display:grid}.merchant-main{grid-template-columns:minmax(0,1fr) auto}.merchant-main p,.key-row span{overflow-wrap:anywhere}.merchant-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.key-list{border-top:1px solid #e7ede8;gap:6px;padding-top:10px;display:grid}.key-row{background:#f8faf8;border-radius:7px;grid-template-columns:minmax(0,1fr) auto minmax(120px,auto) 38px;min-height:48px;padding:7px 8px}.key-row div{gap:2px;display:grid}.key-row strong,.key-row span{font-size:12px}.stack-form{gap:12px;display:grid}.divided{border-top:1px solid #e2e8e3;margin-top:18px;padding-top:18px}.key-box{background:#eef7f1;border:1px solid #b9d8c4;border-radius:8px;grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:grid}.key-box div{gap:6px;min-width:0;display:grid}.key-box code{color:#163823;overflow-wrap:anywhere;font-size:12px}.settings-layout{max-width:720px;display:grid}.secret-field{grid-template-columns:minmax(0,1fr) 38px;gap:8px;display:grid}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.workspace-grid{grid-template-columns:1fr}.detail-panel{max-height:none}.filters{grid-template-columns:repeat(3,minmax(140px,1fr)) 40px}}@media (width<=720px){.app-shell{padding:16px}.topbar,.panel-header{flex-direction:column;align-items:flex-start}.filters,.merchant-main,.merchant-meta,.key-row{grid-template-columns:1fr}.submit-filter,.key-row .icon-button,.topbar-actions{width:100%}}
