.sec-loading { display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;min-height:220px;padding:24px;color:#4b514e;font:inherit;font-size:16px; }
.sec-loading__spinner { display:inline-block;width:38px;height:38px;box-sizing:border-box;flex:none;border:3px solid #e9dfcf;border-top-color:var(--sec-loading-accent,#a85112);border-radius:50%;animation:sec-loading-turn .85s linear infinite; }
.sec-loading--compact { flex-direction:row;gap:9px;min-height:0;padding:8px 0;font-size:14px; }
.sec-loading--compact .sec-loading__spinner { width:20px;height:20px;border-width:2.5px; }
.sec-loading[hidden], .sec-loading-error[hidden] { display:none!important; }
.sec-loading--deferred { visibility:hidden;animation:sec-loading-reveal 0s 200ms forwards; }
@keyframes sec-loading-reveal { to { visibility:visible; } }
.sec-loading-error { display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;color:#9a4216;flex-wrap:wrap; }
.sec-loading-error button { font:inherit;min-height:42px;padding:7px 15px;border:1px solid #d8c6ae;border-radius:7px;background:#fffaf2;color:#793c17;cursor:pointer; }
@keyframes sec-loading-turn { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .sec-loading__spinner { animation:none;border-right-color:var(--sec-loading-accent,#a85112); } }

.sec-app-loading-host { width: min(100%, 1200px); box-sizing: border-box; margin-inline: auto; padding-inline: 16px; }
.sec-app-loading-host:has(.sec-loading:not([hidden])) { padding-block: 12px; }
[data-sec-loading-pending="true"] { pointer-events: none; cursor: progress; }
