/* One motion language for saves, publication, uploads and inquiries. */
.action-button{position:relative!important;isolation:isolate}
.action-button .action-original{display:inline-flex;align-items:center;justify-content:center;gap:10px;opacity:0;pointer-events:none}
.action-button .action-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:9px;padding:7px;pointer-events:none;line-height:1.35;z-index:2}
.action-button[data-action-state]{opacity:1!important}
.action-button[data-action-state=loading]{cursor:wait}
.action-button[data-action-state=success],.admin-body .action-button[data-action-state=success]:hover{background:#e6e6e6!important;border-color:#b3b3b3!important;color:#444444!important}
.action-button[data-action-state]:before{display:none}
.action-symbol{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:none;border-radius:50%;color:#cbcbcb;background:#cbcbcb12}
.action-symbol .action-mark{width:22px;height:22px}
.action-symbol .action-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.action-overlay .action-symbol{width:21px;height:21px;border:0;background:none;color:inherit}
.action-overlay .action-symbol .action-mark{width:15px;height:15px}
.action-spinner{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:action-spin 750ms linear infinite}
/* Normalized SVG lengths draw the actual outlines, then the symbol inside. */
.action-ring circle,.action-stroke{stroke-dasharray:1;stroke-dashoffset:0}
.action-ring circle{animation:action-draw 750ms 120ms cubic-bezier(.4,0,.2,1) both}
.action-stroke{animation:action-draw 900ms 450ms cubic-bezier(.45,0,.25,1) both}
[data-symbol=error] .action-stroke{animation-duration:500ms;animation-delay:350ms}
[data-symbol=error] .action-stroke-second{animation-delay:750ms}
.action-info-dot{transform-box:fill-box;transform-origin:center;animation:action-dot 350ms 950ms cubic-bezier(.22,.61,.36,1) both}
#toast.action-notice{position:fixed;inset:auto 24px 24px auto;transform:none;translate:none;width:430px;max-width:calc(100% - 32px);margin:0;z-index:1100;box-shadow:0 12px 40px #19191929}
.action-notice,#toast.action-notice{display:flex;align-items:center;gap:15px;padding:20px;background:#242424;color:#f4f4ed;border:1px solid #5b5b5b;border-radius:8px;text-align:left;font-size:.84rem;line-height:1.6}
.action-notice[hidden]{display:none!important}
.action-notice-copy{display:grid;gap:3px;min-width:0;flex:1;overflow-wrap:anywhere}
.action-notice-copy strong{font-size:.94rem;font-weight:600;color:inherit}
.action-notice-copy>span{color:#d9d9d9}
.action-notice[data-feedback=error]{background:#fbf0eb;border-color:#d2aaa1;color:#793c31}
.action-notice[data-feedback=error] .action-symbol{color:#934535;background:#93453508}
.action-notice[data-feedback=error] .action-notice-copy>span{color:#793c31}
.action-notice[data-feedback=info] .action-symbol{color:#e4cea0;background:#e4cea010}
.action-notice .action-dismiss{display:inline-flex;align-items:center;justify-content:center;width:32px;height:36px;min-height:36px;flex:none;padding:0;margin:0;border:0;background:transparent;color:inherit;font-size:24px;cursor:pointer;border-radius:4px}
.action-notice .action-dismiss:hover{background:#ffffff15!important;color:inherit!important}
.action-notice .action-dismiss:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.energy-status.action-notice,.inquiry-status.action-notice{margin-top:16px}
/* A persistent, prominent receipt for public forms; other action notices retain their layout. */
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success]{align-items:flex-start;gap:22px;width:100%;padding:28px;border:1px solid #9b8050;border-left:3px solid #d4b574;border-radius:6px;background:#242424;color:#fafaf7;font-size:1rem;line-height:1.65}
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-symbol{width:64px;height:64px;color:#eeddac;background:#d4b57412}
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-mark{width:34px;height:34px}
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-notice-copy{gap:8px;padding-top:2px}
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-notice-copy strong{font-size:1.25rem;line-height:1.35;font-weight:600;letter-spacing:-.025em}
:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-notice-copy>span{color:#deded7}
:is(.inquiry-form,.energy-form) .action-button[data-action-state=success]{background:#eeddac!important;border-color:#836529!important;color:#242424!important}
:is(.inquiry-form,.energy-form) .action-overlay .action-symbol{width:28px;height:28px}
:is(.inquiry-form,.energy-form) .action-overlay .action-mark{width:19px;height:19px}
@media(max-width:599px){:is(.inquiry-status,.energy-status).action-notice[data-feedback=success]{flex-direction:column;gap:16px;padding:22px 20px}:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-symbol{width:56px;height:56px}:is(.inquiry-status,.energy-status).action-notice[data-feedback=success] .action-notice-copy strong{font-size:1.15rem}}
@keyframes action-spin{to{transform:rotate(360deg)}}
@keyframes action-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes action-dot{from{transform:scale(0)}to{transform:scale(1)}}
@media(max-width:599px){#toast.action-notice{inset:auto 16px max(16px,env(safe-area-inset-bottom)) 16px;width:auto;padding:16px;gap:12px}.action-notice{padding:16px;gap:12px}.action-notice .action-symbol{width:32px;height:32px}.action-notice-copy strong{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.action-symbol,.action-symbol *,.action-spinner,.action-button{animation:none!important;transition:none!important}}
