/* Present before the React bundle; deliberately isolated from application styles. */
html:not(.tradesbook-startup-finished), html:not(.tradesbook-startup-finished) body { background: #ff5900 !important; }
#tradesbook-region-gate { min-height: 100dvh; padding: max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left)); }
#tradesbook-region-gate .tb-startup-content { width: min(100%, 440px); display: flex; align-items: center; flex-direction: column; }
/* Display the supplied brand artwork without its static spinner. */
#tradesbook-region-gate .tb-startup-brand { width: 100%; aspect-ratio: 941 / 470; background: url('./startup-brand.png') center 42.76% / 100% auto no-repeat; }
#tradesbook-region-gate .tb-startup-spinner { width: clamp(42px, 13vw, 60px); height: clamp(42px, 13vw, 60px); box-sizing: border-box; border: 6px solid rgba(255,255,255,.7); border-top-color: #ffc400; border-right-color: #ffc400; border-radius: 50%; margin-top: clamp(20px, 5vw, 32px); animation: tb-startup-spin .9s linear infinite; }
#tradesbook-region-gate .tb-startup-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@keyframes tb-startup-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { #tradesbook-region-gate .tb-startup-spinner { animation: none; } }
@media (max-height: 450px) { #tradesbook-region-gate .tb-startup-content { width: min(55vw, 300px); } #tradesbook-region-gate .tb-startup-spinner { width:32px; height:32px; margin-top:12px; border-width:4px; } }
#tradesbook-region-gate .tb-startup-brand { mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent); }
