/* Shared states, texture previews and admin surfaces. */
:root{--surface:#191b1d;--surface-raised:#202325;--muted:#a2aaa7;--accent:#a4edbb}
.ui-state{padding:40px 24px;max-width:520px;margin:auto;text-align:center;border:1px solid #ffffff12;border-radius:20px;background:var(--surface);color:#edf2ef}
.ui-state-icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 20px;border:1px solid #ffffff14;border-radius:16px;background:#ffffff05;color:var(--accent)}
.ui-state h3{font-size:21px;font-weight:750;line-height:1.3;margin-bottom:10px}.ui-state p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:22px}
.ui-state button,.ui-state-action{min-height:44px;padding:12px 20px;background:var(--accent);color:#14251b;font-weight:700;border-radius:11px}
.action-error-dialog{padding:30px;background:var(--surface);border-color:#ffffff18;border-radius:20px;width:460px}.action-error-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;border-radius:14px;background:#f2b7a910;color:#f2b7a9;font-size:24px;font-weight:600}.action-error-dialog p{font-size:14px;line-height:1.7;color:var(--muted)}.action-error-dialog>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.action-error-dialog>div:last-child button,.action-error-dialog>div:last-child a{margin:0}.action-error-dialog>div:last-child button:first-child{background:#ffffff08;color:#e6ece8;border:1px solid #ffffff16}
.home-page .skeleton-card{border-radius:18px;background:var(--surface);border:1px solid #ffffff12;overflow:hidden;display:flex;flex-direction:column}.skeleton-card>div:first-child{aspect-ratio:16/10!important;border-radius:0}.home-page .skeleton-card>div:last-child{min-height:230px;padding:22px}.skeleton-box{background:#ffffff06!important;animation:soft-pulse 1.6s ease-in-out infinite!important}.skeleton-card .skeleton-box.h-8{height:46px}.skeleton-card .skeleton-box.h-4{height:20px}.skeleton-card .skeleton-box.h-3{height:13px}@keyframes soft-pulse{50%{opacity:.4}}
.card-texture-peek{position:absolute;z-index:3;bottom:12px;left:12px;right:12px;padding:12px;background:#141719ed;border:1px solid #ffffff1c;border-radius:14px;backdrop-filter:blur(12px);opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s;pointer-events:none}.card-texture-peek.is-visible{opacity:1;transform:none}.card-texture-peek p{font-size:10px;letter-spacing:.08em;color:#b5c3bb;margin:0 0 9px}.card-texture-peek>div{display:flex;gap:10px}.card-texture-peek img{width:48px;height:48px;object-fit:contain;image-rendering:pixelated;padding:5px;background:#ffffff05;border-radius:9px}.card-texture-peek small{font-size:12px;color:#a2aaa7}.pack-thumb-img{transition:transform .3s ease!important}@media(hover:hover){.pack-card:hover .pack-thumb-img{transform:scale(1.035)}}
#modalTexturePreview .texture-preview-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}#modalTexturePreview .texture-preview-card{padding:14px;border-radius:16px;background:#1a1d1f;border:1px solid #ffffff0d;transition:background .15s,border-color .15s}#modalTexturePreview .texture-preview-card img{height:136px;background-image:none;background-color:#131617;border-radius:10px}#modalTexturePreview .texture-preview-card strong{font-size:13px;line-height:1.5;margin-top:14px}#modalTexturePreview .texture-preview-card span{font-size:10px;color:#8e9b94}#modalTexturePreview .texture-preview-card:hover,#modalTexturePreview .texture-preview-card:focus-visible{border-color:#a4edbb80;background:#222728}#modalTexturePreview .texture-preview-status{min-height:18px;color:#a3afa8}#modalTexturePreview .texture-preview-loading{height:206px;background:#1a1d1f;border:1px solid #ffffff0d;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:14px}.texture-preview-loading>div:first-child{height:136px;border-radius:10px}.texture-preview-loading>div:last-child{height:13px;width:70%;border-radius:4px}#modalTexturePreview .ui-state{grid-column:1/-1;width:100%;max-width:none;padding:28px}#modalTexturePreview .ui-state h3{font-size:18px}
body.admin-page{background:#101214!important}body.admin-page header{background:#141618f5!important}.admin-page .shadcn-card,.admin-page .traffic-dashboard{background:var(--surface)!important;border-color:#ffffff12!important;border-radius:18px!important}.admin-page .traffic-dashboard{padding:28px}.admin-page .traffic-heading h2{font-size:24px;letter-spacing:-.5px}.admin-page .traffic-heading p{line-height:1.6;color:var(--muted)}.admin-page .traffic-kpi{background:#212426;border-color:#ffffff0b;padding:20px;border-radius:14px}.admin-page .traffic-kpi strong{font-size:34px}.admin-page .traffic-kpi small{color:#99a69f}.admin-page .traffic-chart{background:#141719;border-color:#ffffff0d;border-radius:14px;padding:20px 16px 14px}.admin-page .traffic-chart h3{font-size:14px;font-weight:650}.admin-page .traffic-axis{fill:#9faea5}.admin-page .traffic-tooltip,.admin-page .traffic-footer{color:#a0aea5;font-size:11px;line-height:1.6}.admin-page .traffic-period{background:#101315}.admin-page .traffic-kpi.purple strong{color:#b2adff}.admin-page .traffic-charts{gap:18px}.admin-page .shadcn-table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:16px;color:#a3afa7;background:#141719}.admin-page .shadcn-table td{padding:18px 16px;font-size:13px;border-color:#ffffff09}.admin-page .shadcn-table tbody tr:hover{background:#ffffff04}.admin-page .shadcn-table img{width:48px;height:48px;border-radius:12px}.admin-page .download-top{counter-reset:rank}.admin-page .download-top li{align-items:center;padding:16px 0!important;counter-increment:rank}.admin-page .download-top li:before{content:counter(rank,decimal-leading-zero);font-size:12px;color:#8f9e95;font-variant-numeric:tabular-nums}.admin-page .download-top li span{flex:1;font-size:13px}.admin-page .download-top li strong{padding:5px 10px;border-radius:8px;background:#a4edbb0c;color:#a4edbb;font-size:13px}.admin-page #adminTab-overview>.grid>.shadcn-card{padding:22px;min-height:142px}.admin-page #adminTab-overview>.grid>.shadcn-card .text-2xl{font-size:30px}.admin-page #adminDashboardSection>div:first-child{background:#191b1d!important;border-radius:16px}.admin-page .ui-state{margin:16px auto}.admin-page .shadcn-table .ui-state{max-width:none;background:transparent;border:0}
@media(max-width:600px){#modalTexturePreview .texture-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#modalTexturePreview .texture-preview-card{padding:10px}#modalTexturePreview .texture-preview-card img{height:118px}.admin-page .traffic-dashboard{padding:18px}.admin-page .traffic-heading h2{font-size:21px}.admin-page .traffic-kpi{padding:15px}.admin-page .traffic-kpi strong{font-size:28px}.action-error-dialog{padding:24px}.ui-state{padding:28px 20px}.admin-page .traffic-axis{font-size:16px}}
@media(prefers-reduced-motion:reduce){.skeleton-box{animation:none!important}.card-texture-peek,.pack-thumb-img{transition:none!important}}

.admin-page #downloadDashboard .traffic-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page #adminTab-overview>.grid>.shadcn-card .w-8{background:#ffffff05!important;border-color:#ffffff12!important;color:#a4edbb!important}.pack-texture-viewer{background:#191b1d;border-color:#ffffff20;border-radius:20px}.pack-texture-viewer>img{background-color:#121516;background-image:none;border-radius:14px}.pack-texture-viewer h2{font-size:24px;letter-spacing:-.5px}.pack-texture-viewer p{color:#a3afa7;font-size:13px;line-height:1.6}
