:root{font-family:SF Pro Text,SF Pro Display,-apple-system,BlinkMacSystemFont,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #f5f5f7;--surface: #ffffff;--surface-muted: #fafafc;--border: rgba(0, 0, 0, .08);--text: #1d1d1f;--muted: #6e6e73;--accent: #0066cc;--accent-rgb: 0, 102, 204;--accent-soft: rgba(0, 102, 204, .12);--danger: #cf222e;--shadow: 0 1px 2px rgba(0, 0, 0, .04)}:root[data-theme=dark]{--bg: #000000;--surface: #161617;--surface-muted: #1d1d1f;--border: rgba(255, 255, 255, .12);--text: #f5f5f7;--muted: #9b9ba1;--accent: #2997ff;--accent-rgb: 41, 151, 255;--accent-soft: rgba(41, 151, 255, .22);--danger: #ff6363;--shadow: 0 1px 0 rgba(255, 255, 255, .03)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);transition:background-color .2s ease,color .2s ease}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.button{border:1px solid transparent;border-radius:999px;min-height:34px;padding:7px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;transition:background-color .16s ease,transform .12s ease}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button--ghost{border-color:var(--border);background:var(--surface-muted);color:var(--text)}.button--icon{min-width:34px;padding-inline:10px}.button:focus-visible{outline:2px solid rgba(var(--accent-rgb),.42);outline-offset:2px}:root{--page-bg: #eff2f6;--panel: rgba(255, 255, 255, .86);--panel-border: rgba(20, 28, 45, .09);--panel-shadow: 0 14px 32px rgba(22, 30, 44, .08);--search-bg: #eef1f5;--chip-bg: #eef1f5;--chip-active: #dfe8ff;--chip-text: #627086;--text-main: #f8fbff;--text-subtle: rgba(245, 250, 255, .88)}:root[data-theme=dark]{--page-bg: #070a11;--panel: rgba(17, 22, 33, .78);--panel-border: rgba(139, 157, 186, .2);--panel-shadow: 0 16px 34px rgba(0, 0, 0, .42);--search-bg: #181e2a;--chip-bg: #1c2332;--chip-active: #243e6f;--chip-text: #afbdd3;--text-main: #eef4ff;--text-subtle: rgba(231, 239, 255, .86)}body{background:var(--page-bg)}.page{min-height:100vh;max-width:860px;margin:0 auto;padding:18px 14px 30px}.card-surface{background:var(--panel);border:1px solid var(--panel-border);box-shadow:var(--panel-shadow);border-radius:18px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px}.topbar--minimal{justify-content:flex-end;padding:8px 10px}.topbar__actions{display:flex;align-items:center;gap:8px}.button--icon{min-width:34px}.filters{margin-top:10px;padding:8px}.search-anchor{position:relative}.search{min-height:42px;display:flex;align-items:center;gap:8px;border:1px solid var(--panel-border);border-radius:12px;padding:0 10px;background:var(--search-bg);color:var(--chip-text);transition:border-color .16s ease,box-shadow .16s ease}.search--active{border-color:#5a7ab561;box-shadow:0 0 0 2px #5a7ab51f}.search input{width:100%;border:0;background:transparent;color:var(--text)}.search input::placeholder{color:var(--chip-text)}.search input:focus{outline:none}.search-popover{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:12;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px;display:grid;gap:8px}.search-popover__tip{margin:0;font-size:11px;color:var(--muted)}.group-tabs{display:flex;flex-wrap:wrap;gap:6px}.chip{border:0;background:var(--chip-bg);color:var(--chip-text);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:600}.chip--active{background:var(--chip-active);color:var(--accent)}.result-meta{margin:0;text-align:right;color:var(--muted);font-size:11px}.records{margin-top:14px;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}.records--ready{opacity:1;transform:translateY(0)}.records--skeleton,.card-list{display:grid;gap:12px}.api-card{position:relative;border:0;border-radius:28px;padding:16px 16px 14px;cursor:pointer;color:var(--text-main);box-shadow:0 14px 30px #161e2c2e;display:grid;grid-template-columns:1fr auto;gap:10px;transition:transform .16s ease,box-shadow .16s ease}.api-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px #141c2d33}.api-card--sunset{background:linear-gradient(135deg,#ff6f6f,#e84b50)}.api-card--sky{background:linear-gradient(135deg,#52c1ff,#2f97ec)}.api-card--mint{background:linear-gradient(135deg,#38d9b1,#18b287)}.api-card--violet{background:linear-gradient(135deg,#9588ff,#6f6bff)}.api-card--indigo{background:linear-gradient(135deg,#4b8ef8,#2a63db)}.api-card--amber{background:linear-gradient(135deg,#ffb14c,#f28a1e)}.api-card__left{min-width:0}.api-card__provider{margin:0;font-size:clamp(28px,4.6vw,38px);line-height:1.05;letter-spacing:-.02em;font-weight:700}.api-card__key{margin:10px 0 0;font-size:clamp(18px,3.4vw,30px);line-height:1.18;letter-spacing:.015em;font-weight:700;font-family:ui-monospace,SF Mono,Menlo,Monaco,JetBrains Mono,monospace;color:var(--text-main);opacity:.96;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.api-card__meta{margin-top:10px;display:flex;align-items:center;gap:8px;min-width:0}.tag{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;color:var(--text-main);background:#fff3}.api-card__note{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-subtle);font-size:12px}.api-card__right{display:grid;justify-items:end;align-content:start;gap:8px}.api-card__actions{display:flex;gap:6px}.icon-button{width:30px;height:30px;border-radius:999px;border:0;background:#ffffff3d;color:var(--text-main);display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:#ffffff52}.icon-button--danger{color:#ffe7e7}.api-card__status{margin:0;font-size:11px;color:var(--text-subtle);text-align:right}.api-card__status--copied{color:#fff;font-weight:700}.empty{text-align:center;padding:26px 14px}.empty h2{margin:0}.empty p{margin:8px 0 12px;color:var(--muted)}.dialog{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:14px}.dialog__backdrop{position:absolute;inset:0;border:0;background:#0000006b}.dialog__panel{position:relative;width:min(560px,100%);background:var(--surface);border:1px solid var(--panel-border);border-radius:14px;box-shadow:var(--panel-shadow);padding:14px}.dialog__header{margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog__header h2{margin:0;font-size:18px}.dialog__form{display:grid;gap:8px}.dialog label{display:grid;gap:6px;color:var(--muted);font-size:13px}.field-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.inline-link{border:0;background:transparent;color:var(--accent);font-size:12px;font-weight:600;padding:0}.dialog input,.dialog textarea{border:1px solid var(--panel-border);border-radius:9px;padding:8px 10px;background:var(--surface-muted);color:var(--text)}.dialog textarea{resize:vertical}.dialog__error{margin:0;color:var(--danger);font-size:12px}.dialog__hint{margin:0;color:var(--muted);font-size:12px}.dialog__footer{margin-top:4px;display:flex;justify-content:flex-end;gap:8px}.toast{position:fixed;left:50%;bottom:14px;transform:translate(-50%);z-index:40;border-radius:999px;padding:6px 10px;background:#0d121ceb;color:#f5f8ff;font-size:11px}.skeleton{min-height:164px;border-radius:28px;position:relative;overflow:hidden;background:linear-gradient(100deg,var(--skeleton-a) 24%,var(--skeleton-b) 36%,var(--skeleton-a) 48%);background-size:280% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{0%{background-position:180% 0}to{background-position:-120% 0}}@media(max-width:760px){.topbar,.topbar__actions{justify-content:flex-end}.api-card{grid-template-columns:1fr;border-radius:24px}.api-card__provider{font-size:30px}.api-card__right{justify-items:start}.api-card__status{text-align:left}}
