:root{--mc-dirt-dark: #372213;--mc-dirt-mid: #573d26;--mc-dirt-light: #795438;--mc-grass-green: #597d27;--mc-grass-dark: #3a5416;--mc-stone-light: #9e9e9e;--mc-stone-mid: #686868;--mc-stone-dark: #3c3c3c;--mc-wood-light: #bc8a55;--mc-wood-mid: #9c6c39;--mc-wood-dark: #5c3818;--mc-redstone-light: #ff3300;--mc-redstone-dark: #990000;--mc-gold-light: #fcfc38;--mc-gold-mid: #e8bd20;--mc-gold-dark: #967912;--mc-diamond-light: #55ffff;--mc-diamond-mid: #2db3b3;--mc-emerald-light: #55ff55;--mc-emerald-dark: #198019;--mc-parchment-bg: #e6d3a7;--mc-parchment-border: #947a46;--mc-ink-text: #2c1a0e;--font-pixel: "Press Start 2P", monospace, sans-serif;--font-reading: "VT323", monospace, sans-serif}*{box-sizing:border-box;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;width:100vw;min-height:100vh;overflow-x:hidden;overflow-y:auto;background-color:#121212;font-family:var(--font-pixel);color:#fff}.mc-background{width:100vw;min-height:100vh;background-color:var(--mc-dirt-dark);background-image:radial-gradient(var(--mc-dirt-light) 15%,transparent 16%),radial-gradient(var(--mc-dirt-mid) 15%,transparent 16%);background-size:36px 36px;background-position:0 0,18px 18px;display:flex;flex-direction:column;position:relative;overflow-x:hidden;overflow-y:auto}.mc-box{background-color:var(--mc-stone-mid);border:4px solid #000;box-shadow:inset -4px -4px 0 0 var(--mc-stone-dark),inset 4px 4px 0 0 var(--mc-stone-light);image-rendering:pixelated;position:relative}.mc-box-wood{background-color:var(--mc-wood-mid);border:4px solid #000;box-shadow:inset -4px -4px 0 0 var(--mc-wood-dark),inset 4px 4px 0 0 var(--mc-wood-light)}.mc-btn{font-family:var(--font-pixel);font-size:16px;color:#fff;background-color:var(--mc-stone-mid);border:4px solid #000;box-shadow:inset -4px -4px 0 0 var(--mc-stone-dark),inset 4px 4px 0 0 var(--mc-stone-light);padding:14px 20px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-shadow:2px 2px #000;white-space:nowrap;transition:transform .05s ease,filter .1s ease}.mc-btn:hover{filter:brightness(1.15)}.mc-btn:active{transform:translate(2px,2px);box-shadow:inset 4px 4px 0 0 var(--mc-stone-dark),inset -4px -4px 0 0 var(--mc-stone-light)}.mc-btn-redstone{background-color:#c41e1e;border-color:#000;box-shadow:inset -5px -5px #630808,inset 5px 5px #f66;font-size:20px;letter-spacing:1px;white-space:nowrap}.mc-btn-redstone:hover{background-color:#d92424}.mc-btn-redstone:active{box-shadow:inset 5px 5px #630808,inset -5px -5px #f66}.mc-btn-emerald{background-color:#199419;box-shadow:inset -4px -4px #0d4a0d,inset 4px 4px #6f6}.mc-btn-gold{background-color:var(--mc-gold-mid);color:#000;text-shadow:none;box-shadow:inset -4px -4px 0 0 var(--mc-gold-dark),inset 4px 4px 0 0 var(--mc-gold-light)}.mc-input{font-family:var(--font-pixel);font-size:16px;background-color:#1a1a1a;color:#5f5;border:4px solid #000;box-shadow:inset 4px 4px #000,inset -4px -4px #333;padding:12px 16px;outline:none}.mc-input:focus{border-color:var(--mc-emerald-light)}.mc-book-container{background-color:var(--mc-parchment-bg);border:6px solid #3d2b1f;box-shadow:inset -6px -6px #b8a274,inset 6px 6px #fff4d4,0 16px 40px #000000d9;color:var(--mc-ink-text);font-family:var(--font-reading);font-size:26px;line-height:1.45;position:relative;max-width:90vw;max-height:90vh;overflow-y:auto}.mc-ribbon{position:absolute;top:-12px;right:40px;width:28px;height:70px;background-color:#b81414;box-shadow:-3px 3px #000;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%)}.mc-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000d1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;overflow-y:auto;animation:mcFadeIn .15s ease-out}@keyframes mcFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}::-webkit-scrollbar{width:14px}::-webkit-scrollbar-track{background:#2a2a2a;border:3px solid #000}::-webkit-scrollbar-thumb{background:var(--mc-stone-mid);border:3px solid #000;box-shadow:inset -3px -3px #333,inset 3px 3px #aaa}@keyframes tickBounce{0%{transform:rotate(0)}40%{transform:rotate(-22deg) scale(1.15)}to{transform:rotate(0)}}.tick-anim{animation:tickBounce .12s cubic-bezier(.175,.885,.32,1.275)}
