/* Button */
.dsb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:var(--btn-height);padding:0 28px;border-radius:var(--radius-pill);font:700 16px/1 var(--font-sans);text-decoration:none!important;border:2px solid transparent;cursor:pointer;white-space:nowrap;transition:transform var(--dur) var(--ease-out),background-color var(--dur),border-color var(--dur),box-shadow var(--dur),color var(--dur)}
.dsb-btn:hover{transform:translateY(var(--lift))}
.dsb-btn:active{transform:translateY(0)}
.dsb-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.dsb-btn--sm{height:var(--btn-height-sm);padding:0 20px;font-size:15px;gap:8px}
.dsb-btn--full{width:100%}
.dsb-btn--primary{background:var(--accent);color:var(--text-on-accent)!important;box-shadow:var(--shadow-accent)}
.dsb-btn--primary:hover{background:var(--accent-hover)}
.dsb-btn--secondary.dsb-on-dark{background:transparent;color:var(--text-on-dark)!important;border-color:var(--border-dark)}
.dsb-btn--secondary.dsb-on-dark:hover{border-color:var(--accent)}
.dsb-btn--secondary.dsb-on-light{background:transparent;color:var(--text-on-light)!important;border-color:var(--border-light-strong)}
.dsb-btn--secondary.dsb-on-light:hover{border-color:var(--ink-900)}
.dsb-btn--ink{background:var(--ink-900);color:var(--white)!important}
.dsb-btn--ink:hover{background:#000}
.dsb-btn:disabled,.dsb-btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
/* WhatsApp float */
.dsb-wa{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:60px;min-width:60px;padding:0;border-radius:var(--radius-pill);background:var(--whatsapp);color:var(--white)!important;box-shadow:var(--shadow-whatsapp);text-decoration:none!important;font:700 15px/1 var(--font-sans);transition:transform var(--dur) var(--ease-out);z-index:50}
.dsb-wa--label{padding:0 22px 0 18px}
.dsb-wa:hover{transform:translateY(var(--lift))}
.dsb-wa--fixed{position:fixed;right:24px;bottom:24px}
@media (max-width:768px){.dsb-wa--fixed{right:16px;bottom:16px}}
/* Card */
.dsb-card{border-radius:var(--radius-card);padding:32px;transition:transform var(--dur) var(--ease-out),border-color var(--dur),box-shadow var(--dur)}
.dsb-card.dsb-on-dark{background:var(--surface-dark-raised);border:1px solid var(--border-dark);color:var(--text-on-dark)}
.dsb-card.dsb-on-light{background:var(--surface-light-raised);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);color:var(--text-on-light)}
.dsb-card--interactive:hover{transform:translateY(var(--lift))}
.dsb-card--interactive.dsb-on-dark:hover{border-color:rgba(255,106,0,.5)}
.dsb-card--interactive.dsb-on-light:hover{box-shadow:var(--shadow-md)}
@media (max-width:768px){.dsb-card{padding:24px}}
/* Fields */
.dsb-field{display:flex;flex-direction:column;gap:8px;font-family:var(--font-sans)}
.dsb-field__label{font:600 15px/20px var(--font-sans)}
.dsb-field__hint{font:400 14px/20px var(--font-sans)}
.dsb-field__control{width:100%;height:var(--field-height);border-radius:var(--radius-field);padding:0 18px;font:400 16px/24px var(--font-sans);border:1.5px solid;outline:none;transition:border-color var(--dur),box-shadow var(--dur);appearance:none;-webkit-appearance:none}
textarea.dsb-field__control{height:auto;min-height:120px;padding:14px 18px;resize:vertical}
select.dsb-field__control{padding-right:48px;cursor:pointer}
.dsb-field__select{position:relative}
.dsb-field__chev{position:absolute;right:18px;top:50%;transform:translateY(-50%);pointer-events:none}
.dsb-on-dark .dsb-field__label{color:var(--text-on-dark)}.dsb-on-dark .dsb-field__hint{color:var(--text-on-dark-muted)}
.dsb-on-dark .dsb-field__control{background:var(--surface-dark);border-color:var(--border-dark);color:var(--text-on-dark)}
.dsb-on-dark .dsb-field__control::placeholder{color:#7A7A7A}
.dsb-on-light .dsb-field__label{color:var(--text-on-light)}.dsb-on-light .dsb-field__hint{color:var(--text-on-light-muted)}
.dsb-on-light .dsb-field__control{background:var(--white);border-color:var(--border-light-strong);color:var(--text-on-light)}
.dsb-on-light .dsb-field__control::placeholder{color:#8C867E}
.dsb-field__control:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--orange-a20)}
.dsb-field__control:disabled{opacity:.5;cursor:not-allowed}
.dsb-on-dark.dsb-field--error .dsb-field__control{border-color:var(--danger-on-dark)}.dsb-on-dark.dsb-field--error .dsb-field__hint{color:var(--danger-on-dark)}
.dsb-on-light.dsb-field--error .dsb-field__control{border-color:var(--danger-on-light)}.dsb-on-light.dsb-field--error .dsb-field__hint{color:var(--danger-on-light)}
/* Accordion */
.dsb-acc__btn{all:unset;box-sizing:border-box;display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;cursor:pointer;font:700 18px/26px var(--font-sans)}
.dsb-acc__btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px;border-radius:8px}
.dsb-acc__icon{transition:transform var(--dur) var(--ease-out)}
.dsb-acc__item[data-open="true"] .dsb-acc__icon{transform:rotate(45deg)}
.dsb-acc__panel{padding:0 48px 22px 0;font:400 var(--body-size)/var(--body-line) var(--font-sans)}
.dsb-acc.dsb-on-dark .dsb-acc__item{border-bottom:1px solid var(--border-dark)}.dsb-acc.dsb-on-dark .dsb-acc__btn{color:var(--text-on-dark)}.dsb-acc.dsb-on-dark .dsb-acc__panel{color:var(--text-on-dark-muted)}
.dsb-acc.dsb-on-light .dsb-acc__item{border-bottom:1px solid var(--border-light-strong)}.dsb-acc.dsb-on-light .dsb-acc__btn{color:var(--text-on-light)}.dsb-acc.dsb-on-light .dsb-acc__panel{color:var(--text-on-light-muted)}
