/* Bounded local control correction; individual template identity remains intact. */
[data-template]{--button-radius:12px;--button-bg:#cc192e;--button-ink:#fff;--button-edge:#a51123;--button-shadow:#59111a25}
[data-template=roofstead]{--button-radius:16px;--button-bg:#bf3907;--button-ink:#fff;--button-edge:#9b3109;--button-shadow:#713a2020}
[data-template=proofline]{--button-radius:16px;--button-bg:#ff865f;--button-ink:#28170f;--button-edge:#d36a45;--button-shadow:#6c382525}
[data-template=skyline]{--button-radius:14px;--button-bg:#f5f4ed;--button-ink:#162723;--button-edge:#cdd8cf;--button-shadow:#122e2925}
[data-template=ridgeform]{--button-radius:12px;--button-bg:#fbd33d;--button-ink:#17222a;--button-edge:#d9b52d;--button-shadow:#6b5b2025}
body[data-template] :is(.button,.pill,.outline-action){position:relative;isolation:isolate;border-radius:var(--button-radius)!important;background:var(--button-bg)!important;color:var(--button-ink)!important;border:1px solid var(--button-edge)!important;box-shadow:inset 0 1px #ffffff60,0 2px 0 var(--button-edge),0 6px 12px var(--button-shadow)!important;min-height:52px!important;min-width:0!important;max-width:100%;height:auto;line-height:1.5;font-size:14px!important;padding:15px 20px!important;gap:20px!important;white-space:normal;overflow:visible;clip-path:none;filter:none;text-align:left;overflow-wrap:anywhere;transform:none}
body[data-template] :is(.button,.pill,.outline-action):before,body[data-template] :is(.button,.pill,.outline-action):after{display:none!important}
body[data-template] :is(.button,.pill,.outline-action):hover{filter:brightness(1.06);transform:translateY(-1px);transition:transform .18s,filter .18s}
body[data-template] :is(.button,.pill,.outline-action):active{transform:translateY(1px);box-shadow:inset 0 1px #ffffff40,0 1px 0 var(--button-edge)!important}
body[data-template] :is(.button,.pill,.outline-action):disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none!important;filter:none}
body[data-template] :is(.button,.pill,.outline-action)>span{flex-shrink:0}
body[data-template] .pill .circle{border-radius:var(--button-radius);width:30px;height:30px;min-width:30px;transform:none}
body[data-template] :is(.button.light,.pill.dark,.outline-action,.button.nav-cta){background:transparent!important;color:inherit!important;border:1px solid currentColor!important;box-shadow:inset 0 1px #ffffff30,0 4px 10px var(--button-shadow)!important}
body[data-template=skyline] .pill.dark{background:#203a32!important;color:#fff!important;border-color:#476057!important}
body[data-template] :is(.menu,.menu-toggle,.close,.dialog-close,.back-button,.form-back,.guide-open,.guide-launch,.motion-switch,.guide-choices button,.guide-options button,.guide-options a){border-radius:var(--button-radius)!important;clip-path:none;min-height:44px;height:auto;max-width:100%;line-height:1.5;white-space:normal;overflow:visible;padding:12px 16px;box-sizing:border-box}
body[data-template] :is(.menu,.menu-toggle,.close,.dialog-close){min-width:44px;padding:10px 12px}
body[data-template] :is(.form-buttons,.form-actions,.form-controls){display:flex;flex-wrap:wrap;gap:18px;padding-bottom:8px}
body[data-template] :is(a,button,input,textarea):focus-visible{outline:3px solid #167bb7;outline-offset:5px;z-index:5}
.button-tools{position:fixed;z-index:30;left:16px;right:16px;bottom:16px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;pointer-events:none}
body[data-template] .button-tools>button{position:static;max-width:calc(50% - 8px);min-width:0;pointer-events:auto;flex-wrap:wrap;overflow-wrap:anywhere}
body[data-template] .button-tools :is(.guide-open,.guide-launch){margin-left:auto}
body[data-template] .button-tools .motion-switch{font-size:12px;padding:10px 12px}
body[data-template] footer{padding-bottom:125px}
@media(max-width:700px){body[data-template] :is(.button,.pill,.outline-action){padding:14px 18px!important;gap:15px!important}.button-tools{left:10px;right:10px;bottom:12px;gap:12px}body[data-template] :is(.form-buttons,.form-actions,.form-controls){align-items:stretch}body[data-template] .guide-open{font-size:12px}body[data-template] .button-tools :is(.guide-open,.guide-launch){padding:10px 12px}}
@media(prefers-reduced-motion:reduce){body[data-template] :is(.button,.pill,.outline-action){transform:none!important;transition:none!important}}
