:root{--glass:rgba(255,255,255,.12);--brd:rgba(255,255,255,.28)}
*{box-sizing:border-box}html,body{height:100%;margin:0}
body{font-family:Inter,Segoe UI,Calibri,Arial,sans-serif;background:#070a0e;color:#fff;overflow:auto;}
.bg{position:fixed;inset:0;background:#0b0f15;z-index:0}
#snow{position:fixed;inset:0;z-index:1;pointer-events:none}
.shell{position:relative;z-index:2;display:grid;place-items:center;height:calc(100% - 66px)}
.title{margin:0 0 8px;font-size:56px;background:linear-gradient(90deg,#9efcff,#fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-align:center}
.tag{text-align:center;opacity:.9}
.buttons{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.btn{appearance:none;border:1px solid var(--brd);background:var(--glass);backdrop-filter:blur(14px);border-radius:14px;color:#fff;padding:12px 18px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .18s,background .18s,box-shadow .18s}
.btn:hover{transform:translateY(-1px) scale(1.015);background:rgba(255,255,255,.2);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.btn.xl{padding:14px 22px;border-radius:16px;font-size:18px}
.dlg{position:fixed;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);z-index:5}
.hidden{display:none}
.card{background:var(--glass);border:1px solid var(--brd);border-radius:18px;padding:20px 24px;min-width:min(420px,92%);box-shadow:0 12px 32px rgba(0,0,0,.35);text-align:center;animation:pop .18s ease}
.row{display:flex;gap:10px;justify-content:center;margin-top:12px;flex-wrap:wrap}
@keyframes pop{from{transform:scale(.98);opacity:.7}to{transform:scale(1);opacity:1}}

/* ФИКС 4: Мобильная версия для кнопок */
@media (max-width: 768px){
    .buttons {
        gap: 10px;
        padding: 0 10px;
    }
    
    .btn {
        flex: 1;
        min-width: 140px;
        max-width: 200px;
        text-align: center;
        padding: 14px 16px;
    }
    
    .btn.xl {
        padding: 16px 20px;
        font-size: 16px;
        min-width: 160px;
    }
    
    .title {
        font-size: 42px;
        padding: 0 20px;
    }
    
    .shell {
        height: calc(100% - 80px);
        padding: 0 10px;
    }
}

/* Для очень маленьких экранов */
@media (max-width: 480px){
    .buttons {
        gap: 8px;
    }
    
    .btn {
        min-width: 120px;
        padding: 12px 14px;
        font-size: 14px;
    }
    
    .btn.xl {
        min-width: 140px;
        padding: 14px 18px;
        font-size: 15px;
    }
    
    .title {
        font-size: 36px;
    }
    
    .card {
        padding: 16px 20px;
        margin: 0 10px;
    }
}

/* Для ландшафтной ориентации */
@media (max-width: 768px) and (orientation: landscape) {
    .shell {
        height: calc(100% - 70px);
    }
    
    .title {
        font-size: 32px;
        margin: 0 0 4px;
    }
    
    .buttons {
        margin-top: 16px;
        gap: 8px;
    }
    
    .btn {
        padding: 10px 12px;
        font-size: 13px;
    }
}