/* Primary action family, sampled from the founder-approved reference.
   Local component sizing remains responsive; print documents are untouched. */
:root{
 --rp-cta-fill:#31452d;
 --rp-cta-hover:#263d22;
 --rp-cta-text:#faf8f2;
 --rp-cta-outline:#faf8f2;
 --rp-cta-blush:#e2adb5;
 --rp-cta-outline-width:4px;
 --rp-cta-radius:13px;
 --rp-cta-height:58px;
 --rp-cta-shadow:0 0 0 5px #e2adb536,0 7px 18px #e2adb54d;
}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear){
 background:var(--rp-cta-fill)!important;
 color:var(--rp-cta-text)!important;
 -webkit-text-fill-color:var(--rp-cta-text)!important;
 border:var(--rp-cta-outline-width) solid var(--rp-cta-outline)!important;
 border-radius:var(--rp-cta-radius)!important;
 box-shadow:var(--rp-cta-shadow)!important;
 min-height:var(--rp-cta-height);
 transition:background 160ms ease,box-shadow 160ms ease,transform 160ms ease;
}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear):hover{
 background:var(--rp-cta-hover)!important;
 box-shadow:0 0 0 5px #e2adb54d,0 8px 22px #e2adb566!important;
}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear):active{transform:translateY(1px)}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear):focus-visible{outline:3px solid #9b5a3e;outline-offset:4px}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear):is(:disabled,[aria-disabled="true"]){
 background:#869080!important;
 box-shadow:none!important;
 transform:none;
 cursor:default;
}
/* Dense navigation and editing toolbars keep their established touch target. */
body :is(.site-header,.app-header,.studio-top,.catalogue-header,#studio-field-heading) :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear){
 --rp-cta-outline-width:3px;
 --rp-cta-radius:11px;
 --rp-cta-height:44px;
 --rp-cta-shadow:0 0 0 3px #e2adb52e,0 4px 10px #e2adb533;
}
@media(prefers-reduced-motion:reduce){
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear){transition:none;transform:none}
}
@media print{
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear){box-shadow:none!important}
}

/* Phone controls retain the approved colours with less border/shadow bulk. */
@media(max-width:700px){
 :root{--rp-cta-outline-width:3px;--rp-cta-radius:12px;--rp-cta-height:52px;--rp-cta-shadow:0 0 0 3px #e2adb52e,0 4px 12px #e2adb53d}
body :is(.button:not(.white):not(.outline):not(.secondary):not(.danger):not(.destructive),
 .primary:not(.danger):not(.destructive),
 .primary-button,
 .small-primary,
 .studio-primary,
 .app-primary,
 .money-primary,
 .v-primary,
 .catalogue-primary,
 .catalogue-pick,
 .continue-button,
 .add-entry,
 .floating-create,
 .header-cta,
 #collection-use,
 #studio-done-edit,
 .checkout-total [data-checkout-next]):not(#confirm-clear){min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.35}
 #collection-use{--rp-cta-height:48px}
}
