:root{--dg-color-bg: #070b14;--dg-color-text: #eef5ff;--dg-color-primary: #3b82f6;--dg-color-primary-hover: #60a5fa;--dg-color-accent: #f59e0b;--dg-color-danger: #ef4444;--dg-color-success: #10b981;--dg-color-card: rgba(17, 24, 39, .7);--dg-color-border: rgba(59, 130, 246, .3);--dg-font-main: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}.dg-container{position:relative;width:100%;min-height:400px;height:100%;max-height:100vh;background-color:var(--dg-color-bg);color:var(--dg-color-text);font-family:var(--dg-font-main);overflow:hidden;display:flex;flex-direction:column}.dg-container[data-theme=dark]{--dg-color-bg: #020408;--dg-color-card: rgba(0,0,0,.8)}.dg-container[data-theme=tech]{--dg-color-bg: #051020;--dg-color-card: rgba(10, 30, 50, .7);--dg-color-border: rgba(0, 200, 255, .4)}.dg-bg-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.dg-particle-canvas{width:100%;height:100%}.dg-header{position:absolute;top:0;left:0;right:0;height:50px;display:flex;align-items:center;padding:0 16px;z-index:10;justify-content:space-between}.dg-progress{flex:1;max-width:300px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-right:20px}.dg-progress-bar{height:100%;width:0%;background:var(--dg-color-primary);transition:width .5s ease}.dg-btn-icon{background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:40px;height:40px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.dg-btn-icon:hover{background:#ffffff1a;border-color:var(--dg-color-primary)}.dg-sound-btn.muted{color:#fff6}.dg-sound-btn:not(.muted){animation:dg-pulse 2s infinite}.dg-audio-unlocked .dg-sound-btn{animation:none}@keyframes dg-pulse{0%{box-shadow:0 0 #3b82f666}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.dg-scene-layer{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:40px 16px 50px;overflow-y:auto}.dg-nav{position:absolute;bottom:0;left:0;right:0;height:60px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:10;background:linear-gradient(to top,var(--dg-color-bg) 40%,transparent)}.dg-btn{padding:8px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none;outline:none}.dg-btn:disabled{opacity:.5;cursor:not-allowed}.dg-btn-primary{background:var(--dg-color-primary);color:#fff;box-shadow:0 4px 12px #3b82f64d}.dg-btn-primary:hover:not(:disabled){background:var(--dg-color-primary-hover);transform:translateY(-2px)}.dg-btn-secondary{background:transparent;color:#a0aec0;border:1px solid rgba(255,255,255,.2)}.dg-btn-secondary:hover:not(:disabled){border-color:#fff6;color:#fff}.dg-card{background:var(--dg-color-card);border:1px solid var(--dg-color-border);border-radius:16px;padding:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dg-title{font-size:24px;font-weight:700;margin-bottom:4px;background:linear-gradient(90deg,#fff,#93c5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.dg-subtitle{font-size:14px;color:#94a3b8;margin-bottom:12px}@keyframes dg-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dg-animate-fade{animation:dg-fade-in .6s ease-out forwards}.dg-prologue-scene{text-align:center;max-width:800px}.dg-prologue-line{font-size:20px;line-height:1.4;margin-bottom:12px;opacity:0}.dg-prologue-btn{margin-top:20px;font-size:16px;padding:10px 30px;border-radius:30px;background:#fff;color:#000;opacity:0}.dg-prologue-btn:hover{background:#e2e8f0}.dg-world-scene{max-width:1000px;width:100%}.dg-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.dg-stat-item{text-align:center;padding:12px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.dg-stat-num{font-size:24px;font-weight:800;color:var(--dg-color-accent);margin-bottom:4px}.dg-stat-label{font-size:14px;color:#e2e8f0;margin-bottom:2px}.dg-stat-desc{font-size:12px;color:#94a3b8}.dg-challenges{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.dg-challenge-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#0000004d;border-radius:12px}.dg-challenge-icon{font-size:24px}.dg-challenge-content h4{font-size:16px;margin-bottom:4px}.dg-challenge-content p{font-size:12px;color:#94a3b8;line-height:1.4}.dg-solutions-scene{width:100%;max-width:1000px}.dg-solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.dg-solution-card{perspective:1000px;height:180px}.dg-solution-inner{position:relative;width:100%;height:100%;text-align:center;transition:transform .6s;transform-style:preserve-3d;cursor:pointer}.dg-solution-card:hover .dg-solution-inner,.dg-solution-card.flipped .dg-solution-inner{transform:rotateY(180deg)}.dg-solution-front,.dg-solution-back{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:12px;padding:12px;background:#1e293bb3;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;justify-content:center;align-items:center}.dg-solution-front{background:linear-gradient(145deg,#1e293bcc,#0f172ae6)}.dg-solution-icon{font-size:36px;margin-bottom:4px}.dg-solution-back{transform:rotateY(180deg);background:linear-gradient(145deg,#0f172ae6,#1e293bcc);align-items:flex-start;justify-content:flex-start;text-align:left;overflow-y:auto}.dg-solution-back::-webkit-scrollbar{width:4px}.dg-solution-back::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.dg-solution-back h4{font-size:16px;margin-bottom:8px;color:var(--dg-color-primary)}.dg-pros-cons{width:100%;font-size:12px}.dg-pro{color:var(--dg-color-success);margin-bottom:4px;display:flex;gap:8px}.dg-con{color:var(--dg-color-danger);margin-bottom:4px;display:flex;gap:8px}.dg-tech-scene{width:100%;max-width:1000px;display:flex;flex-direction:column;height:100%}.dg-tech-steps{display:flex;gap:12px;margin-bottom:12px}.dg-tech-step{flex:1;background:#10b9811a;border:1px solid rgba(16,185,129,.3);padding:12px;border-radius:8px}.dg-tech-icon{font-size:24px;margin-bottom:4px}.dg-tech-step h4{margin-bottom:4px;font-size:14px;color:#a7f3d0}.dg-tech-step p{font-size:12px;color:#94a3b8;line-height:1.4}.dg-radar-container{flex:1;position:relative;background:#00000080;border:1px solid var(--dg-color-border);border-radius:12px;overflow:hidden;min-height:140px}.dg-radar-canvas{width:100%;height:100%;display:block}.dg-radar-ui{position:absolute;top:16px;left:16px;right:16px;display:flex;justify-content:space-between;pointer-events:none}.dg-radar-status{padding:8px 16px;background:#0009;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:monospace;font-size:16px;transition:color .3s}.dg-quiz-scene{max-width:800px;width:100%}.dg-quiz-progress{font-size:12px;color:#94a3b8;margin-bottom:12px;text-align:right}.dg-question{font-size:18px;line-height:1.4;margin-bottom:16px}.dg-options{display:flex;flex-direction:column;gap:8px}.dg-option-btn{width:100%;text-align:left;padding:10px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:14px;color:#e2e8f0;cursor:pointer;transition:all .2s;display:flex;align-items:center}.dg-option-btn:hover{background:#ffffff1a;transform:translate(4px)}.dg-option-btn.correct{background:#10b98133;border-color:var(--dg-color-success)}.dg-option-btn.wrong{background:#ef444433;border-color:var(--dg-color-danger)}.dg-option-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#ffffff1a;margin-right:16px;font-size:14px}.dg-explain{margin-top:24px;padding:16px;background:#3b82f61a;border-left:4px solid var(--dg-color-primary);border-radius:0 8px 8px 0;font-size:14px;line-height:1.6;display:none}.dg-result-card{text-align:center;padding:48px}.dg-result-score{font-size:72px;font-weight:800;color:var(--dg-color-primary);margin:24px 0}.dg-result-stars{font-size:48px;margin-bottom:16px}@media(max-width:768px){.dg-challenges,.dg-solutions-grid,.dg-tech-steps{grid-template-columns:1fr;flex-direction:column}}
