.page-error{text-align:center;background:linear-gradient(#1a1145 0%,#2d1b69 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:40px 24px;display:flex}.page-error .error-character{width:160px;height:160px;margin-bottom:32px;position:relative}.page-error .error-character:before{content:"";background:radial-gradient(#00000040 0%,#0000 70%);border-radius:50%;width:100px;height:20px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.page-error .error-character img{animation:2s ease-in-out infinite errorBounce;position:relative}.page-error .error-message{margin-bottom:8px}.page-error .error-message .title{color:#fff;margin-bottom:12px;font-size:20px;font-weight:700;line-height:1.4}.page-error .error-message .description{color:#fff9;font-size:14px;line-height:1.5}.page-error .bottom-buttons{padding:16px 24px;padding-bottom:calc(16px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.page-error .bottom-buttons .btn-retry{color:#fff;cursor:pointer;background:#6c5ce7;border:none;border-radius:12px;width:100%;max-width:406px;height:52px;font-size:16px;font-weight:700;transition:background .2s}.page-error .bottom-buttons .btn-retry:active{background:#5a4bd1}.page-error .bottom-buttons .btn-home{color:#ffffffb3;cursor:pointer;background:0 0;border:1.5px solid #fff3;border-radius:12px;width:100%;max-width:406px;height:52px;font-size:16px;font-weight:600;transition:background .2s}.page-error .bottom-buttons .btn-home:active{background:#ffffff0d}@keyframes errorBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
