.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 32px;border:1px solid transparent;border-radius:999px;font-family:var(--font-ui);font-size:16px;font-weight:600;line-height:1.4;cursor:pointer;transition:.18s ease;-webkit-tap-highlight-color:transparent}.ds-btn:focus{outline:none}.ds-btn:focus-visible{outline:2px solid #6faf7b;outline-offset:2px}.ds-btn:disabled{cursor:not-allowed;background:#dde8d8;color:#ffffff;opacity:.6;border-color:transparent;box-shadow:none}.ds-btn_primary{background:#8ac49a;color:#ffffff;box-shadow:0 4px 12px rgba(46,46,46,.06)}.ds-btn_primary:hover:not(:disabled){background:#7bb88b}.ds-btn_primary:active:not(:disabled){background:#6faf7b}.ds-btn_secondary{color:#2e2e2e;box-shadow:none}.ds-btn_secondary,.ds-btn_secondary:hover:not(:disabled){background:#e9f1e5;border-color:#d6e6d0}.ds-btn_ghost{background:transparent;color:#6faf7b;border-color:#d6e6d0;box-shadow:none}.ds-btn_ghost:hover:not(:disabled){background:#f7fbf6}.ds-btn_full{width:100%}.ds-btn_loading{position:relative}.ds-btn_loading .ds-btn_label{opacity:0}.ds-btn_spinner{position:absolute;width:18px;height:18px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:ds-btn-spin .6s linear infinite}@keyframes ds-btn-spin{to{transform:rotate(1turn)}}.ds-input{display:flex;flex-direction:column;gap:8px}.ds-input_label{font-weight:600}.ds-input_field,.ds-input_label{font-size:16px;color:var(--text)}.ds-input_field{height:52px;padding:0 16px;border:1px solid var(--border);border-radius:16px;background:var(--surface);font-family:var(--font-ui);transition:border-color .18s ease,box-shadow .18s ease}.ds-input_field::placeholder{color:var(--muted)}.ds-input_field:focus,.ds-input_field:hover:not(:disabled){border-color:var(--green)}.ds-input_field:focus{outline:none;box-shadow:0 0 0 3px var(--green-soft)}.ds-input_error .ds-input_field{border-color:var(--orange)}.ds-input_success .ds-input_field{border-color:var(--green)}.ds-input_disabled .ds-input_field,.ds-input_disabled .ds-input_label{opacity:.48;cursor:not-allowed}.ds-input_hint{margin:0;font-size:16px;color:var(--muted)}.ds-input_hint_error{color:var(--orange)}.ds-input_hint_success{color:var(--green)}