.kp-scope{--kp-g:#0c5c3a;--kp-g-h:#0a4d31;--kp-soft:#ecf2ef;--kp-soft2:#e1ece5;--kp-soft-line:#c6dccf;--kp-bg:#f2f5f3;--kp-card:#fff;--kp-ink:#141a16;--kp-head:color-mix(in srgb, var(--kp-ink) 5%, var(--kp-card));--kp-mute:#5f6b64;--kp-line:#d9e0db;--kp-line2:#e7ece9;--kp-danger:#a12b25;--kp-danger-soft:#f8ecea;--kp-danger-line:#ecc9c5;--kp-warn:#7a5200;--kp-warn-soft:#fbf3e2;--kp-warn-line:#efdcb5;--kp-r-btn:9px;--kp-r-in:9px;--kp-r-card:14px;--kp-r-alert:12px;--kp-r-modal:16px;--kp-shadow:0 10px 30px #141a1629;--kp-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,"Helvetica Neue",system-ui,sans-serif;--kp-field-height:40px;--kp-field-height-mobile:44px;--kp-button-height:32px;--kp-lock-bg:#f1f3f2;--kp-lock-line:#dde3df;--kp-lock-ink:#4d5852;--kp-lock-icon:#7d8a83;font-family:var(--kp-font);color:var(--kp-ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.kp-viewport{container:kp-viewport/inline-size}@layer base{.kp-scope *,.kp-scope :before,.kp-scope :after{box-sizing:border-box}}
.kp-field{flex-direction:column;gap:6px;min-width:0;display:flex}.kp-label{color:var(--kp-ink);font-size:13px;font-weight:600}.kp-in{height:var(--kp-field-height);border:1px solid var(--kp-line);border-radius:var(--kp-r-in);font:inherit;color:var(--kp-ink);background:#fff;width:100%;padding:0 12px;font-size:14px}.kp-in::placeholder{color:#8b958f}.kp-in:focus,.kp-is-lock:focus-within{border-color:var(--kp-g);box-shadow:0 0 0 3px var(--kp-soft2);outline:none}.kp-in.kp-is-error{border-color:var(--kp-danger)}.kp-in.kp-is-lock{background:var(--kp-lock-bg);border-color:var(--kp-lock-line);color:var(--kp-lock-ink);cursor:not-allowed;justify-content:space-between;align-items:center;gap:8px;display:flex}.kp-locked-value{width:100%;min-width:0;font:inherit;color:inherit;text-overflow:ellipsis;cursor:text;background:0 0;border:0;outline:none;padding:0}.kp-lock{width:15px;height:15px;stroke:var(--kp-lock-icon);fill:none;stroke-width:2px;flex:none}.kp-hint{color:var(--kp-mute);margin:0;font-size:12.5px}.kp-field-error{color:var(--kp-danger);align-items:flex-start;gap:6px;margin:0;font-size:12.5px;display:flex}.kp-btn{min-height:var(--kp-button-height);border-radius:var(--kp-r-btn);font:inherit;white-space:nowrap;border:1px solid var(--kp-line);color:var(--kp-ink);cursor:pointer;background:#fff;flex:none;justify-content:center;align-self:flex-start;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.kp-btn:before{content:"";position:absolute;inset:-6px}.kp-btn:hover{border-color:var(--kp-g);color:var(--kp-g)}.kp-btn:focus-visible{outline:2px solid var(--kp-g);outline-offset:2px}.kp-btn-primary{background:var(--kp-g);border-color:var(--kp-g);color:#fff;font-weight:700;box-shadow:0 4px 12px #0c5c3a2e}.kp-btn-primary:hover{background:var(--kp-g-h);color:#fff}.kp-btn-soft{background:var(--kp-soft);border-color:var(--kp-soft-line);color:var(--kp-g)}.kp-btn-ghost{color:var(--kp-g);background:0 0;border-color:#0000}.kp-btn-danger,.kp-btn-danger:hover{background:var(--kp-danger);border-color:var(--kp-danger);color:#fff;font-weight:700}.kp-btn-danger-outline{color:var(--kp-danger);border-color:var(--kp-danger-line)}.kp-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.kp-btn-primary:disabled{opacity:1;background:var(--kp-soft2);border-color:var(--kp-soft-line);color:#557a66}.kp-btn svg{stroke:currentColor;fill:none;stroke-width:2.2px;width:14px;height:14px}.kp-btn-icon{width:32px;padding:0}@container kp-viewport (max-width:600px){.kp-in{height:var(--kp-field-height-mobile);font-size:16px}}.kp-label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.kp-input-wrap{position:relative}.kp-input-wrap .kp-in{padding-right:42px}.kp-password-toggle{width:32px;height:32px;color:var(--kp-mute);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:4px;right:6px}.kp-password-toggle:before{content:"";position:absolute;inset:-6px}.kp-password-toggle svg{width:16px;height:16px}.kp-password-toggle:focus-visible{outline:2px solid var(--kp-g)}@container kp-viewport (max-width:600px){.kp-password-toggle{top:6px}}.kp-field-error-icon{stroke:currentColor;fill:none;stroke-width:2.4px;flex:none;width:14px;height:14px;margin-top:2px}
