@font-face{font-family:Nulshock;src:url(/brand/fonts/Nulshock%20Bd.otf) format("opentype");font-weight:700;font-display:swap}@font-face{font-family:LT Saeada;src:url(/brand/fonts/LTSaeada-Regular.otf) format("opentype");font-weight:400;font-display:swap}@font-face{font-family:Lato;src:url(/brand/fonts/lato.regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Lato Black;src:url(/brand/fonts/Lato-Black.ttf) format("truetype");font-weight:900;font-display:swap}:root{--dp-red: #D8352D;--dp-deep-red: #A62819;--dp-yellow: #E2A139;--dp-gold: #EDCE45;--dp-green: #3F7B2B;--dp-blue: #223BA4;--dp-lime: #AAF376;--dp-sky: #6FCBDB;--dp-ink: #0A0A0A;--dp-ink-2: #161618;--dp-paper: #FFFFFF;--dp-grey: #CECFCF;--bg: var(--dp-ink);--bg-soft: var(--dp-ink-2);--surface: var(--dp-ink-2);--surface-soft: rgba(255, 255, 255, .04);--line: rgba(255, 255, 255, .1);--line-strong: rgba(226, 161, 57, .4);--text: #EDEDED;--text-soft: rgba(237, 237, 237, .62);--text-faint: rgba(237, 237, 237, .4);--primary: var(--dp-red);--primary-dark: var(--dp-deep-red);--accent: var(--dp-yellow);--ok: var(--dp-green);--err: var(--dp-deep-red);--shadow-sm: 0 4px 12px rgba(0,0,0,.35);--shadow: 0 16px 40px -12px rgba(0,0,0,.55);--shadow-lg: 0 24px 60px -16px rgba(0,0,0,.7);--header-bg: rgba(10, 10, 10, .92);--row-divider: rgba(255, 255, 255, .04);--input-focus-bg: rgba(255, 255, 255, .06);--gh-overlay-bg: rgba(13, 10, 8, .86);--gh-result-bg: rgba(26, 22, 18, .95);--radius: 18px;--radius-sm: 12px;--font-display: "Nulshock", "Lato Black", system-ui, sans-serif;--font-body: "Lato", system-ui, -apple-system, sans-serif}[data-theme=light]{--bg: #FAF7F2;--bg-soft: #F1ECE3;--surface: #FFFFFF;--surface-soft: rgba(10, 10, 10, .04);--line: rgba(10, 10, 10, .1);--line-strong: rgba(166, 40, 25, .45);--text: #1A1410;--text-soft: rgba(26, 20, 16, .66);--text-faint: rgba(26, 20, 16, .4);--shadow-sm: 0 4px 12px rgba(40, 25, 15, .1);--shadow: 0 16px 40px -12px rgba(40, 25, 15, .18);--shadow-lg: 0 24px 60px -16px rgba(40, 25, 15, .22);--header-bg: rgba(255, 255, 255, .92);--row-divider: rgba(10, 10, 10, .05);--input-focus-bg: rgba(10, 10, 10, .03);--gh-overlay-bg: rgba(40, 28, 20, .55);--gh-result-bg: rgba(250, 247, 242, .96)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}body.gh-open{overflow:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:.02em;color:var(--text);text-transform:uppercase;line-height:1.05}a,.link{color:var(--accent);background:none;border:none;font:inherit;cursor:pointer;text-decoration:none}.link{display:block;margin:16px auto 0}.link:hover{color:var(--dp-gold)}.muted{color:var(--text-soft);font-size:14px}.dp-brandbar{display:flex;align-items:center;flex-shrink:0}.dp-brandbar .dp-logo{height:40px;width:auto;display:block}.dp-patternbar{position:fixed;left:0;right:0;bottom:0;height:64px;background:url(/brand/patterns/dreamplay-pattern-band.png) repeat-x bottom center / auto 100%;z-index:40;pointer-events:none;box-shadow:var(--patternbar-shadow, 0 -12px 24px -8px rgba(0,0,0,.55))}[data-theme=light]{--patternbar-shadow: 0 -10px 22px -10px rgba(40, 25, 15, .18)}.boot{display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;min-height:100vh;color:var(--text-soft);font-family:var(--font-display);font-size:18px;text-transform:uppercase;letter-spacing:.06em}.boot-error{color:var(--err);padding:20px;text-align:center}.btn{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;padding:12px 22px;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:transform .1s ease,box-shadow .15s ease,background .15s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 0 var(--primary-dark),0 10px 24px -8px #d8352d73}.btn-primary:hover:not(:disabled){transform:translateY(-1px);background:var(--dp-red)}.btn-primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--primary-dark)}.btn-ghost{background:transparent;color:var(--text-soft);border:1.5px solid var(--line)}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--line-strong)}.btn-block{display:block;width:100%}.btn-sm{padding:9px 16px;font-size:12px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface-soft);color:var(--text-soft);cursor:pointer;padding:0;transition:color .15s,background .15s,border-color .15s,transform .1s}.theme-toggle:hover{color:var(--text);border-color:var(--line-strong)}.theme-toggle:active{transform:scale(.94)}.theme-toggle svg{display:block}.theme-toggle-card{position:absolute;top:14px;right:14px}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:80px 24px 100px}.auth-card{position:relative;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:40px 32px 28px;width:100%;max-width:400px;text-align:center}.auth-card .dp-brandbar{justify-content:center;margin:0 auto 8px}.auth-card .dp-brandbar .dp-logo{height:144px;max-width:100%}.auth-tag{color:var(--text-soft);font-size:14px;margin:14px 0 26px;font-family:var(--font-body)}.auth-form{display:flex;flex-direction:column;gap:14px;text-align:left}.field{display:flex;flex-direction:column;gap:6px}.field span{font-family:var(--font-display);font-size:11px;font-weight:700;color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase}.field input{font:inherit;font-family:var(--font-body);padding:12px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--surface-soft);color:var(--text);transition:border-color .15s,background .15s}.field input::placeholder{color:var(--text-faint)}.field input:focus{outline:none;border-color:var(--dp-yellow);background:var(--input-focus-bg)}.auth-error{color:var(--err);font-size:13px;min-height:1em;font-family:var(--font-body)}.auth-error.auth-note{color:var(--dp-yellow)}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:20px;padding:14px 24px;background:var(--header-bg);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:sticky;top:0;z-index:50;flex-wrap:wrap}.app-header .dp-brandbar .dp-logo{height:36px}.nav{display:flex;gap:4px;margin-left:8px}.nav-btn{font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:9px 16px;border-radius:999px;border:none;background:transparent;color:var(--text-soft);cursor:pointer;transition:background .15s,color .15s}.nav-btn:hover{color:var(--text);background:var(--surface-soft)}.nav-btn.active{background:var(--primary);color:#fff}.header-right{margin-left:auto;display:flex;align-items:center;gap:12px}.wallet{display:flex;align-items:center;gap:6px;background:var(--accent);color:var(--dp-ink);font-family:var(--font-display);font-weight:700;padding:7px 14px;border-radius:999px;letter-spacing:.05em;box-shadow:inset 0 -2px #0000002e}.wallet-coin{font-size:13px}.wallet-num{font-size:15px}.content{flex:1;width:100%;max-width:1040px;margin:0 auto;padding:32px 24px 96px}.section-head{margin-bottom:22px}.section-head h2{font-size:26px}.section-head .muted{margin-top:6px;font-family:var(--font-body)}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.game-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .12s ease,box-shadow .15s ease,border-color .15s ease}.game-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--line-strong)}.game-thumb{height:110px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:44px;letter-spacing:.04em;color:#fff;background:var(--dp-blue)}.thumb-iron_horse{background:linear-gradient(135deg,#5a2010,var(--dp-deep-red))}.thumb-savanna_match{background:linear-gradient(135deg,var(--dp-deep-red),var(--dp-yellow));color:var(--dp-ink)}.thumb-savanna_match_2{background:linear-gradient(135deg,var(--dp-yellow),#1f4d1a);color:var(--dp-ink)}.thumb-morabaraba{background:linear-gradient(135deg,var(--dp-green),#1f4d1a)}.thumb-morabaraba_2{background:linear-gradient(135deg,var(--dp-green),var(--dp-blue))}.thumb-tetris{background:linear-gradient(135deg,#4c66c9,#b670d6)}.thumb-2048{background:linear-gradient(135deg,var(--dp-red),var(--dp-yellow),var(--dp-green),var(--dp-blue))}.thumb-sudoku{background:linear-gradient(135deg,var(--dp-sky),var(--dp-blue))}.thumb-minesweeper{background:linear-gradient(135deg,#4A4A4A,var(--dp-ink))}.thumb-space_invaders{background:linear-gradient(135deg,#050714,#3f7b2b)}.thumb-dreamplay_spinner{background:linear-gradient(135deg,var(--dp-red),var(--dp-deep-red))}.game-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}.game-body h3{font-size:17px}.game-desc{font-size:13px;color:var(--text-soft);line-height:1.55;flex:1;font-family:var(--font-body)}.game-meta{display:flex;gap:6px;margin:2px 0 8px}.badge{font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--surface-soft);color:var(--accent);border:1px solid var(--line)}.pack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.pack-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px 20px;text-align:center;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-sm)}.pack-coins{display:flex;align-items:baseline;justify-content:center;gap:6px}.pack-coins-num{font-family:var(--font-display);font-weight:700;font-size:40px;color:var(--accent);letter-spacing:.04em}.pack-coins-label{font-size:13px;color:var(--text-soft);font-family:var(--font-body)}.pack-name{font-family:var(--font-display);font-weight:700;color:var(--text);font-size:15px;letter-spacing:.05em}.pack-price{font-size:14px;color:var(--text-soft);margin-bottom:6px;font-family:var(--font-body)}.lb-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.lb-tab{font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:9px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text-soft);cursor:pointer}.lb-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.lb-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-height:120px}.lb-table{width:100%;border-collapse:collapse;font-family:var(--font-body)}.lb-table th,.lb-table td{padding:10px;text-align:left;font-size:14px}.lb-table th{font-family:var(--font-display);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-soft);border-bottom:1px solid var(--line)}.lb-table td{border-bottom:1px solid var(--row-divider);color:var(--text)}.lb-table .num{text-align:right}.lb-table tr:last-child td{border-bottom:none}.lb-table .lb-me{background:#e2a1391a}.history-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:12px}.history-list li{display:flex;justify-content:space-between;padding:10px 12px;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;font-size:14px;font-family:var(--font-body);color:var(--text)}.gh-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--gh-overlay-bg);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:200;overscroll-behavior:contain}.gh-modal{background:var(--bg);border:1px solid var(--line);border-radius:20px;width:100%;max-width:820px;height:100%;max-height:min(880px,92vh);max-height:min(880px,92dvh);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg)}.gh-bar{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);flex-shrink:0;background:var(--surface)}.gh-back{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text-soft);font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:9px 16px 9px 11px;border-radius:999px;cursor:pointer;flex-shrink:0;transition:background .12s,color .12s,transform .1s}.gh-back:hover{background:var(--surface);color:var(--text);border-color:var(--line-strong)}.gh-back:active{transform:scale(.97)}.gh-back-arrow{font-size:20px;line-height:1;margin-top:-2px}.gh-title{flex:1;text-align:center;font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gh-wallet{display:flex;align-items:center;gap:5px;background:var(--accent);color:var(--dp-ink);font-family:var(--font-display);font-weight:700;padding:7px 13px;border-radius:999px;flex-shrink:0;letter-spacing:.05em;box-shadow:inset 0 -2px #0000002e}.gh-wallet-coin{font-size:12px}.gh-wallet-num{font-size:14px}.gh-stage{position:relative;flex:1;background:var(--bg);overflow:hidden}.gh-frame{width:100%;height:100%;border:none;display:block}.gh-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-soft);font-family:var(--font-display);font-size:13px;letter-spacing:.1em;text-transform:uppercase;transition:opacity .3s ease}.gh-loading.gh-hide{opacity:0;pointer-events:none}.gh-spinner{width:38px;height:38px;border-radius:50%;border:4px solid var(--surface-soft);border-top-color:var(--primary);animation:gh-spin .8s linear infinite}@keyframes gh-spin{to{transform:rotate(360deg)}}.gh-result{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:var(--gh-result-bg);display:none;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px 24px;text-align:center}.gh-result.show{display:flex}.gh-result-title{font-size:28px;color:var(--accent)}.gh-result-detail{color:var(--text-soft);max-width:380px;line-height:1.5;font-family:var(--font-body)}.gh-actions{display:flex;flex-direction:column;gap:10px;margin-top:10px;width:100%;max-width:320px}.gh-actions .btn{width:100%}.toast-wrap{position:fixed;bottom:76px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:300;pointer-events:none}.toast{background:var(--surface);border:1px solid var(--line);color:var(--text);padding:12px 20px;border-radius:12px;font-size:14px;font-weight:500;font-family:var(--font-body);box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:translateY(0)}.toast-success{border-color:var(--ok)}.toast-error{border-color:var(--err);color:#ffb4a8}@media (max-width: 560px){.app-header{gap:10px;padding:12px 16px}.nav{margin-left:0;order:3;width:100%;justify-content:center}.header-right{margin-left:auto}.content{padding:24px 16px 96px}.gh-overlay{padding:0}.gh-modal{max-width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0}.gh-bar{padding:9px 10px}.gh-title{font-size:12px}.gh-result-title{font-size:22px}}
