@import"https://fonts.googleapis.com/css2?family=MedievalSharp&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;place-items:initial;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg: #2a1a0f;--bg-dark: #1a120b;--fg: #e8eefc;--muted: #9bb0d3;--card: rgba(255, 255, 255, .06);--card-hover: rgba(255, 255, 255, .1);--border: rgba(255, 255, 255, .12);--primary: #64ffb6;--primary-dark: #4ade80;--danger: #ef4444;--warning: #fb923c;--accent: #7c3aed;--priority-low: #4ade80;--priority-medium: #facc15;--priority-high: #fb923c;--priority-urgent: #ef4444}*{box-sizing:border-box}body{margin:0;background:#0b1020;color:var(--fg);font-family:Segoe UI,system-ui,-apple-system,sans-serif;min-height:100vh;touch-action:pan-x pan-y;overscroll-behavior:none}.app{min-height:100vh;width:100%}.screen{min-height:100vh}.wrap{max-width:980px;margin:0 auto;padding:20px;display:grid;gap:14px}.home-screen{position:fixed;inset:0;display:flex;flex-direction:column}.home-screen.tutorial-active .home-navbar,.home-screen.tutorial-active .fullscreen-canvas-container{transition:opacity .25s ease}.home-screen.tutorial-active .home-tutorial,.home-screen.tutorial-active .home-tutorial-card,.home-screen.tutorial-active.tutorial-step-2 .home-navbar,.home-screen.tutorial-active.tutorial-step-3 .home-navbar{opacity:1}.home-screen.tutorial-active .home-navbar{opacity:.4}.home-screen.tutorial-active.tutorial-step-2 .fullscreen-canvas-container:after,.home-screen.tutorial-active.tutorial-step-3 .fullscreen-canvas-container:after{content:"";position:absolute;inset:0;background:#00000073;z-index:1;pointer-events:none}.tutorial-highlight{opacity:1!important;position:relative;z-index:6;box-shadow:0 0 18px #7cffc880}.home-navbar{width:100%;z-index:5}.fullscreen-canvas-container{position:relative;flex:1;width:100%;min-height:0;background:#0b1020;overflow:hidden}.fullscreen-canvas-container canvas{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;image-rendering:crisp-edges}.home-tutorial{position:absolute;left:50%;bottom:64px;transform:translate(-50%);z-index:9;width:min(520px,92%);display:flex;justify-content:center;pointer-events:none}.home-tutorial.step-moon{inset:70px 24px auto auto;transform:none;width:min(380px,90%);justify-content:flex-end}.home-tutorial.step-streak{inset:70px 110px auto auto;transform:none;width:min(360px,88%);justify-content:flex-end}.home-tutorial.step-add-quest{inset:70px auto auto 24px;transform:none;width:min(360px,88%);justify-content:flex-start}.home-tutorial-card{position:relative;padding:12px 16px 14px;border:1px solid rgba(124,255,200,.55);border-radius:12px;background:#080c16;color:#e6f8ee;font-family:MedievalSharp,cursive;text-align:center;box-shadow:0 10px 18px #00000073;pointer-events:auto}.home-tutorial-title{color:#7cffc8;font-size:.95rem;letter-spacing:1px;text-transform:uppercase}.home-tutorial-body{margin-top:4px;font-size:.95rem}.home-tutorial-dismiss{margin-top:10px;padding:6px 12px;border-radius:8px;border:1px solid rgba(201,162,39,.6);background:linear-gradient(180deg,#3d2a1a,#2a1a0f);color:#f4e4bc;font-family:inherit;font-size:.9rem;cursor:pointer}.home-tutorial-next{margin-top:10px;padding:6px 12px;border-radius:8px;border:1px solid rgba(124,255,200,.7);background:#0a0e1acc;color:#e6f8ee;font-family:inherit;font-size:.9rem;cursor:pointer}.home-tutorial-next:hover{background:#101624e6;border-color:#7cffc8f2}.home-tutorial-dismiss:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227}.home-tutorial-arrow{position:absolute;left:50%;bottom:-8px;width:14px;height:14px;transform:translate(-50%) rotate(45deg);background:#080c16;border-right:1px solid rgba(124,255,200,.55);border-bottom:1px solid rgba(124,255,200,.55)}.home-tutorial-arrow.arrow-right{inset:50% -8px auto auto;transform:translateY(-50%) rotate(45deg)}.home-tutorial-arrow.arrow-up{inset:-8px auto auto 24px;transform:rotate(45deg);border-right:1px solid rgba(124,255,200,.55);border-bottom:1px solid rgba(124,255,200,.55)}.canvas-overlay-ui{position:absolute;top:0;left:0;right:0;padding:20px;z-index:10;pointer-events:none;display:flex;justify-content:space-between;align-items:flex-start}.medieval-navbar{pointer-events:auto;position:relative;padding:12px 22px;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border-bottom:2px solid #8b6914;box-shadow:0 8px 18px #00000059,inset 0 1px #ffffff14;font-family:MedievalSharp,cursive}.navbar-section{display:flex;align-items:center;gap:12px;min-width:0}.navbar-left{flex:1}.navbar-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);justify-content:center;pointer-events:none}.navbar-right{justify-content:flex-end}.navbar-title{position:relative;display:inline-block;padding:4px 18px 8px;color:#f4e4bc;font-size:3.5rem;font-weight:900;letter-spacing:3px;text-transform:uppercase;background:linear-gradient(180deg,#fff8e6,#ffd99a 45%,#c98a2f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 0 2px rgba(44,26,12,.85),0 2px 0 rgba(68,42,20,.85),0 2px 6px rgba(0,0,0,.6)}.navbar-title:before,.navbar-title:after{content:"";position:absolute;top:50%;width:48px;height:2px;background:linear-gradient(90deg,#f4e4bc00,#f4e4bcf2);transform:translateY(-50%)}.navbar-title:before{right:100%;margin-right:12px}.navbar-title:after{left:100%;margin-left:12px}.medieval-navbar .btn-medieval{margin:0}.navbar-btn{font-size:1.2rem;padding:12px 20px;letter-spacing:1px}.auth-panel.navbar-auth{margin:0;align-items:center;flex-direction:row;gap:12px}.streak-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:2px solid #8b6914;background:#140c06bf;color:#f4e4bc;font-family:MedievalSharp,cursive;font-size:.95rem;letter-spacing:.5px}.streak-icon{width:18px;height:18px;fill:#ff7a45;filter:drop-shadow(0 0 3px rgba(255,122,69,.6))}.streak-count{min-width:12px;text-align:right}.streak-info-btn{width:26px;height:26px;border-radius:50%;border:2px solid #8b6914;background:#140c06bf;color:#f4e4bc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-family:MedievalSharp,cursive;line-height:1}.streak-info-btn:hover{background:#1e140ad9}.streak-info-btn:focus-visible{outline:2px solid #f4e4bc;outline-offset:2px}.streak-info-icon{font-size:.95rem;font-weight:700;transform:translateY(-1px)}.auth-panel.navbar-auth .auth-user{background:#3d2a1a1f}.auth-menu{position:relative}.auth-avatar-btn{padding:0;width:48px;height:48px;border-radius:50%;border:2px solid #8b6914;background:#140c06cc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden}.auth-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.auth-avatar-fallback{width:100%;height:100%;border-radius:50%;border:2px solid #8b6914;display:inline-flex;align-items:center;justify-content:center;font-family:MedievalSharp,cursive;color:#f4e4bc;background:#140c06cc}.auth-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:#140c06f2;border:2px solid #8b6914;border-radius:8px;box-shadow:0 10px 20px #00000073;display:flex;flex-direction:column;padding:6px;z-index:10}.auth-dropdown-item{font-family:MedievalSharp,cursive;color:#f4e4bc;background:transparent;border:1px solid transparent;border-radius:6px;text-align:left;padding:10px 12px;cursor:pointer}.auth-dropdown-item:hover{border-color:#c9a227;background:#3d2a1a59}.settings-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:240px;background:#140c06f7;border:2px solid #8b6914;border-radius:10px;box-shadow:0 12px 24px #0000008c;padding:12px;z-index:11;display:flex;flex-direction:column;gap:12px}.settings-header{display:flex;align-items:center;justify-content:space-between;font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:1rem}.settings-close{background:transparent;border:none;color:#f4e4bc;font-size:1.4rem;cursor:pointer;line-height:1}.settings-row{display:flex;flex-direction:column;gap:6px;font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:.95rem}.settings-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px}.settings-toggle-controls{display:inline-flex;align-items:center;gap:8px}.settings-toggle-text{font-size:.85rem;color:#d9c69b}.settings-label{font-size:.9rem;color:#d9c69b}.settings-slider-row{display:flex;align-items:center;gap:10px}.settings-slider-row input[type=range]{flex:1;accent-color:#c9a227}.settings-value{min-width:40px;text-align:right;font-size:.85rem;color:#f4e4bc}.navbar-auth-btn{width:44px;height:44px;padding:8px}.auth-panel{pointer-events:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-end;margin-top:30px;margin-right:30px}.btn-auth{font-size:1.2rem;padding:14px 24px}.btn-auth-icon{padding:10px;width:56px;height:56px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.google-icon{font-family:MedievalSharp,cursive;font-size:1.4rem;color:#f4e4bc}.auth-user{display:flex;align-items:center;gap:10px;background:#0000004d;border:2px solid #8b6914;border-radius:10px;padding:8px 12px}.auth-avatar{width:36px;height:36px;border-radius:50%;border:2px solid #8b6914}.auth-details{display:flex;flex-direction:column;align-items:flex-end}.auth-name{font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:.9rem}.auth-error{font-size:.8rem;color:#ffb4b4;font-family:MedievalSharp,cursive;background:#0006;padding:6px 10px;border-radius:6px;border:1px solid #8b4444}@media(max-width:900px){.medieval-navbar{padding:10px 16px}.navbar-btn{font-size:1rem;padding:10px 14px}.navbar-auth-btn{width:40px;height:40px}.auth-panel{margin-top:20px;margin-right:20px}.btn-auth{font-size:1rem;padding:12px 20px}}@media(max-width:600px){.medieval-navbar{flex-direction:column;align-items:stretch;gap:10px}.navbar-left,.navbar-center,.navbar-right,.navbar-auth{justify-content:center}.auth-panel{margin-top:14px;margin-right:14px}.btn-auth{font-size:.9rem;padding:10px 16px}}.canvas-overlay-ui .coins-display,.canvas-overlay-ui .btn-medieval{pointer-events:auto}.canvas-overlay-ui .btn-medieval{margin-top:30px;margin-left:30px}.btn-medieval{font-family:MedievalSharp,cursive;font-size:2.2rem;padding:24px 48px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:3px solid #8b6914;border-radius:6px;color:#f4e4bc;cursor:pointer;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:0 6px 16px #00000080,inset 0 2px #ffffff1a;transition:all .2s ease;letter-spacing:2px}.btn-medieval:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227;transform:translateY(-3px);box-shadow:0 10px 20px #0009,inset 0 2px #ffffff26}@media(max-width:900px){.btn-medieval{font-size:1.6rem;padding:18px 32px;letter-spacing:1px}.canvas-overlay-ui .btn-medieval{margin-top:20px;margin-left:20px}}@media(max-width:600px){.btn-medieval{font-size:1.2rem;padding:14px 22px;border-width:2px;box-shadow:0 4px 12px #00000073,inset 0 2px #ffffff1a}.btn-medieval:hover{transform:translateY(-2px)}}@media(max-width:420px){.btn-medieval{font-size:1rem;padding:10px 16px}.canvas-overlay-ui{padding:12px}.canvas-overlay-ui .btn-medieval{margin-top:12px;margin-left:12px}.home-tutorial{bottom:28px}.home-tutorial.step-moon,.home-tutorial.step-streak{right:12px;top:54px}.home-tutorial.step-add-quest{left:12px;top:54px}.home-tutorial-title,.home-tutorial-body{font-size:.85rem}}.medieval-navbar .navbar-btn{font-size:1.2rem;padding:12px 20px;letter-spacing:1px}@media(max-width:900px){.medieval-navbar .navbar-btn{font-size:1rem;padding:10px 14px}}@media(max-width:600px){.medieval-navbar .navbar-btn{font-size:.9rem;padding:10px 16px}}.coins-display{display:flex;align-items:center;gap:6px;background:#0000004d;padding:8px 14px;border-radius:20px;font-weight:600}.coin-icon{font-size:1.1rem}.btn{padding:10px 16px;border-radius:10px;border:1px solid var(--border);background:#ffffff14;color:var(--fg);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.btn:hover{background:#ffffff26;transform:translateY(-1px)}.btn-primary{background:var(--primary);color:#0b1020;border-color:var(--primary);font-weight:600}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.btn-add-task{background:linear-gradient(135deg,var(--primary) 0%,#22d3ee 100%);color:#0b1020;border:none;font-weight:600}.btn-back{padding:8px 14px;font-family:MedievalSharp,cursive}.modal-overlay{position:fixed;inset:0;background:transparent;display:flex;justify-content:flex-start;align-items:flex-start;padding:20px;z-index:1000;pointer-events:none}.modal{background:linear-gradient(180deg,#1a2444,#0f172a);border:1px solid var(--border);border-radius:16px;padding:24px;width:100%;max-width:380px;box-shadow:0 20px 60px #00000080;pointer-events:auto}.add-task-modal{margin-top:20px;margin-left:20px;max-width:380px;background:linear-gradient(180deg,#d4c4a8,#e8dcc4 5%,#f4e8d4 15%,#f0e4cc,#e8dcc4 85%,#d4c4a8 95%,#c4b498);border:none;border-radius:8px;padding:0;position:relative;box-shadow:0 20px 60px #0009,inset 0 0 30px #8b69141a}.add-task-modal:before,.add-task-modal:after{content:"";position:absolute;left:-12px;right:-12px;height:28px;background:linear-gradient(90deg,#5c4a32,#8b7355 10%,#a08060,#8b7355,#a08060,#8b7355 90%,#5c4a32);border-radius:14px;box-shadow:0 4px 8px #0006,inset 0 2px 4px #fff3,inset 0 -2px 4px #0000004d}.add-task-modal:before{top:-14px}.add-task-modal:after{bottom:-14px}.add-task-modal .modal-header{padding:28px 28px 12px;border-bottom:2px solid rgba(139,105,20,.3);margin-bottom:0}.add-task-modal .modal-header h2{font-family:MedievalSharp,cursive;font-size:1.8rem;color:#3d2a1a;text-shadow:1px 1px 0 rgba(255,255,255,.5);margin:0}.add-task-modal .modal-close{color:#5c4a32;font-size:28px;font-weight:700}.add-task-modal .modal-form{padding:20px 28px 28px}.add-task-modal .form-group span{font-family:MedievalSharp,cursive;font-size:1rem;color:#5c4a32}.add-task-modal .form-group input,.add-task-modal .form-group select{background:#fff9;border:2px solid #8b7355;border-radius:6px;color:#3d2a1a;font-size:15px}.add-task-modal .form-group input:focus,.add-task-modal .form-group select:focus{border-color:#8b6914;background:#fffc}.add-task-modal .form-group select option{background:#f4e8d4;color:#3d2a1a}.add-task-modal .form-hint{font-size:.85rem;color:#6b5a42;margin:0 0 8px}.add-task-modal .deadline-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.add-task-modal .deadline-preset-btn{font-size:.8rem;padding:6px 10px;border-radius:6px;border:2px solid #8b7355;background:#ffffff80;color:#5c4a32;cursor:pointer;font-family:inherit;transition:border-color .15s,background .15s}.add-task-modal .deadline-preset-btn:hover{border-color:#8b6914;background:#ffffffb3}.add-task-modal .deadline-preset-btn.active{border-color:#6b4a12;background:#8b691433;color:#3d2a1a}.add-task-modal .deadline-datetime-label{display:flex;flex-direction:column;gap:4px}.add-task-modal .deadline-datetime-label-text{font-size:.9rem;color:#6b5a42}.add-task-modal .deadline-datetime-wrap{position:relative}.add-task-modal .deadline-datetime-input{position:relative;padding-right:44px}.add-task-modal .deadline-datetime-input::-webkit-calendar-picker-indicator{position:absolute;width:0;height:0;padding:0;margin:0;border:none;opacity:0;overflow:hidden;pointer-events:none}.add-task-modal .deadline-datetime-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:20px;height:20px;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3e%3c!--%20Parchment%20page%20(darker%20tones%20so%20it%20reads%20on%20light%20input,%20not%20white)%20--%3e%3crect%20x='2'%20y='3'%20width='20'%20height='18'%20rx='2'%20fill='%23c9b898'%20stroke='%236b5a42'%20stroke-width='1.4'/%3e%3c!--%20Top%20binding%20strip%20--%3e%3crect%20x='2'%20y='3'%20width='20'%20height='5'%20rx='2'%20fill='%23b8a078'/%3e%3cpath%20d='M2%206h20'%20stroke='%235c4a32'%20stroke-width='1'/%3e%3c!--%20Wax%20seal%20--%3e%3ccircle%20cx='18'%20cy='5.5'%20r='2'%20fill='%238b6914'%20stroke='%235c3a0a'%20stroke-width='0.8'/%3e%3ccircle%20cx='18'%20cy='5.5'%20r='0.7'%20fill='%23a08020'/%3e%3c!--%20Date%20grid%20(ink%20on%20parchment)%20--%3e%3crect%20x='5'%20y='10'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.85'/%3e%3crect%20x='9'%20y='10'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.85'/%3e%3crect%20x='13'%20y='10'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.85'/%3e%3crect%20x='17'%20y='10'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.7'/%3e%3crect%20x='5'%20y='13.5'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.7'/%3e%3crect%20x='9'%20y='13.5'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.7'/%3e%3crect%20x='13'%20y='13.5'%20width='2.8'%20height='2.2'%20rx='0.3'%20fill='%233d2a1a'%20opacity='0.7'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:contain;cursor:pointer;pointer-events:auto}.add-task-modal .btn-primary{font-family:MedievalSharp,cursive;font-size:1.2rem;padding:14px 28px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;color:#f4e4bc;text-shadow:1px 1px 2px rgba(0,0,0,.8);margin-top:8px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{margin:0;font-size:1.25rem;color:var(--fg)}.modal-close{background:none;border:none;color:var(--muted);font-size:24px;cursor:pointer;padding:4px 8px;line-height:1}.modal-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group span{font-size:12px;color:var(--muted);font-weight:500}.form-group input,.form-group select{padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:#0000004d;color:var(--fg);font-size:14px;outline:none}.screen-header{display:flex;align-items:center;justify-content:space-between;padding:14px;background:var(--card);border:1px solid var(--border);border-radius:14px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.screen-header h1{margin:0;font-size:1.5rem;font-weight:700}.task-filters{display:flex;gap:8px;padding:8px;background:var(--card);border-radius:12px}.filter-btn{flex:1;padding:10px 16px;border:none;background:transparent;color:var(--muted);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.filter-btn:hover{background:#ffffff0d}.filter-btn.active{background:var(--primary);color:#0b1020}.task-list{display:flex;flex-direction:column;gap:12px}.task-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--card);border:1px solid var(--border);border-radius:14px;cursor:pointer;transition:all .2s ease}.task-card:hover{background:var(--card-hover);transform:translate(4px);border-color:var(--primary)}.task-card.completed{opacity:.6}.task-card.completed .task-name{text-decoration:line-through}.task-priority-indicator{width:4px;height:40px;border-radius:2px;flex-shrink:0}.task-priority-indicator.low{background:var(--priority-low)}.task-priority-indicator.medium{background:var(--priority-medium)}.task-priority-indicator.high{background:var(--priority-high)}.task-priority-indicator.urgent{background:var(--priority-urgent)}.task-info{flex:1;min-width:0}.task-name{font-weight:600;font-size:1rem;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-meta{display:flex;gap:16px;font-size:12px;color:var(--muted)}.task-actions{display:flex;gap:8px}.task-action-btn{padding:8px;background:#ffffff0d;border:1px solid var(--border);border-radius:8px;color:var(--muted);cursor:pointer;transition:all .2s}.task-action-btn:hover{background:#ffffff1a;color:var(--fg)}.task-action-btn.delete:hover{background:#ef444433;border-color:var(--danger);color:var(--danger)}.priority-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.priority-badge.low{background:#4ade8033;color:var(--priority-low)}.priority-badge.medium{background:#facc1533;color:var(--priority-medium)}.priority-badge.high{background:#fb923c33;color:var(--priority-high)}.priority-badge.urgent{background:#ef444433;color:var(--priority-urgent)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--muted)}.empty-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.empty-state p{margin-bottom:20px;font-size:1.1rem}.battle-screen{min-height:100vh;touch-action:none;overscroll-behavior:none}.battle-screen.fullscreen{position:fixed;inset:0;width:100vw;height:100vh}.battle-arena{min-height:100vh;height:100vh;background:linear-gradient(180deg,#1a0a2e,#0d0d1a,#0a0a12);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .32s ease-out}.battle-arena.finisher-zoom{transform:scale(1.15);transform-origin:center 60%}.battle-arena-overlay{position:absolute;inset:0;background:#00000080;pointer-events:none}.finisher-prompt{position:absolute;top:90px;left:50%;transform:translate(-50%);padding:10px 18px;background:#0f0a14d9;border:2px solid #c9a227;border-radius:8px;color:#f4e4bc;font-family:MedievalSharp,cursive;letter-spacing:.5px;z-index:3;text-shadow:1px 1px 2px rgba(0,0,0,.8);pointer-events:none}.battle-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:transparent;border-bottom:none;position:relative;z-index:1;font-family:MedievalSharp,cursive}.battle-health-bars{position:absolute;top:34px;left:0;right:0;display:flex;justify-content:space-between;padding:0 60px;z-index:2;pointer-events:none}.health-bar-container.player-bar,.health-bar-container.monster-bar{width:200px;padding:6px;background:#0009;border:2px solid #8b6914;border-radius:6px;box-shadow:0 4px 12px #0006}.battle-timer{position:absolute;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#3d2a1a,#2a1a0f);padding:10px 28px;border-radius:8px;border:3px solid #8b6914;box-shadow:0 6px 20px #00000080,inset 0 2px #ffffff1a}.battle-timer span{font-size:1.8rem;font-weight:700;font-family:MedievalSharp,cursive;color:#f4e4bc;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.battle-task-name{color:#f4e4bc;font-size:14px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-flee{position:absolute;left:20px;bottom:20px;font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:6px;color:#f4e4bc;text-shadow:1px 1px 2px rgba(0,0,0,.8);padding:10px 16px;z-index:2}.battle-controls .btn-flee{position:static;padding:8px 12px}.btn-icon{min-width:44px;height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1}.btn-flee:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227}.battle-stage{flex:1;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:40px 80px;width:min(1100px,100%);margin:0 auto;position:relative;z-index:1}.combatant{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:16px;min-height:320px}.health-bar-container{width:280px;text-align:center}.health-bar{height:18px;background:#1a140f;border-radius:0;border:3px solid #8b6914;overflow:hidden;box-shadow:0 4px #2a1a0f,inset 0 0 0 2px #2a1a0f}.health-fill{height:100%;transition:width .3s ease;border-radius:0}.player-health .health-fill{background:linear-gradient(90deg,var(--primary-dark) 0%,var(--primary) 100%)}.monster-health .health-fill{background:linear-gradient(90deg,#dc2626 0%,var(--danger) 100%)}.health-label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.sprite-container{width:300px;height:300px;display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(circle,rgba(100,255,182,.15) 0%,transparent 70%);border-radius:50%;padding-bottom:0}.monster-side .sprite-container{background:radial-gradient(circle,rgba(239,68,68,.15) 0%,transparent 70%)}.monster-side.clickable .sprite-container{cursor:pointer;box-shadow:0 0 24px #ef444459}.monster-side.dead .battle-sprite{filter:grayscale(1) brightness(.7);opacity:.5;transform:translateY(var(--sprite-y)) scaleX(-1) rotate(-6deg)}.battle-sprite{width:var(--sprite-size, 250px);height:var(--sprite-size, 250px);image-rendering:pixelated;filter:drop-shadow(0 8px 30px rgba(0,0,0,.6));--sprite-y: 0px}.player-sprite{transform:translateY(var(--sprite-y))}.player-sprite[data-hit="1"]{filter:drop-shadow(0 0 12px rgba(255,77,77,.8)) brightness(1.2) saturate(1.4)}.monster-sprite{transform:translateY(var(--sprite-y)) scaleX(-1)}.battle-controls{position:absolute;left:50%;bottom:20px;transform:translate(-50%);display:flex;gap:12px;z-index:2}.soundcloud-player{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#08060ca6;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.soundcloud-player.is-open{opacity:1;pointer-events:auto}.soundcloud-player-card{width:min(680px,92vw);background:#111018;border:2px solid #8b6914;border-radius:10px;box-shadow:0 12px 30px #00000073;overflow:hidden}.soundcloud-player-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-family:MedievalSharp,cursive;color:#f4e4bc;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border-bottom:1px solid rgba(139,105,20,.6)}.soundcloud-player-close{border:none;background:transparent;color:#f4e4bc;font-size:1.2rem;cursor:pointer}.soundcloud-player-card iframe{display:block;width:100%;height:360px;border:0}.btn-battle{padding:14px 32px;font-size:1rem;min-width:150px}.break-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:90;overflow:hidden;animation:fadeIn .35s ease}.break-overlay-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.break-overlay-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.break-overlay-timer{display:flex;flex-direction:column;align-items:center;gap:4px;font-family:MedievalSharp,cursive;color:#f4e4bc;text-shadow:2px 2px 4px rgba(0,0,0,.8);padding:12px 24px;background:#00000059;border-radius:8px;border:1px solid rgba(139,105,20,.4)}.break-overlay-label{font-size:1.2rem;letter-spacing:2px;opacity:.95}.break-overlay-remaining{font-size:2.4rem;font-weight:700;letter-spacing:3px}.break-overlay .btn-resume{font-family:MedievalSharp,cursive;font-size:1.8rem;padding:20px 40px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:3px solid #8b6914;border-radius:6px;color:#f4e4bc;cursor:pointer;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:0 6px 16px #00000080,inset 0 2px #ffffff1a;transition:all .2s ease;letter-spacing:2px}.break-overlay .btn-resume:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227;transform:translateY(-3px);box-shadow:0 10px 20px #0009,inset 0 2px #ffffff26}@media(max-width:600px){.break-overlay-content{gap:18px}.break-overlay-label{font-size:1rem}.break-overlay-remaining{font-size:1.8rem}.break-overlay .btn-resume{font-size:1.3rem;padding:16px 28px}}.victory-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.victory-content{text-align:center;font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#f4e8d4,#e8dcc4);border:3px solid #8b6914;border-radius:10px;padding:28px 36px;min-width:260px;box-shadow:0 18px 40px #00000080,inset 0 0 20px #8b691426;animation:victoryBounce .5s ease}@keyframes victoryBounce{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.victory-content h2{font-size:2.2rem;color:#3d2a1a;margin-bottom:10px;text-shadow:2px 2px 6px rgba(0,0,0,.35)}.victory-content p{color:#5b4633;font-size:1.1rem;margin-bottom:18px}.victory-reward{display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.8rem;font-weight:700;color:#8b6914;margin-bottom:22px;animation:coinShine 1s ease-in-out infinite}@keyframes coinShine{0%,to{filter:brightness(1)}50%{filter:brightness(1.3)}}.customization-screen,.collections-screen{height:100vh;background:radial-gradient(1200px 600px at 50% 0%,#152047,var(--bg));display:flex;flex-direction:column;overflow:hidden}.collections-screen .screen-header{position:sticky;top:0;z-index:10;flex-shrink:0;background:linear-gradient(180deg,#3d2a1a,#24160b);border:none;border-bottom:2px solid #8b6914;border-radius:0;color:#f4e4bc;font-family:MedievalSharp,cursive;box-shadow:0 6px 20px #0006,inset 0 1px #ffffff14;padding:14px 24px}.collections-screen .screen-header h1{font-family:MedievalSharp,cursive;letter-spacing:1px}.collections-screen .screen-header .btn-back{font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#4a3a2a,#3a2a1f);border:2px solid #6b5a32;color:#d4c4a8}.collections-screen .screen-header .btn-back:hover{border-color:#8b6914;color:#f4e4bc}.collections-screen .screen-header .coins-display{gap:8px;padding:6px 14px;border-radius:10px;background:#140c0699;border:1px solid rgba(139,105,20,.6);color:#f4e4bc}.collections-wrap{flex:1;width:100%;max-width:100%;margin:0 auto;padding:20px;display:grid;gap:14px;overflow-y:auto}.collections-wrap .screen-header{background:linear-gradient(180deg,#3d2a1a,#24160b);border:2px solid #8b6914;color:#f4e4bc;font-family:MedievalSharp,cursive;box-shadow:0 12px 28px #00000059,inset 0 1px #ffffff14}.collections-wrap .screen-header h1{font-family:MedievalSharp,cursive;letter-spacing:1px}.collections-wrap .coins-display{gap:8px;padding:6px 10px;border-radius:10px;background:#140c0699;border:1px solid rgba(139,105,20,.6);color:#f4e4bc}.avatar-feedback{margin-top:10px;padding:12px 16px;border-radius:12px;background:#140c06b3;border:1px solid rgba(239,68,68,.6);color:#ffd0d0;font-family:MedievalSharp,cursive}.collections-content{display:grid;gap:24px}.collections-layout{grid-template-columns:220px 1fr;align-items:start}.collections-sidebar{display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#3d2a1a,#24160b);border:2px solid #8b6914;border-radius:16px;padding:18px;box-shadow:0 10px 24px #00000040,inset 0 1px #ffffff14}.collections-nav-btn{background:#140c0680;border:1px solid rgba(139,105,20,.6);color:#f4e4bc;border-radius:12px;padding:12px 14px;font-family:MedievalSharp,cursive;letter-spacing:.5px;text-align:left;cursor:pointer;transition:all .2s}.collections-nav-btn:hover{border-color:#c9a227;transform:translateY(-1px)}.collections-nav-btn.active{background:linear-gradient(180deg,#8b6914,#5d4410);color:#fff2d6;border-color:#e2b84f}.collections-gallery{background:linear-gradient(180deg,#f4e8d4,#e8dcc4);border:2px solid #8b6914;border-radius:16px;padding:24px;box-shadow:0 10px 24px #00000040,inset 0 1px #ffffff80}.collections-gallery h2{margin:0 0 20px;font-size:1.1rem;color:#5c4a32;font-weight:700;font-family:MedievalSharp,cursive;letter-spacing:.5px}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.collections-card{background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:14px;padding:14px;text-align:center;color:#f4e4bc;box-shadow:0 8px 16px #00000040,inset 0 1px #ffffff14}.collections-card-frame{height:140px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#140c0680;border:1px solid rgba(139,105,20,.5);overflow:hidden;margin-bottom:10px}.collections-card-img{max-width:100%;max-height:140px;object-fit:contain;image-rendering:pixelated}.collections-card-name{font-weight:700;font-size:.95rem}.collections-gallery.dungeons .collections-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.collections-gallery.dungeons .collections-card-frame{height:auto;padding:0}.collections-gallery.dungeons .collections-card-img{width:100%;height:auto;object-fit:cover;display:block}.current-avatar-section,.avatar-grid-section,.stats-section{background:linear-gradient(180deg,#f4e8d4,#e8dcc4);border:2px solid #8b6914;border-radius:16px;padding:24px;box-shadow:0 10px 24px #00000040,inset 0 1px #ffffff80}.current-avatar-section h2,.avatar-grid-section h2,.stats-section h2{margin:0 0 20px;font-size:1.1rem;color:#5c4a32;font-weight:700;font-family:MedievalSharp,cursive;letter-spacing:.5px}.current-avatar-display{display:flex;justify-content:center;padding:20px;background:radial-gradient(circle,#8b691440,#28180c0d 65%),linear-gradient(180deg,#3d2a1a26,#24160b26);border-radius:14px;border:1px solid rgba(139,105,20,.35)}.avatar-preview-frame{width:240px;height:240px;display:flex;align-items:center;justify-content:center;overflow:hidden}.avatar-preview{width:auto;height:320px;object-fit:none;object-position:center;image-rendering:pixelated;animation:playerIdle 1s ease-in-out infinite;filter:drop-shadow(0 10px 18px rgba(0,0,0,.35))}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.avatar-card{background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:14px;padding:16px;text-align:center;cursor:pointer;transition:all .2s;color:#f4e4bc;box-shadow:0 8px 16px #00000040,inset 0 1px #ffffff14}.avatar-card:hover{border-color:#c9a227;transform:translateY(-2px)}.avatar-card.selected{border-color:#c9a227;background:linear-gradient(180deg,#c9a22733,#3d2a1ad9)}.avatar-card.locked{opacity:.6}.avatar-card-frame{width:120px;height:120px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:0 auto 12px}.avatar-card-img{width:auto;height:120px;object-fit:none;object-position:center;image-rendering:pixelated;display:block}.avatar-card-name{font-weight:600;margin-bottom:8px}.avatar-card-cost{display:flex;align-items:center;justify-content:center;gap:4px;font-size:14px;color:#f2d28c}.avatar-card.selected .avatar-card-cost{color:#f7e2a6}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border-radius:14px;padding:20px;text-align:center;color:#f4e4bc;border:1px solid rgba(139,105,20,.7)}.stat-value{font-size:2rem;font-weight:700;color:#f2d28c;margin-bottom:4px}.stat-label{font-size:12px;color:#d2b580;text-transform:uppercase;letter-spacing:.5px}.stat-card.clickable{cursor:pointer;transition:all .2s}.stat-card.clickable:hover{background:linear-gradient(180deg,#c9a2272e,#3d2a1ad9);border:1px solid #c9a227}.stat-card.clickable.active{background:linear-gradient(180deg,#c9a2273d,#3d2a1ad9);border:1px solid #c9a227}.stat-hint{font-size:10px;color:#f2d28c;margin-top:4px;opacity:.7}.records-content{display:grid;gap:24px}.records-list{display:grid;gap:12px}.records-item{background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border-radius:12px;padding:14px 16px;color:#f4e4bc;border:1px solid rgba(139,105,20,.7)}.records-title{font-weight:700;margin-bottom:6px;color:#f2d28c}.records-meta{display:flex;flex-wrap:wrap;gap:12px 18px;font-size:13px;color:#d9c59b}.records-empty{padding:12px 0;color:#5c4a32}.records-user{margin-bottom:16px;font-size:13px;color:#5c4a32;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.records-user-id{font-size:12px;color:#7b6848}.completed-tasks-details{margin-top:20px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.completed-tasks-details h3{margin:0 0 16px;font-size:1rem;color:var(--muted);font-weight:600}.completed-tasks-list{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto}.completed-task-item{background:#0000004d;border-radius:10px;padding:14px 16px;border:1px solid var(--border)}.completed-task-name{font-weight:600;margin-bottom:8px;color:var(--fg)}.completed-task-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.meta-item{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.meta-icon{font-size:14px}.no-completed-tasks{margin-top:20px;padding:30px;text-align:center;color:var(--muted);background:var(--card);border-radius:14px}.task-overview-screen{min-height:100vh;background:radial-gradient(1200px 600px at 50% 0%,#152047,var(--bg))}.task-overview-screen.fullscreen{position:fixed;inset:0;width:100vw;height:100vh;display:flex;flex-direction:column}.quest-board-container{width:100%;max-width:900px;margin:0 auto;padding:20px}.quest-board-container.fullscreen{max-width:none;height:100%;display:flex;flex-direction:column}.quest-board-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:14px;box-shadow:0 10px 25px #00000059,inset 0 1px #ffffff14;margin-bottom:20px}.quest-board-title{font-family:MedievalSharp,cursive;font-size:2rem;color:#f4e4bc;margin:0;text-shadow:2px 2px 6px rgba(0,0,0,.7)}.btn-add-quest{font-family:MedievalSharp,cursive;font-size:1rem;padding:10px 20px;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:6px;color:#f4e4bc;cursor:pointer;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.btn-add-quest:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227}.quest-board-header .btn-back{background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:6px;color:#f4e4bc;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.quest-board-header .btn-back:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227}.bulletin-board{perspective:1000px;flex:1;min-height:0;display:flex;flex-direction:column}.board-frame{background:linear-gradient(135deg,#5c4a32,#3d2a1a);border:8px solid #2a1a0f;border-radius:8px;padding:15px;box-shadow:0 10px 40px #0009,inset 0 2px 4px #ffffff1a;flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.board-frame:before,.board-frame:after{content:"";position:absolute;top:-8px;width:74px;height:18px;background:linear-gradient(90deg,#2a1a0f,#4b2f18 18px,#6b4a2c 26px,#8b6914 28px,#c9c9c9 28px,#8a8a8a);border:2px solid #1a120b;box-shadow:0 4px 8px #0006,inset 0 1px #fff3}.board-frame:before{left:12px;transform:rotate(-12deg);transform-origin:left center}.board-frame:after{right:12px;transform:rotate(12deg);transform-origin:right center}.board-surface{background:linear-gradient(90deg,rgba(101,74,40,.22) 1px,transparent 1px),linear-gradient(rgba(101,74,40,.18) 1px,transparent 1px),linear-gradient(90deg,#3e29132e,#583b1e14),repeating-linear-gradient(15deg,rgba(40,26,12,.08) 0 2px,transparent 2px 10px),repeating-linear-gradient(-20deg,rgba(30,20,10,.06) 0 1px,transparent 1px 12px),linear-gradient(180deg,#7a5a36,#6b4a2c 40%,#5b3b22);background-size:26px 26px,26px 26px,120px 100%,140px 140px,160px 160px,100% 100%;min-height:400px;border-radius:4px;padding:30px 30px 150px;position:relative;box-shadow:inset 0 0 30px #0006;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;scroll-padding-bottom:80px;-webkit-overflow-scrolling:touch}.board-surface:before,.board-surface:after{content:"";position:absolute;bottom:-8px;width:70px;height:16px;background:linear-gradient(90deg,#2a1a0f,#4b2f18 16px,#6b4a2c 24px,#8b6914 26px,#c9c9c9 26px,#8a8a8a);border:2px solid #1a120b;box-shadow:0 4px 8px #0006,inset 0 1px #fff3}.board-surface:before{left:14px;transform:rotate(10deg);transform-origin:left center}.board-surface:after{right:14px;transform:rotate(-10deg);transform-origin:right center}.empty-board{display:flex;align-items:center;justify-content:center;min-height:350px}.empty-scroll{background:linear-gradient(180deg,#f4e8d4,#e8dcc4);padding:40px 50px;border-radius:8px;text-align:center;box-shadow:0 4px 20px #0000004d;color:#3d2a1a}.empty-scroll p{font-family:MedievalSharp,cursive;font-size:1.3rem;margin:0 0 10px}.empty-hint{font-size:.9rem!important;color:#6b5a45;margin-bottom:20px!important}.quest-scrolls{display:flex;flex-wrap:wrap;gap:25px;justify-content:center}.quest-scrolls-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:28px;width:100%;align-items:start;justify-items:center;grid-auto-rows:min-content;grid-auto-flow:row;padding-bottom:150px;min-height:fit-content}@media(max-width:768px){.quest-scrolls-board{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(max-width:480px){.quest-scrolls-board{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.quest-scrolls-board.is-updating .quest-scroll-container{transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease}.quest-scroll-container{width:min(220px,100%);transform:rotate(var(--rotation, 0deg)) translateZ(0);transform-origin:center;will-change:transform;backface-visibility:hidden;transition:transform .3s ease,opacity .3s ease}.quest-scroll-container.quest-scroll-new{animation:pinDrop .3s ease-out;animation-delay:var(--delay, 0s);animation-fill-mode:both}@keyframes pinDrop{0%{transform:rotate(var(--rotation, 0deg)) translateY(-20px);opacity:0}to{transform:rotate(var(--rotation, 0deg)) translateY(0);opacity:1}}.tack{width:16px;height:16px;background:radial-gradient(circle at 30% 30%,#c9a227,#8b6914 60%,#5c4a32);border-radius:50%;margin:0 auto -8px;position:relative;z-index:10;box-shadow:0 2px 4px #0006,inset 0 1px 2px #fff6}.quest-scroll{width:180px;background:linear-gradient(180deg,#c4b498,#d4c4a8 3%,#f4e8d4 8%,#f0e4cc,#f4e8d4 92%,#d4c4a8 97%,#c4b498);border-radius:4px;padding:20px 15px 25px;position:relative;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #0000004d,inset 0 0 20px #8b69141a}.quest-scroll:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 8px 25px #0006,inset 0 0 20px #8b691426}.scroll-top-curl,.scroll-bottom-curl{position:absolute;left:-5px;right:-5px;height:12px;background:linear-gradient(90deg,#8b7355,#a08060 20%,#c4b498,#a08060 80%,#8b7355);border-radius:6px;box-shadow:0 2px 4px #0000004d}.scroll-top-curl{top:-6px}.scroll-bottom-curl{bottom:-6px}.scroll-content{text-align:center}.priority-seal{font-family:MedievalSharp,cursive;font-size:.7rem;padding:4px 10px;border-radius:12px;margin-bottom:10px;display:inline-block;text-transform:uppercase;font-weight:700}.priority-seal.low{background:#4ade804d;color:#2d5a3a;border:1px solid #4ade80}.priority-seal.medium{background:#facc154d;color:#6b5a20;border:1px solid #facc15}.priority-seal.high{background:#fb923c4d;color:#8b4513;border:1px solid #fb923c}.priority-seal.urgent{background:#ef44444d;color:#8b1a1a;border:1px solid #ef4444}.quest-name{font-family:MedievalSharp,cursive;font-size:1rem;color:#3d2a1a;margin-bottom:12px;word-break:break-word;line-height:1.3}.quest-details{display:flex;flex-direction:column;gap:6px}.quest-detail{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.75rem;color:#5c4a32}.detail-icon{font-size:.85rem}.detail-value{font-family:MedievalSharp,cursive}.time-remaining .detail-value{color:#8b4513;font-weight:700}.start-quest-btn{position:absolute;bottom:-15px;left:50%;transform:translate(-50%);font-family:MedievalSharp,cursive;font-size:.8rem;padding:6px 16px;background:linear-gradient(180deg,#2d5a3a,#1a3a22);border:2px solid #4ade80;border-radius:15px;color:#b7ffd6;cursor:pointer;opacity:0;transition:opacity .2s,transform .2s}.quest-scroll:hover .start-quest-btn{opacity:1}.start-quest-btn:hover{transform:translate(-50%) scale(1.1);background:linear-gradient(180deg,#3d6a4a,#2a4a32)}.delete-quest-btn{position:absolute;top:12px;right:8px;width:20px;height:20px;background:#8b44444d;border:1px solid #8b4444;border-radius:50%;color:#5c3030;font-size:10px;cursor:pointer;opacity:0;transition:opacity .2s;display:flex;align-items:center;justify-content:center;line-height:1}.quest-scroll:hover .delete-quest-btn{opacity:1}.delete-quest-btn:hover{background:#ef444480;color:#fff}.friends-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:320px;max-width:380px;background:#140c06f7;border:2px solid #8b6914;border-radius:10px;box-shadow:0 12px 24px #0000008c;padding:12px;z-index:11;display:flex;flex-direction:column;gap:12px;max-height:500px;overflow-y:auto}.friends-header{display:flex;align-items:center;justify-content:space-between;font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:1.1rem;padding-bottom:8px;border-bottom:1px solid rgba(139,105,20,.4)}.friends-close{background:transparent;border:none;color:#f4e4bc;font-size:1.4rem;cursor:pointer;line-height:1;transition:color .2s}.friends-close:hover{color:#c9a227}.friends-body{display:flex;flex-direction:column;gap:16px}.add-friend-section{display:flex;flex-direction:column;gap:10px}.btn-add-friend{font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;border-radius:6px;color:#f4e4bc;padding:10px 16px;cursor:pointer;font-size:.95rem;transition:all .2s}.btn-add-friend:hover{background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227}.add-friend-form{display:flex;flex-direction:column;gap:8px}.friend-username-input{font-family:MedievalSharp,cursive;background:#f4e8d4e6;border:2px solid #8b6914;border-radius:6px;color:#3d2a1a;padding:10px 12px;font-size:.9rem;outline:none}.friend-username-input:focus{border-color:#c9a227;background:#f4e8d4}.friend-username-input::placeholder{color:#8b7355}.btn-send-request{font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#2d5a3a,#1a3a22);border:2px solid #4ade80;border-radius:6px;color:#b7ffd6;padding:10px 16px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-send-request:hover:not(:disabled){background:linear-gradient(180deg,#3d6a4a,#2a4a32);border-color:#64ffb6}.btn-send-request:disabled{opacity:.6;cursor:not-allowed}.friends-section-title{font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:.95rem;margin:0 0 8px;display:flex;align-items:center;gap:8px}.count-badge{background:#8b691499;color:#f4e4bc;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:700}.friend-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#ef4444;color:#fff;border-radius:10px;font-size:.7rem;font-weight:700;margin-left:6px}.friend-requests-section{border-top:1px solid rgba(139,105,20,.3);padding-top:12px}.friend-requests-list{display:flex;flex-direction:column;gap:8px}.friend-request-item{background:#3d2a1a66;border:1px solid rgba(139,105,20,.6);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.friend-request-info{display:flex;align-items:center;gap:8px}.friend-username{font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:.95rem;font-weight:600}.friend-request-actions{display:flex;gap:6px}.btn-accept,.btn-reject{font-family:MedievalSharp,cursive;flex:1;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.btn-accept{background:linear-gradient(180deg,#2d5a3a,#1a3a22);border:2px solid #4ade80;color:#b7ffd6}.btn-accept:hover:not(:disabled){background:linear-gradient(180deg,#3d6a4a,#2a4a32);border-color:#64ffb6}.btn-reject{background:linear-gradient(180deg,#5a2d2d,#3a1a1a);border:2px solid #8b4444;color:#ffb4b4}.btn-reject:hover:not(:disabled){background:linear-gradient(180deg,#6a3d3d,#4a2a2a);border-color:#ef4444}.btn-accept:disabled,.btn-reject:disabled{opacity:.6;cursor:not-allowed}.friends-list-section{border-top:1px solid rgba(139,105,20,.3);padding-top:12px}.friends-list{display:flex;flex-direction:column;gap:8px}.friend-item{background:#3d2a1a66;border:1px solid rgba(139,105,20,.6);border-radius:8px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;position:relative}.friend-info{flex:1;display:flex;align-items:center;gap:8px}.btn-friend-options{background:transparent;border:1px solid rgba(139,105,20,.5);border-radius:4px;color:#f4e4bc;padding:4px 10px;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.btn-friend-options:hover{background:#3d2a1a99;border-color:#c9a227}.friend-options-menu{position:absolute;right:0;top:calc(100% + 4px);background:#140c06f2;border:2px solid #8b6914;border-radius:6px;padding:4px;z-index:10;min-width:140px}.btn-remove-friend{font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#5a2d2d,#3a1a1a);border:2px solid #8b4444;border-radius:6px;color:#ffb4b4;padding:8px 12px;cursor:pointer;font-size:.85rem;width:100%;text-align:center;transition:all .2s}.btn-remove-friend:hover:not(:disabled){background:linear-gradient(180deg,#6a3d3d,#4a2a2a);border-color:#ef4444}.btn-remove-friend:disabled{opacity:.6;cursor:not-allowed}.friends-empty{font-family:MedievalSharp,cursive;color:#d9c59b;font-size:.9rem;text-align:center;padding:20px 10px}.online-indicator{font-size:.7rem;line-height:1}.online-indicator.online{color:#4ade80}.online-indicator.offline{color:#6b7280}.friend-summary-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.friend-summary-modal{font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#281c10fa,#19120afa);border:3px solid #8b6914;border-radius:12px;box-shadow:0 8px 32px #000c,inset 0 1px #ffffff1a;padding:24px;max-width:450px;width:100%;max-height:90vh;overflow-y:auto}.friend-summary-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid rgba(139,105,20,.4)}.friend-summary-title{font-size:1.5rem;color:#f4e4bc;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.6)}.friend-summary-close{background:transparent;border:2px solid rgba(139,105,20,.6);border-radius:4px;color:#f4e4bc;font-size:1.5rem;line-height:1;padding:4px 12px;cursor:pointer;transition:all .2s}.friend-summary-close:hover{background:#3d2a1a99;border-color:#c9a227}.friend-summary-loading,.friend-summary-error{font-family:MedievalSharp,cursive;color:#d9c59b;text-align:center;padding:40px 20px;font-size:1rem}.friend-summary-content{display:flex;flex-direction:column;gap:20px}.friend-summary-status{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;background:#3d2a1a4d;border:1px solid rgba(139,105,20,.4);border-radius:8px}.status-indicator{font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:8px}.status-indicator.online{color:#4ade80}.status-indicator.offline{color:#9ca3af}.last-seen{font-size:.85rem;color:#a89763}.friend-summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.summary-stat-card{background:#3d2a1a66;border:2px solid rgba(139,105,20,.6);border-radius:10px;padding:20px;text-align:center;transition:all .3s}.summary-stat-card:hover{border-color:#c9a227;transform:translateY(-2px);box-shadow:0 4px 12px #8b69144d}.stat-icon{font-size:2rem;margin-bottom:8px}.stat-value{font-size:1.5rem;color:#f4e4bc;font-weight:700;margin-bottom:4px;text-shadow:1px 1px 2px rgba(0,0,0,.6)}.stat-label{font-size:.85rem;color:#a89763;text-transform:uppercase;letter-spacing:.5px}@media(max-width:600px){.friend-summary-modal{padding:20px;max-width:95vw}.friend-summary-stats{grid-template-columns:1fr}}@media(max-width:600px){.friends-panel{min-width:280px;max-width:calc(100vw - 40px)}}.username-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.username-modal{background:linear-gradient(180deg,#f4e8d4,#e8dcc4);border:3px solid #8b6914;border-radius:12px;padding:40px;max-width:450px;width:90%;box-shadow:0 20px 60px #000000b3,inset 0 0 30px #8b69141a;animation:modalAppear .3s ease}@keyframes modalAppear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.username-modal-title{font-family:MedievalSharp,cursive;font-size:1.8rem;color:#3d2a1a;text-align:center;margin-bottom:16px;text-shadow:1px 1px 0 rgba(255,255,255,.5)}.username-modal-description{font-family:MedievalSharp,cursive;color:#5c4a32;text-align:center;margin-bottom:24px;font-size:1rem;line-height:1.4}.username-input{width:100%;padding:12px 16px;border:2px solid #8b6914;border-radius:8px;font-family:MedievalSharp,cursive;font-size:1rem;background:#ffffffe6;color:#3d2a1a;outline:none;transition:all .2s;box-sizing:border-box}.username-input:focus{border-color:#c9a227;background:#fff;box-shadow:0 0 0 3px #c9a22733}.username-input:disabled{opacity:.6;cursor:not-allowed}.username-input::placeholder{color:#8b7355}.username-error{color:#ef4444;font-family:MedievalSharp,cursive;font-size:.9rem;margin-top:8px;text-align:center;animation:errorShake .3s ease}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.btn-create-username{width:100%;margin-top:20px;font-family:MedievalSharp,cursive;background:linear-gradient(180deg,#3d2a1a,#2a1a0f);border:2px solid #8b6914;color:#f4e4bc;padding:14px;font-size:1.1rem;border-radius:8px;cursor:pointer;text-shadow:1px 1px 2px rgba(0,0,0,.8);box-shadow:0 4px 12px #0000004d,inset 0 1px #ffffff1a;transition:all .2s}.btn-create-username:hover:not(:disabled){background:linear-gradient(180deg,#4d3a2a,#3a2a1f);border-color:#c9a227;transform:translateY(-2px);box-shadow:0 6px 16px #0006,inset 0 1px #ffffff26}.btn-create-username:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-avatar-btn{position:relative}.auth-avatar-btn:after{content:attr(title);position:absolute;bottom:calc(100% + 8px);right:0;background:#140c06f2;border:2px solid #8b6914;border-radius:6px;padding:6px 12px;font-family:MedievalSharp,cursive;color:#f4e4bc;font-size:.85rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100;box-shadow:0 4px 12px #0006}.auth-avatar-btn:hover:after{opacity:1}@media(max-width:600px){.username-modal{padding:30px 20px}.username-modal-title{font-size:1.5rem}.username-modal-description{font-size:.9rem}}@media(max-width:768px){.battle-screen.fullscreen{height:100dvh}.battle-arena{height:100dvh;min-height:100dvh}.battle-arena.finisher-zoom{transform:scale(1.05)}.battle-header{padding:14px 16px}.battle-health-bars{top:16px;padding:0 14px;gap:10px}.health-bar-container.player-bar,.health-bar-container.monster-bar{width:140px;padding:4px}.battle-timer{padding:6px 16px;border-width:2px}.battle-timer span{font-size:1.25rem;letter-spacing:1px}.battle-stage{flex-direction:column;gap:16px;padding:20px 16px 90px}.combatant{min-height:200px}.sprite-container{width:220px;height:220px}.battle-sprite{--sprite-size: min(240px, 70vw) !important}.btn-flee{left:12px;bottom:12px;padding:8px 12px}.battle-controls{bottom:12px}.finisher-prompt{top:70px;padding:8px 14px;font-size:.9rem}.stats-grid{grid-template-columns:1fr}}
