:root{--api-red:#b91f2e;--api-red-soft:#fff1f2;--api-border:#e7e9ef;--api-muted:#667085;--api-card:#fff;--api-bg:#f7f8fb;--api-success:#087a55;--api-warning:#9a6700;--api-danger:#b42318}
.api-status-banner{position:fixed;inset-inline:16px;bottom:16px;z-index:9999;max-width:680px;margin:auto;padding:12px 16px;border:1px solid #ffd0d5;border-radius:14px;background:#fff4f5;color:#8a1724;box-shadow:0 14px 38px rgba(16,24,40,.16);font-weight:700}
.api-toast{position:fixed;inset-inline-start:20px;bottom:20px;z-index:10020;max-width:min(420px,calc(100vw - 40px));padding:13px 16px;border-radius:14px;background:#1d2939;color:#fff;box-shadow:0 16px 40px rgba(16,24,40,.24);font-weight:700}.api-toast[data-tone="success"]{background:#067647}.api-toast[data-tone="error"]{background:#b42318}
.api-empty,.api-loading{display:grid;place-items:center;gap:8px;min-height:180px;padding:28px;text-align:center;border:1px dashed var(--api-border);border-radius:18px;background:#fff;color:var(--api-muted)}.api-loading::before{content:"";width:28px;height:28px;border:3px solid #e6e8ec;border-top-color:var(--api-red);border-radius:50%;animation:apiSpin .8s linear infinite}@keyframes apiSpin{to{transform:rotate(360deg)}}
.api-listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.api-listing-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--api-border);border-radius:18px;background:var(--api-card);color:inherit;text-decoration:none;transition:.2s ease}.api-listing-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(16,24,40,.08)}.api-card-media{aspect-ratio:16/10;display:grid;place-items:center;background:linear-gradient(145deg,#f8fafc,#eef1f6);overflow:hidden}.api-card-media img{width:100%;height:100%;object-fit:cover}.api-card-placeholder{font-size:44px}.api-card-body{display:grid;gap:9px;padding:14px}.api-card-title{margin:0;font-size:16px;line-height:1.7}.api-card-price{font-size:16px;color:#101828}.api-card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--api-muted);font-size:12px}.api-card-badges{position:absolute;inset-block-start:10px;inset-inline-start:10px;display:flex;flex-wrap:wrap;gap:6px;z-index:2}.api-badge{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border-radius:999px;background:#fff;color:#344054;border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 14px rgba(16,24,40,.08);font-size:11px;font-weight:800}.api-badge.ladder{background:#fff7e6;color:#8a5300;border-color:#ffd794}.api-badge.pending{background:#fff7e6;color:#8a5300}.api-badge.active{background:#ecfdf3;color:#067647}.api-badge.rejected,.api-badge.suspended{background:#fff1f3;color:#c01048}
.api-panel{display:grid;gap:18px}.api-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.api-panel-head h2,.api-panel-head h1{margin:0}.api-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.api-field{display:grid;gap:6px;min-width:180px;flex:1}.api-field label{font-size:13px;font-weight:700}.api-field input,.api-field select,.api-field textarea{width:100%;border:1px solid var(--api-border);border-radius:12px;padding:11px 12px;background:#fff;color:#101828;font:inherit}.api-field textarea{min-height:120px;resize:vertical}.api-actions{display:flex;flex-wrap:wrap;gap:8px}.api-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 14px;border:1px solid var(--api-border);border-radius:11px;background:#fff;color:#344054;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}.api-btn:hover{border-color:#c9ced8}.api-btn.primary{background:var(--api-red);border-color:var(--api-red);color:#fff}.api-btn.danger{color:var(--api-danger);border-color:#f6c7ca}.api-btn:disabled{opacity:.55;cursor:not-allowed}
.api-table-wrap{overflow:auto;border:1px solid var(--api-border);border-radius:16px;background:#fff}.api-table{width:100%;border-collapse:collapse;min-width:760px}.api-table th,.api-table td{padding:13px 14px;border-bottom:1px solid #eef0f4;text-align:right;vertical-align:middle}.api-table th{background:#fafbfc;color:#475467;font-size:12px}.api-table tr:last-child td{border-bottom:0}.api-row-title{display:grid;gap:3px}.api-row-title small{color:var(--api-muted)}
.api-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.api-kpi{padding:18px;border:1px solid var(--api-border);border-radius:16px;background:#fff}.api-kpi span{display:block;color:var(--api-muted);font-size:13px}.api-kpi strong{display:block;margin-top:8px;font-size:26px}
.api-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.api-profile-form .wide{grid-column:1/-1}
.api-chat-shell{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:620px;border:1px solid var(--api-border);border-radius:18px;background:#fff;overflow:hidden}.api-chat-list{border-inline-end:1px solid var(--api-border);background:#fbfcfe}.api-chat-list-head{padding:16px;border-bottom:1px solid var(--api-border)}.api-conversation{width:100%;display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:13px 14px;border:0;border-bottom:1px solid #eef0f4;background:transparent;text-align:right;cursor:pointer}.api-conversation.is-active{background:var(--api-red-soft)}.api-avatar{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#e9edf5;font-weight:900}.api-conversation-copy{min-width:0}.api-conversation-copy strong,.api-conversation-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-conversation-copy small{color:var(--api-muted)}.api-unread{min-width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:var(--api-red);color:#fff;font-size:11px}.api-chat-main{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.api-chat-header{padding:14px 16px;border-bottom:1px solid var(--api-border)}.api-chat-thread{padding:18px;overflow:auto;background:#fafbfc;display:flex;flex-direction:column;gap:10px}.api-message{max-width:76%;padding:10px 12px;border-radius:15px;background:#fff;border:1px solid var(--api-border)}.api-message.mine{align-self:flex-start;background:var(--api-red-soft);border-color:#fac9cf}.api-message time{display:block;margin-top:6px;color:var(--api-muted);font-size:10px}.api-quick-actions{display:flex;flex-wrap:wrap;gap:7px;padding:10px 14px 0}.api-quick-actions button{min-height:34px;padding:6px 10px;border-radius:10px;white-space:nowrap}.api-composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 14px;border-top:1px solid var(--api-border)}.api-composer textarea{min-height:46px;max-height:140px;resize:vertical;border:1px solid var(--api-border);border-radius:12px;padding:10px 12px;font:inherit}
.api-notification-list{display:grid;gap:10px}.api-notification{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px;border:1px solid var(--api-border);border-radius:14px;background:#fff}.api-notification.unread{border-color:#f3b8bf;background:#fffafb}.api-notification p{margin:5px 0;color:var(--api-muted)}
.api-detail-cover{min-height:320px;display:grid;place-items:center;overflow:hidden;border-radius:18px;background:#f0f2f6}.api-detail-cover img{width:100%;height:100%;object-fit:cover}.api-detail-cover .api-card-placeholder{font-size:72px}.api-spec-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.api-spec-list div{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--api-border);border-radius:10px}.api-error-box{padding:14px;border:1px solid #fecdd3;border-radius:14px;background:#fff1f2;color:#9f1239}
@media(max-width:980px){.api-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.api-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.api-chat-shell{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:720px){.api-listing-grid{grid-template-columns:1fr}.api-kpis{grid-template-columns:1fr 1fr}.api-profile-form{grid-template-columns:1fr}.api-profile-form .wide{grid-column:auto}.api-chat-shell{grid-template-columns:1fr;min-height:720px}.api-chat-list{border-inline-end:0;border-bottom:1px solid var(--api-border);max-height:260px;overflow:auto}.api-card-meta{flex-direction:column}.api-panel-head{align-items:flex-start;flex-direction:column}}
