.skeleton-card{border-radius:var(--radius-xl);width:calc(20% - 8px);height:320px;box-shadow:var(--shadow-sm);background:linear-gradient(90deg,#f0f0f0e6,#fafafae6 50%,#f0f0f0e6) 0 0/200% 100%;margin-bottom:10px;animation:1.5s ease-in-out infinite skeleton-loading;position:relative;overflow:hidden}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card:before{content:"";border-radius:var(--radius-xl) 16px 0 0;background:linear-gradient(135deg,#dcdcdc4d,#e6e6e64d);height:180px;position:absolute;top:0;left:0;right:0}.skeleton-card:after{content:"";border-radius:var(--radius-md);background:linear-gradient(#e6e6e699,#f0f0f066);height:80px;position:absolute;bottom:20px;left:15px;right:15px}.content-grid{flex-wrap:wrap;align-content:flex-start;gap:10px;min-height:360px;display:flex}.news-grid{gap:0;min-height:auto}.game-card,.news-grid{flex-direction:column;display:flex}.game-card{-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base);background:#ffffffe6;border:1px solid #ffffff4d;width:calc(20% - 8px);margin-bottom:10px;position:relative;overflow:hidden}.game-card:before{content:"";pointer-events:none;opacity:0;transition:opacity var(--transition-base) ease;border-radius:inherit;background:linear-gradient(135deg,#ffffff1a,#0000 50%,#ffffff0d);position:absolute;inset:0}.game-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.game-card:hover:before{opacity:1}.game-card .game-img{background-color:var(--color-bg-lighter);width:100%;padding-top:56.25%;position:relative;overflow:hidden}.game-card .game-img img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%;top:50%;left:50%;transform:translate(-50%,-50%)}.game-card .game-img img,.game-score{transition:all var(--transition-base) ease;position:absolute}.game-score{border-radius:var(--radius-2xl);color:#fff;text-shadow:0 1px 2px #0000004d;-webkit-backdrop-filter:blur(8px);border:1px solid #fff3;padding:6px 10px;font-size:11px;font-weight:600;top:12px;right:12px;box-shadow:0 2px 8px #0003}.game-score:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.game-score.score-high{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 2px 8px #28a74566}.game-score.score-medium{color:var(--color-text-primary);text-shadow:0 1px 2px #0000001a;background:linear-gradient(135deg,#ffc107,#fd7e14);box-shadow:0 2px 8px #ffc10766}.game-score.score-average{background:linear-gradient(135deg,#fd7e14,#e74c3c);box-shadow:0 2px 8px #fd7e1466}.game-score.score-low{background:linear-gradient(135deg,#dc3545,#c82333);box-shadow:0 2px 8px #dc354566}.game-card-info{padding:var(--space-md);flex-direction:column;flex-grow:1;display:flex}.game-card-info h3{color:var(--color-text-primary);-webkit-line-clamp:2;text-overflow:ellipsis;word-break:break-word;overflow-wrap:anywhere;word-wrap:break-word;-webkit-hyphens:none;hyphens:none;-webkit-box-orient:vertical;margin:0 0 8px;font-size:14px;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.game-card-info .game-tags{color:var(--color-text-secondary);margin:0 0 6px;font-size:12px;line-height:1.2}.game-card-info .game-release-date{color:var(--color-text-tertiary);margin:auto 0 0;font-size:11px}.game-card .game-title,.game-info .game-title,.game-info h3.game-title,h3.game-title{padding:var(--space-sm)!important;color:var(--color-text-primary)!important;-webkit-line-clamp:3!important;text-overflow:ellipsis!important;word-break:break-word!important;overflow-wrap:anywhere!important;word-wrap:break-word!important;-webkit-hyphens:none!important;hyphens:none!important;-webkit-box-orient:vertical!important;min-height:54px!important;font-size:14px!important;font-weight:700!important;line-height:1.4!important;display:-webkit-box!important;overflow:hidden!important}.game-card .game-desc{color:#777}.game-card .game-date,.game-card .game-desc{padding:0 8px 8px;font-size:12px;line-height:1.4}.game-card .game-date{color:var(--color-text-tertiary)}.game-meta{color:#777;justify-content:space-between;padding:0 8px 8px;font-size:12px}.game-meta,.game-meta .game-author,.game-meta .game-created-at{align-items:center;display:flex}.game-meta i{margin-right:4px}.news-card{width:100%;padding:var(--space-md) 0;border-bottom:1px solid var(--color-border);box-shadow:none;cursor:pointer;background-color:#fff;border-radius:0;flex-direction:row;align-items:flex-start;margin-bottom:0;transition:background-color .2s;display:flex}.news-card:last-child{border-bottom:none}.news-card:hover{background-color:var(--color-bg-light);transform:none}.news-card .game-img{border-radius:var(--radius-sm);background-color:var(--color-bg-lighter);background-position:50%;background-repeat:no-repeat;background-size:cover;flex:0 0 120px;height:80px;margin-right:15px;padding-top:0;position:relative;overflow:hidden}.news-card .game-img.no-image{background-color:var(--color-bg-lighter);justify-content:center;align-items:center;display:flex;background-image:none!important}.news-card .game-img.no-image:after{content:"📰";color:#ccc;font-size:24px}.news-card .game-img img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%;display:block}.news-card .news-content-wrapper{flex-direction:column;flex:1;justify-content:center;min-height:80px;display:flex}.news-card .game-title{color:var(--color-text-primary);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-height:auto;margin-bottom:4px;padding:0;font-size:17px;font-weight:500;line-height:1.4}.news-card .game-desc{color:#555;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;padding:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.news-card .news-meta{color:var(--color-text-tertiary);justify-content:space-between;margin-top:auto;font-size:12px}.news-author,.news-author-date,.news-card .news-meta,.news-date{align-items:center;display:flex}.news-author i,.news-author-date i,.news-date i{margin-left:8px;margin-right:4px}.lottery-card{border-radius:var(--radius-md);background-color:#f8f9fa;border:1px solid #e9ecef;flex-direction:column;justify-content:space-between;width:calc(25% - 7.5px);min-height:150px;margin-bottom:10px;padding:15px;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000000d}.lottery-card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #0000001a}.lottery-card-content{flex-direction:column;height:100%;display:flex}.lottery-title{color:#36c;margin-bottom:10px;font-size:16px;font-weight:700;line-height:1.3}.lottery-prize{color:#495057;flex-grow:1;margin-bottom:15px;font-size:14px}.lottery-meta{color:#6c757d;justify-content:space-between;margin-top:auto;font-size:12px}.lottery-meta,.lottery-meta span{align-items:center;display:flex}.lottery-meta i{margin-right:5px}.score-circle{border-radius:var(--radius-full);background-color:#000;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;bottom:10px;right:10px;box-shadow:0 1px 3px #0000004d}.score-circle svg{width:100%;height:100%;transform:rotate(-90deg)}.score-circle-bg{fill:none;stroke:#ffffff4d;stroke-width:1.5px;stroke-dasharray:2 3}.score-circle-fill{fill:none;stroke-width:3px;stroke-linecap:round}.score-text{color:#fff;font-size:14px;font-weight:700;line-height:1;position:absolute}.btn{padding:var(--space-md) 20px;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base) cubic-bezier(.4,0,.2,1);border:none;font-size:14px;font-weight:500;text-decoration:none;display:inline-block;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.btn:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn:hover:before{left:100%}.btn-primary{color:#fff;background:linear-gradient(135deg,#ff6b35,#e8425a);box-shadow:0 4px 15px #ff6b354d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff6b3566}.btn-secondary{color:#fff;background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 4px 15px #6c757d4d}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6c757d66}.form-group{margin-bottom:15px}.form-label{color:var(--color-text-primary);margin-bottom:5px;font-weight:700;display:block}.form-control{width:100%;padding:var(--space-sm) 12px;border-radius:var(--radius-sm);border:1px solid #ddd;font-size:14px;transition:border-color .3s}.form-control:focus{border-color:#36c;outline:none;box-shadow:0 0 0 2px #36c3}.modal{z-index:1050;background-color:#0006;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal.is-open,.modal.show{display:flex}.modal-content{padding:var(--space-xl);border-radius:var(--radius-md);background-color:#fefefe;border:1px solid #888;width:80%;max-width:500px;margin:auto;position:relative}.modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;display:flex}.modal-title{color:var(--color-text-primary);margin:0;font-size:18px}.close-button,.modal-close{cursor:pointer;color:#aaa;float:right;background:0 0;border:none;font-size:24px;font-weight:700;position:absolute;top:10px;right:20px}.close-button:focus,.close-button:hover,.modal-close:hover{color:var(--color-text-primary)}.auth-modal{z-index:1050;background-color:#0009;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.auth-modal .modal-content{padding:var(--space-3xl) 40px;border-radius:var(--radius-md);background-color:#fff;width:100%;max-width:400px;max-height:calc(100vh - 32px);position:relative;overflow-y:auto;box-shadow:0 5px 15px #0000004d}.modal-content h2{text-align:center;color:var(--color-text-primary);margin-top:0;margin-bottom:25px;font-size:24px}.modal-content .form-group{margin-bottom:20px}.modal-content .form-group label{color:#555;margin-bottom:8px;font-weight:700;display:block}.modal-content .form-group input{width:100%;padding:var(--space-md);border-radius:var(--radius-sm);box-sizing:border-box;border:1px solid #ddd;font-size:16px}.modal-content .auth-hint{color:var(--color-text-secondary);margin-top:6px;font-size:12px;line-height:1.4;display:block}.modal-content .form-actions{text-align:center;justify-content:space-between;gap:15px;margin-top:25px;display:flex}.modal-content .form-actions button{padding:var(--space-md);border-radius:var(--radius-sm);cursor:pointer;border:none;flex:1;font-size:16px;transition:background-color .3s}.modal-content .form-actions button:disabled{opacity:.7}.modal-content .form-actions button[type=submit]{color:#fff;background-color:#36c}.modal-content .form-actions button[type=submit]:hover{background-color:#2654a3}.modal-content .form-actions button[type=button]{color:#fff;background-color:#6c757d}.modal-content .form-actions button[type=button]:hover{background-color:#5a6268}.modal-content p{text-align:center;color:var(--color-text-secondary);margin-top:20px}.modal-content p a{color:#36c;text-decoration:none}.modal-content p a:hover{text-decoration:underline}.forgot-step{transition:opacity var(--transition-base) ease}.countdown-text{color:var(--color-text-secondary);margin-top:5px;font-size:12px;display:block}.message{border-radius:var(--radius-sm);text-align:center;margin-bottom:15px;padding:10px;font-size:14px}.message.success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.message.error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.modal-content .form-actions button:disabled{cursor:not-allowed;opacity:.6;background-color:#ccc}.modal-content .form-actions button:disabled:hover{background-color:#ccc}.nav-item.dropdown{position:relative}.dropdown-toggle{cursor:pointer;display:block}.dropdown-menu{-webkit-backdrop-filter:blur(20px);z-index:1001;opacity:0;background:#fffffffa;border:1px solid #ff6b351a;border-radius:12px;min-width:180px;padding:8px 0;transition:all .3s cubic-bezier(.25,.8,.25,1);display:none;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-10px);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014}.nav-item.dropdown.open .dropdown-menu{opacity:1;display:block;transform:translateY(0)}.user-dropdown.open .dropdown-menu{visibility:visible!important;opacity:1!important;z-index:9999!important;display:block!important;transform:translateY(0)!important}.user-dropdown .dropdown-menu{min-width:160px;left:auto;right:0}.dropdown-item{color:var(--color-text-primary);white-space:nowrap;padding:12px 20px;transition:all .25s cubic-bezier(.25,.8,.25,1);display:block;position:relative;overflow:hidden}.dropdown-item:before{content:"";z-index:1;background:linear-gradient(135deg,#ff6b35,#e8425a);width:3px;height:100%;transition:transform .25s;position:absolute;top:0;left:0;transform:scaleY(0)}.dropdown-item:hover:before{transform:scaleY(1)}.dropdown-item:hover{color:#ff6b35;background:linear-gradient(90deg,#ff6b3514,#0000);padding-left:24px}.unread-indicator:after{content:"";border-radius:var(--radius-full);background-color:red;border:2px solid #fff;width:8px;height:8px;position:absolute;top:8px;right:8px;box-shadow:0 0 0 1px #0000001a}
