:root{--color-bg: #1C1412;--color-surface: #271E19;--color-surface-alt: #322720;--color-text: #F0EAE2;--color-text-secondary: #C4B5A3;--color-text-tertiary: #8A7B6B;--color-accent: #EEDABA;--color-accent-hover: #f5dbb5;--color-success: #7BAF6E;--color-error: #D4715E;--color-border: #3D3229;--color-subtle: #231A15;--color-overlay: rgba(20, 12, 8, .7);--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--shadow-sm: 0 2px 8px rgba(15, 8, 4, .3);--shadow-md: 0 4px 20px rgba(15, 8, 4, .4);--shadow-lg: 0 12px 40px rgba(15, 8, 4, .5);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);height:100vh;height:100dvh;line-height:1.6;font-size:15px;-webkit-tap-highlight-color:transparent;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}button{font-family:var(--font-body);cursor:pointer;border:none;background:none;font-size:inherit;color:inherit;touch-action:manipulation}input,textarea,select{font-family:var(--font-body);font-size:16px;touch-action:manipulation;color:var(--color-text)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}#app{opacity:0;height:100%;display:flex;flex-direction:column;overflow:hidden}#app.ready{opacity:1;transition:opacity .15s ease}.login-page{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow-x:clip}.login-content{width:100%;max-width:480px;position:relative;z-index:1}.bg-watermark{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.bg-watermark:before{content:"Taskitos";position:absolute;bottom:-8%;right:-5%;font-family:var(--font-display);font-weight:800;font-size:clamp(20rem,40vw,45rem);color:var(--color-text);opacity:.02;line-height:1;letter-spacing:-.04em;white-space:nowrap;-webkit-user-select:none;user-select:none}.hero{text-align:center;margin-bottom:40px}.wordmark{font-family:var(--font-display);font-weight:800;font-size:clamp(3.5rem,14vw,6.5rem);color:var(--color-accent);letter-spacing:-.03em;line-height:1;font-optical-sizing:auto}.wordmark-accent{display:block;width:56px;height:3px;background:linear-gradient(90deg,var(--color-accent),var(--color-text));border-radius:2px;margin:8px auto 0}.subtitle{font-family:var(--font-body);font-size:1rem;font-weight:400;color:var(--color-text-tertiary);margin-top:12px;letter-spacing:.02em}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px 24px 28px;margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap input{width:100%;padding:11px 14px;padding-right:2.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.95rem;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-wrap input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #f1cd9d26}.input-wrap input::placeholder{color:var(--color-text-tertiary)}.input-wrap .icon-btn{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);min-height:auto}.input-wrap .icon-btn:hover{background:var(--color-surface-alt);color:var(--color-text)}.input-wrap .icon-btn.btn-clear,.input-wrap .icon-btn.btn-toggle{right:.4rem}.input-wrap .icon-btn.btn-clear-left{right:2.1rem}.input-wrap.has-two-btns input{padding-right:4rem}.captcha-wrap{margin-top:1.25rem;--altcha-border-width: 0}.captcha-wrap altcha-widget{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;line-height:1.2;gap:.5rem;min-height:36px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:not(:disabled):hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #f1cd9d40}.btn-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:not(:disabled):hover{border-color:var(--color-text-tertiary);background:var(--color-surface-alt)}.btn-ghost{background:transparent;color:var(--color-text-tertiary);border:1px solid var(--color-border)}.btn-ghost:not(:disabled):hover{border-color:var(--color-text-tertiary);color:var(--color-text-secondary)}.btn-danger{background:transparent;color:var(--color-error);border:1px solid rgba(212,113,94,.25)}.btn-danger:not(:disabled):hover{background:#d4715e1a}.btn-group{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:1rem}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:28px;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg);color:var(--color-text);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.modal-panel.wide{max-width:640px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.875rem;border-bottom:1px solid var(--color-border)}.modal-head h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--color-text)}.modal-close{background:none;border:none;font-size:1.125rem;color:var(--color-text-tertiary);cursor:pointer;padding:.25rem .4rem;border-radius:var(--radius-sm);transition:background var(--transition-fast),color var(--transition-fast);line-height:1;min-height:auto}.modal-close:hover{background:var(--color-surface-alt);color:var(--color-text)}.activity-list{max-height:260px;overflow-y:auto;margin-bottom:.75rem}.activity-list::-webkit-scrollbar{width:5px}.activity-list::-webkit-scrollbar-track{background:transparent}.activity-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.select-all{padding-bottom:.625rem;margin-bottom:.625rem;border-bottom:1px solid var(--color-border)}.select-all label,.activity-item label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--color-text-secondary)}.select-all label{font-weight:700;color:var(--color-text);font-size:.9rem}.activity-item{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;border-radius:var(--radius-sm);transition:background var(--transition-fast);border:1px solid transparent}.activity-item:hover{background:var(--color-surface-alt);border-color:var(--color-border)}.activity-item label{flex:1}.activity-item input[type=checkbox],.select-all input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.score-select{min-width:60px;padding:.3rem .35rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.775rem;font-family:var(--font-body);cursor:pointer;outline:none;transition:border-color var(--transition-fast)}.score-select:focus{border-color:var(--color-accent)}.score-select option{background:var(--color-surface);color:var(--color-text)}.settings-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.settings-section h3{font-family:var(--font-display);font-size:1rem;font-weight:700;margin-bottom:.625rem;color:var(--color-text)}.settings-section p{font-size:.775rem;color:var(--color-text-tertiary);margin-bottom:.75rem;line-height:1.5}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.time-grid .form-group{margin-bottom:0}.time-grid .form-group label{font-size:.7rem}.time-grid input[type=number]{width:100%;padding:.55rem .625rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.875rem;font-family:var(--font-body);font-weight:500;text-align:center;outline:none;transition:border-color var(--transition-fast)}.time-grid input[type=number]:focus{border-color:var(--color-accent)}.time-grid input[type=number]::-webkit-inner-spin-button,.time-grid input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.time-grid input[type=number]{-moz-appearance:textfield}.time-input-wrap{position:relative}.time-input-wrap input{padding-right:1.5rem}.time-arrows{position:absolute;right:3px;top:3px;bottom:3px;display:flex;flex-direction:column;gap:0}.time-arrows button{display:flex;align-items:center;justify-content:center;flex:1;width:18px;background:transparent;border:none;color:var(--color-text-tertiary);font-size:.45rem;cursor:pointer;line-height:1;transition:color var(--transition-fast);min-height:auto;padding:0}.time-arrows button:hover{color:var(--color-accent)}.modal-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0804cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.progress-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2.25rem;width:100%;max-width:460px;text-align:center;color:var(--color-text);box-shadow:var(--shadow-lg);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.progress-card h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin-bottom:1.25rem}.spinner{width:36px;height:36px;border:2.5px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 1.25rem}.spinner.done{animation:none;border-color:var(--color-success);background:var(--color-success);display:flex;align-items:center;justify-content:center}.spinner.done:after{content:"✓";color:#fff;font-size:1rem;font-weight:700}.progress-info{display:flex;flex-direction:column;gap:.875rem}.progress-activity{padding:.875rem;background:var(--color-surface-alt);border-radius:var(--radius-sm);font-size:.85rem;color:var(--color-text-secondary);line-height:1.4}.progress-activity strong{color:var(--color-text)}.progress-counter{font-size:.8rem;color:var(--color-text-tertiary);font-weight:500}.progress-status{font-size:.8rem;color:var(--color-text-tertiary);line-height:1.5}.notif-container{position:fixed;top:1rem;right:1rem;z-index:3000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.notif{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.875rem 1rem;max-width:340px;box-shadow:var(--shadow-lg);transform:translate(380px);transition:transform .35s cubic-bezier(.16,1,.3,1);pointer-events:auto}.notif.visible{transform:translate(0)}.notif p{font-size:.8rem;line-height:1.45;color:var(--color-text-secondary)}.notif-bar-track{width:100%;height:2px;background:var(--color-surface-alt);border-radius:1px;overflow:hidden;margin-top:.5rem}.notif-bar{height:100%;background:var(--color-accent);border-radius:1px;animation:barShrink linear forwards}.app-footer{text-align:center;padding:1.5rem 1rem;font-size:.75rem;color:var(--color-text-tertiary);line-height:1.8}.app-footer a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}.app-footer a:hover{color:var(--color-accent-hover)}.discord-body{text-align:center}.discord-body h3{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:.625rem;color:var(--color-text)}.discord-body>p{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1rem;line-height:1.5}.discord-features{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.5rem}.discord-feature{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:var(--color-surface-alt);border-radius:var(--radius-sm);text-align:left;font-size:.8rem;color:var(--color-text-secondary);border:1px solid var(--color-border)}.discord-feature span:first-child{font-size:.95rem;color:var(--color-accent);flex-shrink:0;font-weight:700;width:20px;text-align:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes barShrink{0%{width:100%}to{width:0%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:600px){.login-page{padding:1.25rem}.card{padding:20px 16px;border-radius:var(--radius-md)}.modal-panel{padding:20px;border-radius:var(--radius-md)}.progress-card{padding:1.5rem}.notif{max-width:280px}.notif-container{top:.75rem;right:.75rem}.time-grid{grid-template-columns:1fr}.wordmark{font-size:clamp(2.75rem,12vw,4rem)}.bg-watermark:before{font-size:14rem}}@media(max-height:700px){.login-page{align-items:flex-start;padding-top:16px}.hero{margin-bottom:24px}.app-footer{padding:.5rem 1rem}}.eevee-mascot{position:absolute;bottom:-180px;left:-360px;width:650px;height:auto;pointer-events:none;z-index:-1;opacity:.9}@media(max-width:900px){.eevee-mascot{position:absolute;left:50%;transform:translate(-50%);bottom:-230px;width:650px;opacity:.4;z-index:-1}.app-footer{color:var(--color-text-secondary)}}@media(max-height:700px){.eevee-mascot{display:none}}.hidden{display:none!important}
