/* Schermata di avvio: colori del marchio, indipendenti dal tema UI. */
.app-launch { position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#14100d;color:#d9bc77;padding:env(safe-area-inset-top) max(22px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(22px,env(safe-area-inset-left));opacity:1;transition:opacity .32s ease; }
.app-starting { overflow:hidden; }
.app-starting>header,.app-starting>main,.app-starting>nav { visibility:hidden; }
.app-launch__art { width:min(88vw,430px);height:min(74svh,760px);object-fit:contain;animation:launch-brand 1.25s cubic-bezier(.22,.65,.35,1) both; }
.app-launch__fallback { font-family:Georgia,serif;text-align:center;font-size:clamp(24px,5vw,38px);line-height:1.5; }
.app-launch__footer { position:absolute;bottom:max(24px,calc(env(safe-area-inset-bottom) + 18px));left:18px;right:18px;text-align:center;font:400 11px/1.7 system-ui,sans-serif;letter-spacing:.04em;color:#b9ab94;animation:launch-brand 1s .5s both; }
.app-launch__footer p { margin:0; }
.app-launch__version { font-variant-numeric:tabular-nums; }
.app-launch__recovery { position:absolute;bottom:110px;left:20px;right:20px;text-align:center;font:14px/1.4 system-ui,sans-serif; }
.app-launch__recovery button { display:block;margin:12px auto 0;background:#2b231b;border:1px solid #b9ab94;border-radius:999px;padding:12px 24px;color:#f4dfb0;font:inherit;min-height:44px; }
.app-launch.is-leaving { opacity:0;pointer-events:none; }
@keyframes launch-brand { from { opacity:0;transform:translateY(8px) scale(.94); } to { opacity:1;transform:translateY(0) scale(1); } }
@media(prefers-reduced-motion:reduce) { .app-launch__art,.app-launch__footer { animation:none; } .app-launch { transition:none; } }
@media(max-height:500px) { .app-launch__art { height:72svh;width:min(48vw,320px); } .app-launch__footer { font-size:10px;bottom:max(12px,env(safe-area-inset-bottom)); } }
