:root{--bg-dark: #1e272e;--panel-bg: rgba(47, 54, 64, .85);--text-main: #d2dae2;--accent-gold: #ffd32a;--accent-red: #ff4757;--accent-green: #2ed573;--font-main: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background:radial-gradient(circle at center,#2f3640,#1e272e);color:var(--text-main);overflow:hidden;height:100vh}.app-container{width:100vw;height:100vh;display:flex;flex-direction:column;position:relative}.cloud-sync-badge{position:absolute;top:16px;right:20px;display:flex;align-items:center;gap:6px;background:#ffffff1a;padding:6px 12px;border-radius:20px;font-size:12px;color:#a4b0be;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.loading-screen{display:flex;height:100vh;align-items:center;justify-content:center;color:var(--accent-gold);font-size:24px}.start-screen{background-image:radial-gradient(circle at 20% 30%,rgba(255,107,107,.1) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(78,205,196,.1) 0%,transparent 50%)}.title-box{text-align:center;margin-bottom:40px}.title-box h1{font-size:48px;color:#fff;text-shadow:0 0 20px rgba(255,255,255,.3);margin-bottom:10px}.title-box p{font-size:18px;color:#a4b0be}.highscore-box{display:flex;align-items:center;gap:10px;background:#ffd32a1a;border:1px solid rgba(255,211,42,.3);padding:12px 24px;border-radius:30px;color:var(--accent-gold);font-weight:700;margin-bottom:40px;box-shadow:0 0 15px #ffd32a33}.btn-primary{background:linear-gradient(135deg,#ff6b6b,#ff4757);color:#fff;border:none;padding:16px 40px;font-size:20px;font-weight:700;border-radius:30px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 20px #ff475766;display:flex;align-items:center;gap:10px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 25px #ff475799}.btn-primary:active{transform:translateY(2px)}.rules-box{margin-top:50px;background:var(--panel-bg);padding:20px;border-radius:12px;max-width:400px}.rules-box h3{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#fff}.rules-box ul{padding-left:20px;color:#a4b0be;line-height:1.6}.game-layout{display:flex;width:100%;max-width:1200px;height:90vh;gap:20px;padding:20px}.side-panel{flex:1;display:flex;flex-direction:column;gap:20px}.center-panel{flex:2.5;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:var(--panel-bg);border-radius:20px;padding:20px;box-shadow:inset 0 0 50px #00000080}.player-panel{background:var(--panel-bg);border-radius:16px;padding:20px;border:2px solid transparent;transition:all .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.player-panel.active{box-shadow:0 0 20px #ffffff1a;transform:scale(1.02)}.player-header{display:flex;align-items:center;gap:15px;margin-bottom:15px}.avatar-box{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.avatar-box img{width:100%;height:100%;object-fit:contain}.fallback-emoji{font-size:32px}.player-info h3{margin:0 0 5px;font-size:18px;color:#fff}.score-badge{background:#ffd32a33;color:var(--accent-gold);padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700}.hp-bar-container{margin-bottom:20px}.hp-text{font-size:12px;color:#a4b0be;display:flex;align-items:center;gap:5px;margin-bottom:5px}.hp-bar-bg{width:100%;height:10px;background:#0000004d;border-radius:5px;overflow:hidden}.hp-bar-fill{height:100%;border-radius:5px;transition:width .3s ease}.skills-container{display:flex;flex-direction:column;gap:10px}.skill-btn{display:flex;align-items:center;gap:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:10px;border-radius:10px;color:#fff;cursor:pointer;position:relative;overflow:hidden;text-align:left}.skill-btn:hover:not(:disabled){background:#ffffff1a}.skill-btn:disabled{opacity:.5;cursor:not-allowed}.skill-icon{background:#0003;padding:8px;border-radius:8px}.skill-details{display:flex;flex-direction:column}.skill-name{font-weight:700;font-size:14px}.skill-desc{font-size:11px;color:#a4b0be}.cd-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:var(--accent-red)}.log-box{background:var(--panel-bg);border-radius:16px;padding:20px;flex:1;display:flex;flex-direction:column}.log-box h4{margin-bottom:15px;color:#fff;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px}.log-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto}.log-item{font-size:13px;color:#a4b0be;background:#0003;padding:8px 12px;border-radius:6px;border-left:3px solid var(--accent-gold)}.board-container{flex:1;width:100%;display:flex;align-items:center;justify-content:center;padding:20px}.board-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:15px;width:100%;max-width:600px;aspect-ratio:4/3}.tile{background:#ffffff0d;border-radius:12px;border:2px solid rgba(255,255,255,.1);position:relative;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 20px #00000080}.tile-start{border-color:var(--accent-green);background:#2ed5731a}.tile-finish{border-color:var(--accent-gold);background:#ffd32a1a}.tile-boss{border-color:var(--accent-red);background:#ff47571a}.tile-event{border-color:#3498db}.tile-trap{border-color:#e67e22}.tile-content{display:flex;flex-direction:column;align-items:center;gap:5px;opacity:.7}.tile-index{position:absolute;top:5px;left:5px;font-size:10px;color:#ffffff4d}.tile-icon{width:32px;height:32px;object-fit:contain}.tile-label{font-size:12px;font-weight:700;color:#fff}.pieces-container{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:5px;pointer-events:none}.piece{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;box-shadow:0 4px 10px #00000080,inset 0 2px 5px #ffffff80;border:2px solid #fff;z-index:10}.action-area{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:20px}.turn-indicator{font-size:18px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5)}.dice-btn{background:linear-gradient(135deg,#f1f2f6,#dfe4ea);border:none;border-radius:20px;padding:15px 30px;display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;box-shadow:0 10px 20px #0000004d,inset 0 -5px 10px #0000001a;transition:all .2s}.dice-btn:hover:not(:disabled){transform:translateY(-2px)}.dice-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 5px 10px #0000004d}.dice-btn:disabled{opacity:.8;cursor:not-allowed}.dice-face{width:60px;height:60px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:#2f3542;box-shadow:inset 0 0 10px #0000001a}.dice-btn span{color:#2f3542;font-weight:700}.dice-btn.rolling .dice-face{animation:shake .5s infinite}@keyframes shake{0%{transform:rotate(0) scale(1)}25%{transform:rotate(15deg) scale(1.1)}50%{transform:rotate(0) scale(1)}75%{transform:rotate(-15deg) scale(1.1)}to{transform:rotate(0) scale(1)}}.boss-screen{background:radial-gradient(circle at center,#4b1e1e,#1a0b0b)}.boss-arena{background:#0009;padding:40px;border-radius:20px;border:2px solid var(--accent-red);text-align:center;max-width:500px;width:90%;box-shadow:0 0 50px #ff475733}.boss-arena h2{color:var(--accent-red);margin-bottom:30px;font-size:32px;text-shadow:0 0 10px rgba(255,71,87,.5)}.boss-image-container{height:200px;margin-bottom:30px;display:flex;justify-content:center;align-items:center}.boss-img{max-height:100%;object-fit:contain;filter:drop-shadow(0 0 20px rgba(255,71,87,.4));animation:float 3s ease-in-out infinite}.boss-hp-bar{width:100%;height:24px;background:#333;border-radius:12px;margin-bottom:30px;position:relative;overflow:hidden;border:2px solid #555}.boss-hp-bar .hp-fill{height:100%;background:linear-gradient(90deg,#ff4757,#ff6b81);transition:width .3s ease}.boss-hp-bar .hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;text-shadow:1px 1px 2px black;z-index:2}.btn-attack{background:var(--accent-red);color:#fff;border:none;padding:15px 30px;font-size:18px;border-radius:30px;cursor:pointer;display:flex;align-items:center;gap:10px;margin:0 auto;font-weight:700;transition:transform .2s}.btn-attack:hover:not(:disabled){transform:scale(1.05)}.mini-log{margin-top:20px;color:#a4b0be;font-style:italic}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}.gameover-screen{background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.victory-card{background:var(--panel-bg);padding:50px;border-radius:24px;text-align:center;border:2px solid var(--accent-gold);box-shadow:0 0 50px #ffd32a4d;max-width:400px;width:90%}.victory-card h2{color:var(--accent-gold);font-size:36px;margin-bottom:20px}.winner-avatar{width:100px;height:100px;border-radius:50%;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;font-size:50px;border:4px solid var(--accent-gold);overflow:hidden}.winner-avatar img{width:100%;height:100%;object-fit:contain}.victory-card h3{color:#fff;margin-bottom:30px;font-size:24px}.final-scores{background:#0000004d;padding:20px;border-radius:12px;margin-bottom:20px}.score-row{display:flex;justify-content:space-between;margin-bottom:10px;color:#d2dae2;font-size:18px}.score-row:last-child{margin-bottom:0}.new-record{color:var(--accent-gold);font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:30px;animation:pulse 1.5s infinite}.restart-btn{width:100%;justify-content:center}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}
