@font-face{font-family:Alexandria;src:url('/assets/assets/fonts/Alexandria-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Readex;src:url('/assets/assets/fonts/ReadexPro-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root{color-scheme:light;--coral:#ce351c;--ink:#171916;--paper:#fffaf6}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--paper);font-family:Readex,Tahoma,sans-serif}
#diz-boot{position:fixed;inset:0;z-index:8;overflow:hidden;background:#ee4b31;transition:opacity .24s ease}
#diz-boot.ready{opacity:0;pointer-events:none}
.boot-backdrop{position:absolute;inset:0;background:url('/assets/assets/diz-welcome-poster.png') top center/cover;filter:blur(40px);transform:scale(3);transform-origin:top center}
.boot-poster{position:absolute;width:100%;height:100%;object-fit:contain}
.boot-card{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom));left:24px;right:24px;text-align:center;max-width:520px;margin:auto}
.boot-progress{overflow:hidden;width:72px;height:3px;margin:0 auto;background:#ffffff44;border-radius:9px}
.boot-progress span{display:block;width:40%;height:100%;background:white;border-radius:9px;animation:loading 1.6s ease-in-out infinite}
.boot-card .boot-caption{font-size:13px;color:white;line-height:1.8}
.boot-card .boot-caption:empty{display:none}
.boot-card button{min-height:48px;padding:0 24px;border:0;border-radius:99px;background:var(--ink);color:white;font:500 14px Readex,Tahoma,sans-serif;cursor:pointer}
#install-diz{position:fixed;z-index:6;left:18px;bottom:calc(96px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:7px;min-height:44px;padding:0 15px;border:1px solid #e6ded7;border-radius:99px;background:#fffdf9;color:#171916;font:500 12px Readex,Tahoma,sans-serif;box-shadow:0 5px 25px #17191612;cursor:pointer}
#install-diz[hidden]{display:none}
#install-diz:hover{background:#fff1e9}
#install-diz:focus-visible,dialog button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
dialog{border:1px solid #eee2d9;border-radius:26px;padding:28px;max-width:min(420px,calc(100vw - 64px));font-family:Readex,Tahoma,sans-serif;color:var(--ink);box-shadow:0 25px 100px #17191622}
dialog::backdrop{background:#17191677;backdrop-filter:blur(5px)}
dialog h2{font-family:Alexandria,Tahoma,sans-serif;font-size:21px;line-height:1.6;margin:0 0 10px}
dialog p{font-size:15px;color:#5a5a52;line-height:1.9}
dialog button{width:100%;min-height:48px;border:0;border-radius:99px;background:var(--ink);color:white;font:500 14px Readex,Tahoma,sans-serif;cursor:pointer}
@keyframes arrive{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
@keyframes loading{0%,100%{transform:translateX(-120%)}50%{transform:translateX(250%)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.boot-progress span{width:65%}}

#update-diz{position:fixed;top:max(12px,env(safe-area-inset-top));left:12px;z-index:30;border:1px solid #e4d8cc;border-radius:16px;padding:12px 18px;background:#171916;color:white;font:500 12px Readex,sans-serif;box-shadow:0 8px 28px #17191620;cursor:pointer}
#update-diz[hidden]{display:none}
