.buy-coins-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:2000;backdrop-filter:blur(1vh);padding:5vh;animation:.3s ease-out fadeIn}body.layout-vertical .buy-coins-modal{padding:3vh}.buy-coins-content{background:linear-gradient(145deg,#f8f9fa,#e9ecef);border-radius:2.5vh;padding:5vh;text-align:center;max-width:60vw;border:.15vh solid #4caf50;box-shadow:0 .8vh 4vh rgba(0,0,0,.3),0 0 2vh rgba(76,175,80,.1);backdrop-filter:blur(2vh);animation:.4s ease-out slideInUp}body.theme-dark .buy-coins-content{background:linear-gradient(145deg,#1e1e1e,#2d2d2d);border:.15vh solid #4caf50;box-shadow:0 .8vh 4vh rgba(0,0,0,.6),0 0 2vh rgba(76,175,80,.2)}body.layout-vertical .buy-coins-content{padding:4vh;max-width:92vw;border-radius:3vh}.buy-coins-title{color:#4caf50;margin:0 0 2.5vh;font-size:4vh;font-weight:700;text-shadow:0 .1vh .3vh rgba(0,0,0,.2);letter-spacing:.05em}body.layout-vertical .buy-coins-title{font-size:3.5vh}.buy-coins-description{color:#555;margin:0 0 3.5vh;font-size:3vh;line-height:1.5;opacity:.9}body.theme-dark .buy-coins-description{color:#e0e0e0}body.layout-vertical .buy-coins-description{font-size:2.5vh}.buy-coins-options{display:flex;flex-direction:column;gap:1.5vh;margin:0 0 3vh}.buy-coins-option{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:0;border-radius:1.5vh;font-size:3vh;cursor:pointer;font-weight:700;transition:.3s;box-shadow:0 .3vh 1vh rgba(0,0,0,.2);display:flex;justify-content:space-between;align-items:center;min-height:10vh;position:relative;overflow:hidden}body.layout-vertical .buy-coins-option{font-size:2.5vh;min-height:12vh}.buy-coins-option::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s;pointer-events:none}.buy-coins-option-left{display:flex;align-items:center;justify-content:flex-start;gap:2vh;padding:0 4vh}body.layout-vertical .buy-coins-option-left{gap:1.5vh;padding:0 3vh}.buy-coins-coin-icon{width:4vh;height:4vh;filter:drop-shadow(0 .1vh .2vh rgba(0, 0, 0, .3))}body.layout-vertical .buy-coins-coin-icon{width:3.5vh;height:3.5vh}.buy-coins-coins-text{font-size:3vh;font-weight:700;text-align:left;line-height:1.2}body.layout-vertical .buy-coins-coins-text{font-size:2.5vh;line-height:1.2}.buy-coins-option-right{text-align:right;padding:0 4vh;display:flex;flex-direction:column;justify-content:center;gap:.3vh}body.layout-vertical .buy-coins-option-right{padding:0 3vh;gap:.2vh}.buy-coins-price-text{font-size:3vh;font-weight:700;margin-bottom:.3vh}body.layout-vertical .buy-coins-price-text{font-size:2.5vh}.buy-coins-bonus-text{font-size:2.55vh;opacity:.9;color:gold;text-shadow:0 .1vh .2vh rgba(0,0,0,.3);min-height:2.8vh;display:flex;align-items:center;justify-content:flex-end;line-height:1}body.layout-vertical .buy-coins-bonus-text{font-size:2.125vh;min-height:2.4vh}.buy-coins-option:hover{transform:translateY(-.3vh) scale(1.02);box-shadow:0 .6vh 2vh rgba(76,175,80,.4)}.buy-coins-option:hover::before{left:100%}.buy-coins-cancel{background:linear-gradient(135deg,#e0e0e0,#d0d0d0);color:#333;border:none;padding:2.5vh 5vh;border-radius:2vh;font-size:3vh;cursor:pointer;transition:.3s;box-shadow:0 .3vh 1vh rgba(0,0,0,.2);font-weight:700;min-height:10vh;width:100%;margin-top:1vh}body.theme-dark .buy-coins-cancel{background:linear-gradient(135deg,#444,#555);color:#fff}body.layout-vertical .buy-coins-cancel{padding:2vh 4vh;font-size:2.5vh;min-height:8vh}.buy-coins-cancel:hover{transform:translateY(-.2vh);box-shadow:0 .5vh 1.5vh rgba(0,0,0,.3)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideInUp{from{opacity:0;transform:translateY(3vh)}to{opacity:1;transform:translateY(0)}}.unlock-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:2000;backdrop-filter:blur(1vh);padding:5vh;animation:.3s ease-out fadeIn}body.layout-vertical .unlock-modal{padding:3vh}.unlock-content{background:linear-gradient(145deg,#f8f9fa,#e9ecef);border-radius:2.5vh;padding:2vh;text-align:center;max-width:60vw;border:.15vh solid gold;box-shadow:0 .8vh 4vh rgba(0,0,0,.3),0 0 2vh rgba(255,215,0,.1);backdrop-filter:blur(2vh);animation:.4s ease-out slideInUp}body.theme-dark .unlock-content{background:linear-gradient(145deg,#1e1e1e,#2d2d2d);border:.15vh solid gold;box-shadow:0 .8vh 4vh rgba(0,0,0,.6),0 0 2vh rgba(255,215,0,.2)}body.layout-vertical .unlock-content{padding:2vh;max-width:92vw;border-radius:3vh}.unlock-title{color:gold;margin:0 0 2vh;font-size:4vh;font-weight:700;text-shadow:0 .1vh .3vh rgba(0,0,0,.2);letter-spacing:.05em}body.layout-vertical .unlock-title{font-size:3.5vh;margin:0 0 1.5vh}.unlock-preview{margin:0 0 2.5vh;display:flex;justify-content:center;align-items:center;background:var(--art-preview-bg,#f8f9fa);border-radius:1vh;padding:1vh}body.layout-vertical .unlock-preview{margin:0 0 2vh}body.theme-dark .unlock-preview{background:var(--art-preview-bg,#0f1115)}.unlock-preview-canvas{border:none;border-radius:0;box-shadow:none;background:0 0;max-width:100%;max-height:25vh;width:auto;height:auto}body.layout-vertical .unlock-preview-canvas{max-height:15vh}body.theme-dark .unlock-preview-canvas{background:0 0;border:none;box-shadow:none}.unlock-description{color:#555;margin:0 0 3.5vh;font-size:3vh;line-height:1.5;opacity:.9}body.theme-dark .unlock-description{color:#e0e0e0}body.layout-vertical .unlock-description{font-size:2.5vh}.unlock-coins-info{display:flex;align-items:center;justify-content:center;gap:1vh;margin:0 0 3vh;font-size:3vh}body.layout-vertical .unlock-coins-info{font-size:2.5vh}.unlock-coin-icon{width:3vh;height:3vh}body.layout-vertical .unlock-coin-icon{width:2.5vh;height:2.5vh}.unlock-coins-text{font-size:3vh}.unlock-coins-text.enough{color:#0f0}.unlock-coins-text.not-enough{color:#f44}body.layout-vertical .unlock-coins-text{font-size:2.5vh}.unlock-buttons{display:flex;gap:2vh;justify-content:center;flex-direction:row}body.layout-vertical .unlock-buttons{gap:2vh;flex-direction:column}.unlock-button{background:linear-gradient(135deg,gold,#ffed4e);color:#8b4513;border:none;padding:2vh 3vh;border-radius:2vh;font-size:2.8vh;cursor:pointer;font-weight:700;transition:.3s;box-shadow:0 .4vh 1.5vh rgba(0,0,0,.2);text-shadow:0 .1vh .2vh rgba(0,0,0,.1);min-height:8vh;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:auto}.unlock-button.disabled{background:linear-gradient(135deg,#666,#888);color:#999;cursor:not-allowed}body.layout-vertical .unlock-button{padding:2vh 3vh;font-size:2.5vh;border-radius:2.5vh;min-height:6vh;width:100%}.unlock-button:not(.disabled):hover{transform:translateY(-.2vh);box-shadow:0 .6vh 2vh rgba(255,215,0,.4)}.unlock-cancel{background:linear-gradient(135deg,#e0e0e0,#f0f0f0);color:#333;border:none;padding:2vh 3vh;border-radius:2vh;font-size:2.8vh;cursor:pointer;transition:.3s;box-shadow:0 .4vh 1.5vh rgba(0,0,0,.2);font-weight:700;min-height:8vh;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:auto}body.theme-dark .unlock-cancel{background:linear-gradient(135deg,#444,#666);color:#fff}body.layout-vertical .unlock-cancel{padding:2vh 3vh;font-size:2.5vh;border-radius:2.5vh;min-height:6vh;width:100%}.unlock-cancel:hover{transform:translateY(-.2vh);box-shadow:0 .6vh 2vh rgba(0,0,0,.3)}.unlock-additional-options{display:flex;flex-direction:column;gap:1.5vh;margin-top:2vh;padding-top:2vh;border-top:.1vh solid rgba(0,0,0,.1)}body.theme-dark .unlock-additional-options{border-top-color:rgba(255,255,255,.1)}.unlock-additional-options.hidden{display:none}.unlock-additional-title{color:#555;margin:0 0 1.5vh;font-size:2.7vh;font-weight:700;opacity:.8}body.theme-dark .unlock-additional-title{color:#e0e0e0}body.layout-vertical .unlock-additional-title{font-size:2.5vh}.unlock-watch-ad-button{background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:2vh 3vh;border-radius:2vh;font-size:3vh;cursor:pointer;font-weight:700;transition:.3s;box-shadow:0 .3vh 1vh rgba(0,0,0,.2);text-shadow:0 .1vh .2vh rgba(0,0,0,.1);min-height:10vh;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%}body.layout-vertical .unlock-watch-ad-button{padding:2vh 3vh;font-size:2.5vh;min-height:8vh}.unlock-watch-ad-button:hover{transform:translateY(-.3vh) scale(1.02);box-shadow:0 .6vh 2vh rgba(255,107,53,.4)}.unlock-buy-coins-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:2vh 3vh;border-radius:2vh;font-size:3vh;cursor:pointer;font-weight:700;transition:.3s;box-shadow:0 .3vh 1vh rgba(0,0,0,.2);text-shadow:0 .1vh .2vh rgba(0,0,0,.1);min-height:10vh;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%}body.layout-vertical .unlock-buy-coins-button{padding:2vh 3vh;font-size:2.5vh;min-height:8vh}.unlock-buy-coins-button:hover{transform:translateY(-.3vh) scale(1.02);box-shadow:0 .6vh 2vh rgba(76,175,80,.4)}.unlock-button-content{display:flex;align-items:center;justify-content:space-between;width:100%}.unlock-button-left{display:flex;align-items:center;gap:1vh}.unlock-button-icon{font-size:3vh}body.layout-vertical .unlock-button-icon{font-size:2.5vh}.unlock-button-right{text-align:right;font-size:2.4vh;opacity:.9}body.layout-vertical .unlock-button-right{font-size:2vh}.unlock-button-reward{color:gold;font-weight:700}.unlock-button-price{color:#4caf50;font-weight:700}.unlock-button-subtitle{font-size:2.1vh}body.layout-vertical .unlock-button-subtitle{font-size:1.75vh}.tutorial-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.8);z-index:10000;display:none;align-items:center;justify-content:center;backdrop-filter:blur(0.5vh)}.tutorial-modal.active{display:flex}.tutorial-content{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);border-radius:2vh;padding:4vh;width:90vw;height:80vh;overflow-y:auto;box-shadow:0 2vh 4vh rgba(0,0,0,.3);position:relative;animation:.3s ease-out tutorialSlideIn}body.theme-dark .tutorial-content{background:linear-gradient(135deg,#2c3e50 0,#34495e 100%);box-shadow:0 2vh 4vh rgba(0,0,0,.5)}@keyframes tutorialSlideIn{from{opacity:0;transform:scale(.8) translateY(2vh)}to{opacity:1;transform:scale(1) translateY(0)}}.tutorial-header{text-align:center;margin-bottom:3vh;padding-right:6vh}.tutorial-title{font-size:4vh;font-weight:700;color:#fff;margin-bottom:1vh;text-shadow:0 .2vh .4vh rgba(0,0,0,.3)}.tutorial-subtitle{font-size:2.5vh;color:rgba(255,255,255,.9);font-weight:300}.tutorial-body{margin-bottom:3vh}.tutorial-step{display:none;text-align:center;justify-items:center}.tutorial-step.active{display:block;animation:.3s ease-in tutorialFadeIn}@keyframes tutorialFadeIn{from{opacity:0}to{opacity:1}}.tutorial-image{width:100%;max-width:50vh;height:35vh;border-radius:1.5vh;margin:2vh 0;box-shadow:0 1vh 2vh rgba(0,0,0,.2);background:#f0f0f0;display:flex;align-items:center;justify-content:center}body.theme-dark .tutorial-image{background:#2c3e50}.tutorial-image img{max-width:100%;max-height:100%;border-radius:1vh}.tutorial-image-placeholder{color:#666;font-size:2vh;text-align:center;padding:4vh}body.theme-dark .tutorial-image-placeholder{color:#bdc3c7}.tutorial-lottie-player{border-radius:1vh;overflow:hidden;box-shadow:0 .5vh 1.5vh rgba(0,0,0,.1);background:rgba(255,255,255,.1);backdrop-filter:blur(1vh);width:100%!important;height:100%!important}body.theme-dark .tutorial-lottie-player{background:rgba(0,0,0,.2);box-shadow:0 .5vh 1.5vh rgba(0,0,0,.3)}.tutorial-description{font-size:2.8vh;color:#fff;line-height:1.4;margin:2vh 0;text-shadow:0 .1vh .2vh rgba(0,0,0,.3);min-height:10vh;max-width:160vh}.tutorial-navigation{display:flex;justify-content:space-around;align-items:center;margin-top:3vh;position:relative;height:8vh}.tutorial-nav-button{background:rgba(255,255,255,.2);border:.2vh solid rgba(255,255,255,.3);color:#fff;padding:2vh 4vh;border-radius:2.5vh;font-size:2.5vh;font-weight:700;cursor:pointer;transition:.3s;backdrop-filter:blur(1vh);min-width:12vh;text-align:center;white-space:nowrap}.tutorial-nav-button:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5);transform:translateY(-.2vh)}.tutorial-nav-button:disabled{opacity:.5;cursor:not-allowed;transform:none;min-width:12vh}.tutorial-close{position:absolute;top:2vh;right:2vh;width:4vh;height:4vh;font-size:2.5vh;cursor:pointer;border:none;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;transition:.3s;font-weight:700;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(1vh);box-shadow:0 .2vh .8vh rgba(0,0,0,.2)}.tutorial-close:hover{background:rgba(255,255,255,.3);transform:scale(1.1);box-shadow:0 .4vh 1.2vh rgba(0,0,0,.3)}.tutorial-progress{display:flex;justify-content:center;margin:2vh 0;gap:1vh}.tutorial-progress-dot{width:2vh;height:2vh;border-radius:50%;background:rgba(255,255,255,.3);transition:.3s}.tutorial-progress-dot.active{background:#fff;transform:scale(1.2)}.tutorial-progress-dot.completed{background:#4caf50}body.layout-vertical .tutorial-description{min-height:16vh}body.layout-vertical .tutorial-content{padding:2vh;margin:1vh;min-height:75vh;max-height:90vh}body.layout-vertical .tutorial-title{font-size:3vh;margin-bottom:.5vh}body.layout-vertical .tutorial-subtitle{font-size:1.8vh}body.layout-vertical .tutorial-description{font-size:2.2vh;margin:.8vh 0}body.layout-vertical .tutorial-nav-button{padding:1vh 2vh;font-size:1.8vh;min-width:10vh}body.layout-vertical .tutorial-nav-button:disabled{min-width:10vh}body.layout-vertical .tutorial-image{max-width:35vh;height:35vh;margin:.8vh 0}body.layout-vertical .tutorial-header{margin-bottom:1.5vh;padding-right:4vh}body.layout-vertical .tutorial-body{margin-bottom:1.5vh}body.layout-vertical .tutorial-navigation{margin-top:1.5vh;height:6vh}body.layout-horizontal .tutorial-image{max-width:60vh;height:30vh}.tutorial-highlight{animation:2s infinite tutorialPulse}@keyframes tutorialPulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}70%{box-shadow:0 0 0 1vh rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}.tutorial-launch-button{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);border:none;color:#fff;padding:1.5vh 3vh;border-radius:2vh;font-size:2vh;font-weight:700;cursor:pointer;transition:.3s;box-shadow:0 .4vh 1.5vh rgba(102,126,234,.4)}body.theme-dark .tutorial-launch-button{background:linear-gradient(135deg,#34495e 0,#2c3e50 100%);box-shadow:0 .4vh 1.5vh rgba(52,73,94,.4)}.tutorial-launch-button:hover{transform:translateY(-.2vh);box-shadow:0 .6vh 2vh rgba(102,126,234,.6)}body.theme-dark .tutorial-launch-button:hover{box-shadow:0 .6vh 2vh rgba(52,73,94,.6)}.tutorial-launch-button:active{transform:translateY(0)}.tutorial-back-button{padding:1vh 2vh;font-size:2.2vh;cursor:pointer;border:none;border-radius:.8vh;background:#6c757d;color:#fff;transition:background .2s;font-weight:500;position:absolute;top:2vh;right:2vh;z-index:1000}.tutorial-back-button:hover{background:#5a6268}@keyframes tutorialHintFadeIn{from{opacity:0;transform:translateY(-1vh)}to{opacity:1;transform:translateY(0)}}@keyframes tutorialHintFadeOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1vh)}}@keyframes tutorialCompletionSlideIn{from{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}#completed-art-modal{position:fixed;inset:0;background:radial-gradient(120vh 80vh at 50% 50%,rgba(0,0,0,.5),rgba(0,0,0,.85));display:none;align-items:center;justify-content:center;z-index:1200}.completed-modal-content{background:linear-gradient(165deg,rgba(255,255,255,.95),rgba(255,255,255,.9));border-radius:1.6vh;padding:3vh;width:auto;max-width:96vw;box-shadow:0 2vh 6vh rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;animation:220ms modal-pop-in}body.theme-dark .completed-modal-content{background:linear-gradient(165deg,rgba(28,32,38,.96),rgba(22,25,31,.94));box-shadow:0 2vh 6vh rgba(0,0,0,.7)}.completed-modal-preview{height:40vh;background:#f8f9fa;border-radius:1vh;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 1.2vh 3vh rgba(0,0,0,.15),inset 0 .3vh .6vh rgba(0,0,0,.06)}body.theme-dark .completed-modal-preview{background:var(--art-preview-bg)}.completed-modal-preview canvas{border-radius:.8vh}.completed-modal-info{color:#6c757d;font-size:1.8vh;margin-top:1.4vh;text-align:center}body.theme-dark .completed-modal-info{color:var(--text-soft)}.completed-modal-buttons{display:flex;gap:1vh;margin-top:2vh;flex-direction:column-reverse;align-content:center;align-items:stretch;justify-content:center;flex-wrap:nowrap;width:100%}.completed-modal-buttons .btn{background:#17a2b8;color:#fff;border:none;padding:1.4vh 2vh;border-radius:1vh;cursor:pointer;font-size:1.8vh;display:flex;align-items:center;justify-content:center;gap:.8vh;box-shadow:0 .8vh 2vh rgba(0,0,0,.16);font-weight:800;transition:.3s}.completed-modal-buttons .btn.secondary{background:#6c5ce7}.completed-modal-buttons .btn:hover{filter:brightness(.96);transform:translateY(-.1vh)}.completed-modal-buttons .btn:active{transform:translateY(0)}.completed-modal-buttons .btn .btn-icon{display:inline-flex;align-items:center;justify-content:center}body.layout-vertical .completed-modal-content{padding:2vh;margin:1vh;max-width:98vw}body.layout-vertical .completed-modal-preview{height:30vh}body.layout-vertical .completed-modal-info{font-size:1.6vh;margin-top:1vh}body.layout-vertical .completed-modal-buttons .btn{padding:1.2vh 1.8vh;font-size:1.6vh}@keyframes modal-pop-in{0%{transform:translateY(.6vh) scale(.98);opacity:0}100%{transform:translateY(0) scale(1);opacity:1}}