:root{--kp-overlay-bg: rgba(4, 6, 10, .72);--kp-panel-bg: #0f1218;--kp-panel-border: #1e2530;--kp-panel-hover: #161b24;--kp-text: #e8eaed;--kp-text-muted: #8a919c;--kp-brand: #56b8cc;--kp-brand-fg: #041014;--kp-danger: #e53935;--kp-success: #22c55e;--kp-radius: 14px;--kp-radius-sm: 8px}.kp-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:24px}.kp-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--kp-overlay-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.kp-modal-panel{position:relative;width:100%;max-width:400px;background:var(--kp-panel-bg);border:1px solid var(--kp-panel-border);border-radius:var(--kp-radius);box-shadow:0 24px 60px #00000080;padding:32px 28px 24px;color:var(--kp-text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.kp-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;background:transparent;color:var(--kp-text-muted);font-size:22px;line-height:1;cursor:pointer;border-radius:6px;transition:all .15s}.kp-modal-close:hover{color:var(--kp-text);background:var(--kp-panel-hover)}.kp-login-panel{max-width:380px}.kp-login-head{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px}.kp-login-logo{width:40px;height:40px;border-radius:10px;margin-bottom:4px}.kp-login-title{font-size:20px;font-weight:700;color:var(--kp-text)}.kp-login-sub{font-size:13px;color:var(--kp-text-muted);text-align:center}.kp-login-invite{margin-bottom:14px;padding:10px 12px;border:1px solid rgba(255,102,24,.32);border-radius:var(--kp-radius-sm);background:#ff661814;color:var(--kp-text);font-size:12px;line-height:1.6}.kp-login-err{background:#e539351f;border:1px solid rgba(229,57,53,.3);color:#ff8a80;padding:10px 12px;border-radius:var(--kp-radius-sm);font-size:13px;margin-bottom:14px}.kp-login-form{display:flex;flex-direction:column;gap:14px}.kp-login-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--kp-text-muted)}.kp-login-field input{width:100%;padding:12px 14px;border:1px solid var(--kp-panel-border);background:#ffffff05;color:var(--kp-text);border-radius:var(--kp-radius-sm);font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit}.kp-login-field input:focus{border-color:var(--kp-brand);box-shadow:0 0 0 3px #56b8cc26}.kp-login-code-row{display:flex;gap:10px}.kp-login-code-row input{flex:1;min-width:0}.kp-login-otp-btn{flex:0 0 auto;min-width:110px;padding:0 14px;border:1px solid var(--kp-panel-border);background:var(--kp-panel-hover);color:var(--kp-text);border-radius:var(--kp-radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.kp-login-otp-btn:hover:not([disabled]){border-color:var(--kp-brand);color:var(--kp-brand)}.kp-login-otp-btn[disabled]{opacity:.55;cursor:not-allowed}.kp-login-submit{margin-top:4px;padding:12px 16px;border:none;background:var(--kp-brand);color:var(--kp-brand-fg);border-radius:var(--kp-radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:all .15s}.kp-login-submit:hover:not([disabled]){filter:brightness(1.08)}.kp-login-submit[disabled]{opacity:.5;cursor:not-allowed}.kp-login-tos{margin-top:8px;font-size:11px;color:var(--kp-text-muted);text-align:center}.kp-login-tos a{color:var(--kp-brand);text-decoration:none}.kp-login-tos a:hover{text-decoration:underline}.kp-user-slot{display:inline-flex;align-items:center}.kp-btn-login{padding:8px 20px;border-radius:999px;border:1px solid var(--kp-panel-border);background:transparent;color:var(--kp-text);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.kp-btn-login:hover{border-color:var(--kp-brand);color:var(--kp-brand);background:#56b8cc14}.kp-user-wrap{position:relative;display:inline-flex}.kp-user-avatar{width:36px;height:36px;border-radius:50%;border:1px solid var(--kp-panel-border);background:#56b8cc1f;color:var(--kp-brand);font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.kp-user-avatar:hover{border-color:var(--kp-brand);transform:scale(1.04)}.kp-user-menu{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;background:var(--kp-panel-bg);border:1px solid var(--kp-panel-border);border-radius:var(--kp-radius);box-shadow:0 16px 40px #00000073;padding:8px;z-index:100}.kp-user-menu[hidden]{display:none}.kp-user-card{padding:12px 12px 14px;border-bottom:1px solid var(--kp-panel-border);margin-bottom:6px}.kp-user-card-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kp-user-card-name{font-size:15px;font-weight:600;color:var(--kp-text)}.kp-user-card-sub{margin-top:4px;font-size:12px;color:var(--kp-text-muted);word-break:break-all}.kp-plan-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;line-height:1.6;letter-spacing:.3px}.kp-plan-pill--free{background:#8a919c2e;color:#b6bcc5}.kp-plan-pill--pro{background:#56b8cc2e;color:var(--kp-brand)}.kp-plan-pill--proplus{background:#ff98002e;color:#ffb547}.kp-plan-pill--ultra{background:#22c55e38;color:#4ade80}.kp-user-menu-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:none;background:transparent;color:var(--kp-text);font-size:14px;cursor:pointer;border-radius:var(--kp-radius-sm);text-decoration:none;transition:background .12s;text-align:left;font-family:inherit}.kp-user-menu-item:hover{background:var(--kp-panel-hover)}.kp-user-menu-item--primary{background:#56b8cc14;color:var(--kp-brand)}.kp-user-menu-item--primary:hover{background:#56b8cc29}.kp-user-menu-item--danger{color:#e5a3a3}.kp-user-menu-item--danger:hover{background:#e539351a;color:#ff8a80}.kp-pay-panel{max-width:460px;text-align:center}.kp-pay-title{font-size:20px;font-weight:700;margin-bottom:6px}.kp-pay-sub{font-size:14px;color:var(--kp-text-muted);margin-bottom:20px}.kp-pay-channels{display:flex;gap:12px;justify-content:center;margin:20px 0 12px}.kp-pay-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:1px solid var(--kp-panel-border);background:transparent;color:var(--kp-text);border-radius:var(--kp-radius-sm);font-size:14px;cursor:pointer;transition:all .15s;font-family:inherit}.kp-pay-btn:hover{transform:translateY(-1px)}.kp-pay-btn--alipay:hover{border-color:#1677ff;background:#1677ff1a;color:#4c9dff}.kp-pay-btn--wechat:hover{border-color:#07c160;background:#07c1601a;color:#22d47c}.kp-pay-hint{font-size:12px;color:var(--kp-text-muted)}.kp-pay-loading,.kp-pay-err{padding:24px 0;font-size:14px;color:var(--kp-text-muted)}.kp-pay-err{color:#ff8a80}.kp-pay-retry{margin-top:10px;padding:8px 16px;border:1px solid var(--kp-panel-border);background:transparent;color:var(--kp-text);border-radius:var(--kp-radius-sm);cursor:pointer;font-size:13px;font-family:inherit}.kp-pay-qr{padding:8px 0 4px}.kp-pay-tip{font-size:14px;color:var(--kp-text-muted);margin-bottom:14px}.kp-pay-qr-img{width:200px;height:200px;border-radius:8px;background:#fff;padding:8px;margin-bottom:12px;display:inline-block}.kp-pay-link{display:block;color:var(--kp-brand);font-size:13px;text-decoration:none;margin-bottom:10px}.kp-pay-link:hover{text-decoration:underline}.kp-pay-order{font-size:12px;color:var(--kp-text-muted);font-family:JetBrains Mono,monospace;margin:8px 0 4px}.kp-pay-status{margin:12px 0;padding:10px;border-radius:var(--kp-radius-sm);background:#ffc10714;color:#ffd54f;font-size:13px}.kp-pay-ok{color:var(--kp-success);font-weight:600}.kp-pay-refresh{margin-top:6px;padding:10px 18px;border:none;background:var(--kp-brand);color:var(--kp-brand-fg);border-radius:var(--kp-radius-sm);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit}.kp-pay-refresh:hover{filter:brightness(1.08)}.kp-nav-download{display:inline-flex;align-items:center;padding:8px 18px;border-radius:999px;background:#f5f7fa;color:#0b0d12;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s;margin-left:8px}.kp-nav-download:hover{background:#fff;transform:translateY(-1px)}@media (max-width: 640px){.kp-modal-panel{max-width:92vw;padding:24px 20px 20px}.kp-user-menu{right:8px;min-width:220px}}
