/* Base optativa del estilo aprobado. Cargar Outfit en el proyecto. */
:root {
  --soft-primary: #517164;
  --soft-ink: #17372e;
  --soft-muted: #5e6d65;
  --soft-background: #fbfaf6;
  --soft-surface: #fff;
  --soft-tint: #eef5ef;
  --soft-control: #f8fbf7;
  --soft-border: #d9ded6;
  --soft-accent: #a74111;
  --soft-ease: cubic-bezier(.22,.61,.36,1);
}
.soft-page {font-family:Outfit,system-ui,sans-serif;color:var(--soft-ink);background:var(--soft-background);line-height:1.6;}
.soft-page :is(button,input,select,textarea) {font:inherit;}
.soft-page :is(h2,legend) {font-weight:500;line-height:1.3;letter-spacing:-.025em;}
.soft-price {color:var(--soft-primary);font-weight:500;}
.soft-panel {padding:clamp(20px,4vw,28px);border:1px solid #e3e8e1;border-radius:22px;background:var(--soft-surface);box-shadow:0 5px 22px #34554805;}
.soft-card {padding:20px;border:1px solid var(--soft-border);border-radius:18px;background:var(--soft-surface);transition:transform .26s var(--soft-ease),box-shadow .26s var(--soft-ease),border-color .24s ease;}
.soft-card.is-selected {border-color:var(--soft-primary);background:var(--soft-control);transform:translateY(-3px) scale(1.01);box-shadow:0 8px 22px #51716424;}
.soft-button {min-height:44px;padding:12px 18px;border:0;border-radius:14px;background:var(--soft-primary);color:white;cursor:pointer;box-shadow:0 4px 12px #34554812;transition:transform .26s var(--soft-ease),box-shadow .26s var(--soft-ease),background-color .24s ease;}
.soft-field {width:100%;min-height:54px;padding:15px 16px;border:1px solid #d5dfd7;border-radius:16px;background:var(--soft-control);color:var(--soft-ink);box-shadow:0 3px 12px #34554808;transition:border-color .24s ease,box-shadow .24s ease;}
.soft-field:focus-visible {outline:2px solid #829d90;outline-offset:2px;background:white;box-shadow:0 0 0 4px #51716412;}
.soft-button:focus-visible,.soft-card:focus-visible {outline:3px solid var(--soft-accent);outline-offset:3px;}
.soft-button:disabled {opacity:.55;cursor:default;transform:none;box-shadow:none;}
@media (hover:hover) and (pointer:fine) {
  .soft-button:not(:disabled):hover {transform:translateY(-2px) scale(1.025);box-shadow:0 8px 20px #34554822;}
  .soft-card:hover {transform:translateY(-2px) scale(1.012);border-color:#a8bdae;box-shadow:0 8px 22px #34554812;}
  .soft-card.is-selected:hover {transform:translateY(-4px) scale(1.015);}
}
.soft-button:not(:disabled):active {transform:scale(.985);}
@media (prefers-reduced-motion:reduce) {
  .soft-button,.soft-card,.soft-field {transition:none;}
  .soft-button:not(:disabled),.soft-card,.soft-card.is-selected,.soft-card.is-selected:hover {transform:none;}
}
