:root{--bg-deep:#0d0d14;--bg-card:#15151f;--bg-hover:#1c1c2a;--accent:#e8c547;--accent-dim:#e8c54726;--accent-glow:#e8c5474d;--text-primary:#f0ede6;--text-secondary:#8b8a97;--text-muted:#4a4958;--border:#ffffff12;--border-accent:#e8c54766;--red:#e85447;--green:#47c47e;--blue:#4799e8;--purple:#a047e8;--radius:14px;--radius-sm:8px;--shadow:0 8px 32px #0006;--font-display:"Syne",sans-serif;--font-body:"DM Sans",sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#0d0d14;background:var(--bg-deep);color:#f0ede6;color:var(--text-primary);font-family:DM Sans,sans-serif;font-family:var(--font-body);font-weight:400;line-height:1.6;min-height:100vh;overflow-x:hidden}body:before{background:radial-gradient(ellipse 60% 40% at 80% 10%,#e8c5470a 0,#0000 60%),radial-gradient(ellipse 40% 60% at 10% 80%,#4799e80a 0,#0000 60%);content:"";inset:0;pointer-events:none;position:fixed;z-index:0}#root{position:relative;z-index:1}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#0d0d14;background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#4a4958;background:var(--text-muted);border-radius:3px}*{transition-duration:.15s;transition-property:background-color,border-color,color,opacity,transform,box-shadow;transition-timing-function:ease}button{cursor:pointer}button,input,select,textarea{font-family:DM Sans,sans-serif;font-family:var(--font-body)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .3s ease forwards}.header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0d0d14e6;border-bottom:1px solid var(--border);padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-inner{gap:16px;height:64px;justify-content:space-between;margin:0 auto;max-width:1100px}.header-brand,.header-inner{align-items:center;display:flex}.header-brand{flex-shrink:0;gap:10px}.brand-mark{color:var(--accent);font-size:20px;line-height:1}.brand-name{color:var(--text-primary);font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.03em}.header-controls{gap:10px}.header-controls,.search-wrap{align-items:center;display:flex}.search-wrap{position:relative}.search-icon{left:12px;pointer-events:none;position:absolute}.search-input{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;outline:none;padding:8px 12px 8px 36px;width:220px}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--border-accent)}.view-toggle{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;overflow:hidden}.view-btn{align-items:center;background:none;border:none;color:var(--text-secondary);display:flex;padding:7px 10px}.view-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.view-btn.active{background:var(--accent-dim);color:var(--accent)}.add-btn{align-items:center;background:var(--accent);border:none;border-radius:var(--radius-sm);color:#0d0d14;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;white-space:nowrap}.add-btn:hover{background:#f0d060;box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.progress-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--accent);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.progress-btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.user-profile{flex-shrink:0;position:relative}.profile-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;gap:8px;line-height:1;padding:6px 12px 6px 6px;transition:border-color .15s ease,background .15s ease,color .15s ease}.profile-btn:hover{background:var(--bg-hover);border-color:#ffffff2e;border-color:var(--border-accent,#ffffff2e);color:var(--text-primary)}.profile-btn>:first-child{align-items:center;background:var(--accent-dim);border-radius:50%;color:var(--accent);display:inline-flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.user-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 30px #00000059;display:flex;flex-direction:column;gap:10px;min-width:220px;padding:12px;position:absolute;right:0;top:calc(100% + 8px);z-index:200}.user-info .user-email{color:var(--text-primary);font-size:13px;margin:0;word-break:break-all}.user-info .user-role{color:var(--text-muted);font-size:11px;letter-spacing:.06em;margin:0;text-transform:uppercase}.logout-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;justify-content:center;padding:8px 12px}.logout-btn:hover{background:#e8544714;border-color:#e8544766;color:var(--red)}.profile-menu-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;justify-content:center;padding:8px 12px}.profile-menu-btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}@media (max-width:640px){.header{padding:0 16px}.search-input{width:140px}.add-btn span{display:none}.add-btn{padding:8px 10px}.profile-btn{padding:4px}.user-name{display:none}.user-menu{max-width:calc(100vw - 24px);min-width:min(260px,calc(100vw - 24px));right:-8px}.header{padding:0 12px}.header-inner{flex-wrap:wrap;gap:8px;height:auto;min-height:56px;padding:8px 0}.brand-name{font-size:16px}.brand-mark{font-size:18px}.header-brand{flex-shrink:0}.header-controls{flex:1 1;flex-wrap:wrap;gap:6px;justify-content:flex-end;min-width:0}.search-wrap{flex:1 1;min-width:120px;order:3;width:100%}.search-input{font-size:12px;padding:6px 8px 6px 28px;width:100%}.search-icon{height:14px;left:8px;width:14px}.view-toggle{flex-shrink:0;order:1}.view-btn{padding:5px 6px}.view-btn svg{height:16px;width:16px}.progress-btn{height:32px;order:2;padding:0;width:32px}.progress-btn svg{height:16px;width:16px}.add-btn{flex-shrink:0;order:2;padding:6px 8px}.add-btn svg{height:16px;width:16px}.user-profile{order:2}.profile-btn{height:32px;justify-content:center;padding:3px;width:32px}.profile-btn>:first-child{height:24px;width:24px}}@media (max-width:420px){.header{padding:0 10px}.header-inner{gap:6px;padding:6px 0}.brand-name{font-size:15px}.header-controls{gap:5px}.search-wrap{min-width:100px}.view-btn{padding:4px 5px}.view-btn svg{height:15px;width:15px}.add-btn,.profile-btn,.progress-btn{height:30px;width:30px}}@media (max-width:360px){.header{padding:0 8px}.brand-name{font-size:14px}.brand-mark{font-size:16px}.header-controls{gap:4px}.search-wrap{min-width:80px}.search-input{font-size:11px;padding:5px 6px 5px 26px}.view-btn{padding:3px 4px}.view-btn svg{height:14px;width:14px}}.dashboard{padding:32px 0 24px}.dashboard-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:20px}.dashboard-title{color:var(--text-primary);font-family:var(--font-display);font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1.1}.dashboard-date{color:var(--text-secondary);font-size:13px;margin-top:4px}.progress-wrap{flex-shrink:0;min-width:200px}.progress-label{color:var(--text-secondary);display:flex;font-size:12px;justify-content:space-between;margin-bottom:6px}.progress-fraction{color:var(--text-muted)}.progress-bar{background:var(--bg-card);border-radius:99px;height:5px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:99px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.dashboard-header-right{gap:16px}.dashboard-actions,.dashboard-header-right{align-items:center;display:flex;flex-wrap:wrap}.dashboard-actions{gap:8px}.dashboard-add-user-btn,.dashboard-create-btn{align-items:center;border:none;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:9px 14px;transition:transform .15s ease,filter .15s ease}.dashboard-create-btn{background:var(--accent);color:#1a1a1a}.dashboard-add-user-btn{background:var(--warning);color:#1a1a1a}.dashboard-add-user-btn:hover,.dashboard-create-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.dashboard-add-user-btn:active,.dashboard-create-btn:active{transform:translateY(0)}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr)}.stat-create{background:#0000;border-style:dashed;cursor:pointer;font-family:inherit;text-align:left}.stat-create:hover{background:var(--accent-dim);border-color:var(--accent)}.stat-create .stat-icon-wrap{background:var(--accent-dim);color:var(--accent)}.stat-create-value{color:var(--accent)}.stat-card{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:12px;padding:16px}.stat-card:hover{border-color:#ffffff1f;transform:translateY(-1px)}.stat-icon-wrap{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.stat-default .stat-icon-wrap{background:#f0ede614;color:var(--text-secondary)}.stat-blue .stat-icon-wrap{background:#4799e81f;color:var(--blue)}.stat-green .stat-icon-wrap{background:#47c47e1f;color:var(--green)}.stat-red .stat-icon-wrap{background:#e854471f;color:var(--red)}.stat-yellow .stat-icon-wrap{background:var(--accent-dim);color:var(--accent)}.stat-body{display:flex;flex-direction:column;min-width:0}.stat-value{color:var(--text-primary);font-family:var(--font-display);font-size:24px}.stat-label{color:var(--text-secondary);font-size:12px;margin-top:3px}.stat-sub{color:var(--text-muted);font-size:10px;letter-spacing:.05em;text-transform:uppercase}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.dashboard{padding:20px 0 16px}.dashboard-header{align-items:flex-start;flex-direction:column;gap:16px}.dashboard-header-right{align-items:stretch;flex-direction:column;gap:12px;width:100%}.progress-wrap{min-width:0;min-width:auto;width:100%}.dashboard-actions{justify-content:flex-start}.stats-grid{gap:10px;grid-template-columns:repeat(3,1fr)}.stat-card{padding:12px}.stat-icon-wrap{height:32px;width:32px}.stat-value{font-size:20px}.stat-label{font-size:11px}}@media (max-width:560px){.dashboard{padding:12px 0 8px}.dashboard-title{font-size:18px}.dashboard-date{font-size:11px}.dashboard-header{gap:10px;margin-bottom:12px}.dashboard-header-right{gap:8px}.dashboard-actions{gap:6px;width:100%}.dashboard-add-user-btn,.dashboard-create-btn{flex:1 1;font-size:11px;justify-content:center;padding:6px 10px}.dashboard-add-user-btn span,.dashboard-create-btn span{display:inline}.progress-wrap{width:100%}.stats-grid{gap:6px;grid-template-columns:repeat(3,1fr)}.stat-card{gap:6px;min-width:0;padding:8px 6px}.stat-icon-wrap{height:24px;width:24px}.stat-icon-wrap svg{height:12px;width:12px}.stat-value{font-size:14px}.stat-label{font-size:9px;margin-top:1px}.stat-sub{font-size:8px}}@media (max-width:380px){.stats-grid{gap:5px;grid-template-columns:repeat(2,1fr)}.stat-card{gap:5px;padding:6px 5px}.stat-icon-wrap{height:22px;width:22px}.stat-value{font-size:13px}.stat-label{font-size:8px}}@media (max-height:500px) and (orientation:landscape){.dashboard{padding:12px 0 8px}.dashboard-header{align-items:center;flex-direction:row;gap:16px}.dashboard-header-right{align-items:center;flex-direction:row;width:auto}.progress-wrap{max-width:200px;min-width:150px}.stats-grid{gap:8px;grid-template-columns:repeat(6,1fr)}.stat-card{padding:10px}.stat-icon-wrap{height:28px;width:28px}.stat-value{font-size:16px}.stat-label{font-size:9px}}@media (max-height:400px) and (orientation:landscape){.dashboard-title{font-size:18px}.stats-grid{gap:6px;grid-template-columns:repeat(6,1fr)}.stat-card{gap:6px;padding:8px}.stat-icon-wrap{height:24px;width:24px}.stat-icon-wrap svg{height:12px;width:12px}.stat-value{font-size:14px}.stat-label{font-size:8px}.dashboard-add-user-btn,.dashboard-create-btn{padding:6px 10px}}.activity-card{align-items:flex-start;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:12px;padding:14px 16px}.activity-card:hover{background:var(--bg-hover);border-color:#ffffff1a}.card-completed{opacity:.55}.card-overdue{border-color:#e8544733}.card-overdue:hover{border-color:#e8544759}.card-inactive{background:#ffffff05;background:var(--bg-hover,#ffffff05);border-style:dashed;opacity:.5}.card-inactive .card-title{color:var(--text-muted);text-decoration:line-through}.card-inactive .card-actions{opacity:1}.badge-inactive{background:#ffffff14;border:1px solid #ffffff26;color:var(--text-muted)}.check-btn{background:none;border:none;flex-shrink:0;margin-top:1px;padding:2px}.check-done{color:var(--green)}.check-empty{color:var(--text-muted)}.check-btn:hover .check-empty{color:var(--accent)}.card-body{flex:1 1;min-width:0}.card-top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.card-title{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.4}.title-done{color:var(--text-muted);text-decoration:line-through}.card-badges{display:flex;flex-shrink:0;flex-wrap:wrap;gap:5px}.badge{align-items:center;border-radius:99px;display:flex;font-size:10px;font-weight:600;gap:4px;letter-spacing:.06em;padding:2px 8px;text-transform:uppercase}.badge-red{background:#e854471f;color:var(--red)}.badge-yellow{background:var(--accent-dim);color:var(--accent)}.badge-blue{background:#4799e81f;color:var(--blue)}.badge-green{background:#47c47e1f;color:var(--green)}.badge-purple{background:#a047e81f;color:var(--purple)}.badge-default{background:#ffffff0f;color:var(--text-secondary)}.badge-recurring{align-items:center;background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid #a78bfa4d;color:#a78bfa;display:inline-flex;gap:3px}.card-notes{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:12px;line-height:1.5;margin-top:5px;overflow:hidden}.card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.meta-assigned,.meta-created,.meta-date{align-items:center;color:var(--text-muted);display:flex;font-size:11px;gap:4px}.meta-date.overdue{color:var(--red)}.meta-assigned{color:var(--accent);font-weight:500}.card-actions{display:flex;flex-shrink:0;gap:4px;opacity:0;transition:opacity .15s ease}.activity-card:hover .card-actions{opacity:1}.action-btn{align-items:center;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);display:flex;justify-content:center;padding:6px}.action-btn:hover{background:var(--bg-hover);border-color:#ffffff26;color:var(--text-primary)}.action-btn:disabled{cursor:not-allowed;opacity:.4}.action-complete:hover{background:#47c47e14}.action-complete.is-active,.action-complete:hover{border-color:#47c47e66;color:var(--green)}.action-deactivate:hover{border-color:#e854474d;color:var(--accent)}.action-deactivate.confirm{animation:pulse .5s ease infinite;background:#e854471a;border-color:var(--red);color:var(--red)}.action-deactivate.is-inactive{border-color:#47c47e66;color:var(--green)}.action-deactivate.is-inactive:hover{background:#47c47e14}.check-btn:disabled{cursor:not-allowed;opacity:.4}.list-view{display:flex;flex-direction:column;gap:8px}.board-view{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1fr 1fr}.board-col{display:flex;flex-direction:column;gap:8px}.board-col-header{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.08em;margin-bottom:4px;padding:10px 14px;text-transform:uppercase}.board-pending{background:#4799e81a;border:1px solid #4799e833;color:var(--blue)}.board-completed{background:#47c47e1a;border:1px solid #47c47e33;color:var(--green)}.board-count{background:#ffffff1a;border-radius:99px;font-size:11px;padding:1px 8px}.empty-state{align-items:center;display:flex;flex-direction:column;gap:8px;padding:80px 24px;text-align:center}.empty-icon{animation:pulse 2s ease infinite;color:var(--text-muted);font-size:32px}.empty-title{color:var(--text-secondary);font-family:var(--font-display);font-size:18px;font-weight:700}.empty-sub{color:var(--text-muted);font-size:13px}@media (max-width:640px){.board-view{grid-template-columns:1fr}}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:200}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:90vh;max-width:520px;overflow:hidden;width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.modal-title{font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.03em}.modal-top-actions{align-items:center;display:flex;gap:8px}.modal-close{align-items:center;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;padding:6px}.modal-close:hover{border-color:#ffffff26;color:var(--text-primary)}.btn{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:8px 14px;transition:all .2s ease}.btn-secondary{background:none;border:1px solid var(--border);color:var(--text-secondary)}.btn-secondary:hover{border-color:#ffffff26;color:var(--text-primary)}.btn-primary{background:var(--accent);color:var(--bg-deep);font-weight:600}.btn-primary:hover{background:#f0d060;box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.modal-form{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px 24px}.field{display:flex;flex-direction:column;gap:6px}.field-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr 1fr}.field-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.required{color:var(--accent)}.field-input,.field-select,.field-textarea{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;outline:none;padding:9px 12px;width:100%}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:var(--border-accent)}.field-input::placeholder,.field-textarea::placeholder{color:var(--text-muted)}.field-select{-webkit-appearance:none;appearance:none;cursor:pointer}.prio-high{color:var(--red)}.prio-medium{color:var(--accent)}.prio-low{color:var(--blue)}.field-textarea{min-height:80px;resize:vertical}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.5)}.modal-footer{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.btn-cancel{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;padding:9px 18px}.btn-cancel:hover{border-color:#ffffff26;color:var(--text-primary)}.btn-save{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#0d0d14;font-size:13px;font-weight:700;padding:9px 22px}.btn-save:hover{background:#f0d060;box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.recurrence-section{border-top:1px solid var(--border);margin-top:8px;padding-top:16px}.recurrence-toggle{display:flex;flex-direction:column;gap:4px}.checkbox-label{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px}.checkbox-label input[type=checkbox]{accent-color:var(--accent);cursor:pointer;height:18px;width:18px}.checkbox-text{-webkit-user-select:none;user-select:none}.recurrence-help{color:var(--text-muted);font-size:12px;font-style:italic;margin:0 0 0 28px}.recurrence-options{animation:fadeIn .2s ease-out;display:flex;flex-direction:column;gap:14px;margin-top:12px;padding-left:28px}.interval-input{align-items:center;display:flex;gap:10px}.number-input{text-align:center;width:60px!important}.interval-label{color:var(--text-secondary);font-size:13px;text-transform:lowercase}.days-selector{display:flex;flex-wrap:wrap;gap:6px}.day-button{align-items:center;background:var(--bg-deep);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;font-weight:600;height:36px;justify-content:center;transition:all .2s;width:36px}.day-button:hover{border-color:var(--border-accent);color:var(--text-primary)}.day-button.active{background:var(--accent);border-color:var(--accent);color:var(--bg-deep)}.field-help{color:var(--text-muted);font-size:11px;margin:2px 0 0}.field-readonly.points-display{align-items:center;background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);display:flex;font-size:14px;gap:4px;min-height:40px;padding:10px 14px}.points-value{color:var(--accent);font-size:16px;font-weight:600}.points-label{color:var(--text-secondary)}.assignment-section{border-top:1px solid var(--border);margin-top:8px;padding-top:16px}.user-select-container{position:relative}.selected-users{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.user-tag{align-items:center;background:var(--accent-dim);border-radius:var(--radius-sm);color:var(--accent);display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px}.user-tag-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-tag-remove{align-items:center;background:none;border:none;border-radius:2px;color:var(--accent);cursor:pointer;display:flex;padding:2px}.user-tag-remove:hover{background:#e8544733;color:var(--red)}.user-dropdown-trigger{align-items:center;background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:border-color .2s}.user-dropdown-trigger:hover{border-color:var(--border-accent)}.dropdown-placeholder{color:var(--text-secondary);font-size:13px}.user-dropdown-trigger svg.rotate{transform:rotate(180deg)}.user-dropdown-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 20px #0000004d;display:flex;flex-direction:column;left:0;margin-top:4px;max-height:320px;position:absolute;right:0;top:100%;z-index:100}.user-search-wrapper{align-items:center;background:var(--bg-deep);border-bottom:1px solid var(--border);display:flex;gap:8px;padding:10px 12px}.search-icon{color:var(--text-muted);flex-shrink:0}.user-search-input{background:none;border:none;color:var(--text-primary);flex:1 1;font-size:13px;outline:none}.clear-search,.user-search-input::placeholder{color:var(--text-muted)}.clear-search{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:2px}.clear-search:hover{color:var(--text-secondary)}.user-dropdown-list{flex:1 1;max-height:200px;overflow-y:auto}.no-results{color:var(--text-muted);font-size:13px;font-style:italic;padding:20px;text-align:center}.user-option{align-items:center;border-bottom:1px solid #ffffff08;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .15s}.user-option:hover{background:#ffffff0d}.user-option.selected{background:#e8c4471a}.user-option-check{align-items:center;color:var(--accent);display:flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.user-option-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.user-option-name{color:var(--text-primary);font-size:13px;font-weight:500}.user-option-email,.user-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-option-email{color:var(--text-muted);font-size:11px}.user-option-role{border-radius:3px;flex-shrink:0;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.role-admin{color:var(--red)}.role-user{color:var(--blue)}.role-shared{color:var(--purple)}.user-dropdown-footer{align-items:center;background:var(--bg-deep);border-top:1px solid var(--border);color:var(--text-muted);display:flex;font-size:12px;justify-content:space-between;padding:10px 12px}.done-btn{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#0d0d14;cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px}.done-btn:hover{background:#f0d060}.loading-text,.no-users-text{color:var(--text-muted);font-size:13px;font-style:italic;padding:12px;text-align:center}@media (max-width:500px){.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;max-height:90vh;max-width:100%}.modal-form{-webkit-overflow-scrolling:touch;flex:1 1;max-height:calc(90vh - 70px);overflow-y:auto;padding-bottom:100px}.modal-header{padding:16px 20px}.modal-title{font-size:18px}.field-row{grid-template-columns:1fr 1fr}.recurrence-options{padding-left:0}.user-dropdown-menu{max-height:280px}}.attachments-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.attachment-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:100px 1fr 1fr auto;margin-bottom:8px}.attachment-type{padding:8px}.attachment-desc,.attachment-type,.attachment-url{background:var(--bg-deep);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:13px}.attachment-desc,.attachment-url{padding:8px 12px}.attachment-desc::placeholder,.attachment-remove,.attachment-url::placeholder{color:var(--text-secondary)}.attachment-remove{align-items:center;background:var(--bg-card);border:none;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.attachment-remove:hover{background:#ef444433;color:#ef4444}.btn-add-attachment{background:#0000;border:1px dashed var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:13px;margin-top:8px;padding:10px;transition:all .2s;width:100%}.btn-add-attachment:hover{background:var(--bg-card);border-color:var(--border-accent);color:var(--text-primary)}@media (max-width:640px){.attachment-row{gap:6px;grid-template-columns:1fr}}.filter-bar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);gap:16px;margin-bottom:24px;padding:16px}.filter-bar,.filter-group{display:flex;flex-wrap:wrap}.filter-group{align-items:center;gap:8px}.filter-label{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.08em;min-width:52px;text-transform:uppercase;white-space:nowrap}.filter-pills{display:flex;flex-wrap:wrap;gap:4px}.pill{background:none;border:1px solid var(--border);border-radius:99px;color:var(--text-secondary);font-size:12px;font-weight:500;padding:4px 12px}.pill:hover{border-color:#ffffff26;color:var(--text-primary)}.pill.active{background:var(--accent-dim);border-color:var(--border-accent);color:var(--accent)}.pill-high.active{background:#e854471f;border-color:#e8544766;color:var(--red)}.pill-medium.active{background:#e8c5471f;border-color:#e8c54766;color:var(--accent)}.pill-low.active{background:#4799e81f;border-color:#4799e866;color:var(--blue)}.due-date-filter{background:var(--accent-dim);border:1px solid var(--border-accent);border-radius:var(--radius-sm);margin-bottom:8px;padding:8px 12px}.due-date-filter .filter-label{color:var(--accent)}.due-date-pill{align-items:center;background:var(--accent)!important;border-color:var(--accent)!important;color:var(--bg-deep)!important;display:flex;gap:6px}.due-date-pill .clear-icon{cursor:pointer;opacity:.7;transition:opacity .2s}.due-date-pill .clear-icon:hover{opacity:1}.home-button-group{margin-bottom:8px}.home-nav-btn{align-items:center;background:#e8c44726;background:var(--accent-dim,#e8c44726);border:1px solid #e8c447;border:1px solid var(--accent,#e8c447);border-radius:8px;color:#e8c447;color:var(--accent,#e8c447);cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s}.home-nav-btn:hover{background:#e8c447;background:var(--accent,#e8c447);color:#0d0d14;color:var(--bg-deep,#0d0d14)}.calendar-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.calendar-mobile-header{align-items:center;background:#1a1a2e;background:var(--bg-card,#1a1a2e);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border,#ffffff1a);border-radius:8px 8px 0 0;display:none;justify-content:space-between;margin:-20px -20px 16px;padding:12px 16px}.calendar-title{color:#fff;color:var(--text-primary,#fff);font-size:16px;font-weight:600;margin:0}.calendar-close-btn{align-items:center;background:#e8c44726;background:var(--accent-dim,#e8c44726);border:1px solid #e8c447;border:1px solid var(--accent,#e8c447);border-radius:6px;color:#e8c447;color:var(--accent,#e8c447);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s}.calendar-close-btn:hover{background:#e8c447;background:var(--accent,#e8c447);color:#0d0d14}@media (max-width:768px){.calendar-container{border-radius:0;bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:1000}.calendar-mobile-header{background:#1a1a2e;border-radius:0;display:flex;flex-shrink:0;margin:0;padding:16px}.calendar-container .fc{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.calendar-container .fc-view-harness{flex:1 1;overflow:auto}.calendar-container .fc-toolbar{background:#f3f4f6;margin:0!important;padding:12px 16px}.calendar-container .fc-toolbar-title{font-size:16px!important}.calendar-container .fc-toolbar-chunk{display:flex;gap:4px}.calendar-container .fc-button{font-size:13px!important;padding:6px 10px!important}.calendar-container .fc-daygrid-day{min-height:60px}.calendar-container .fc-event{font-size:12px!important;min-height:24px;padding:4px 6px!important}}.calendar-container .fc{font-family:inherit}.calendar-container .fc-event{cursor:pointer}.calendar-container .fc-theme-standard .fc-scrollgrid,.calendar-container .fc-theme-standard td,.calendar-container .fc-theme-standard th{border-color:#6b7280!important}.calendar-container .fc-scrollgrid{border:1px solid #4b5563!important}.calendar-container .fc-col-header-cell-cushion,.calendar-container .fc-daygrid-day-number{color:#111827!important;font-weight:600;text-decoration:none}.calendar-container .fc-col-header-cell{background:#f3f4f6}.calendar-container .fc-col-header-cell-cushion{padding:8px}.calendar-container .fc-day-other .fc-daygrid-day-number{color:#6b7280!important;opacity:.8}.calendar-container .fc-day-today{background:#fef3c7!important}.calendar-container .fc-event-completed .fc-event-title{opacity:.85;text-decoration:line-through}.calendar-container .fc-event-inactive{border-style:dashed!important;opacity:.6}.calendar-container .fc-event-inactive .fc-event-title{font-style:italic}.calendar-container .fc-event-recurring .fc-event-title:before{content:"↻ ";font-size:10px;opacity:.8}.calendar-container .fc-event[data-is-first=true]{font-weight:600}.calendar-container .fc-event[data-is-recurring=true]{border-style:dashed!important;border-width:1px!important}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 20px 60px #00000026;max-width:420px;padding:48px 40px}.auth-header{margin-bottom:36px}.auth-header h1{font-size:32px;line-height:1.2;margin:0 0 12px}.auth-header p{font-size:15px;line-height:1.5}.auth-form{gap:24px}.form-group{gap:10px}.form-group label{color:#111827;font-weight:700}.input-icon{flex-shrink:0}.input-wrapper input{border:2px solid #e5e7eb;border-radius:10px;font-size:15px;font-weight:500;height:50px;padding:14px 14px 14px 48px;transition:all .3s ease}.input-wrapper input:focus{box-shadow:0 0 0 3px #667eea1a}.input-wrapper input::placeholder{color:#9ca3af;font-weight:400}.auth-error{border:1px solid #fecaca;border-radius:10px;font-weight:500;line-height:1.5;padding:14px 16px}.auth-button{align-items:center;border-radius:10px;box-shadow:0 4px 12px #667eea4d;display:flex;height:52px;justify-content:center;padding:16px 24px;transition:all .3s ease}.auth-button:hover{box-shadow:0 6px 20px #667eea66}.auth-button:active{box-shadow:0 2px 8px #667eea4d;transform:translateY(0)}.auth-footer{border-top:1px solid #e5e7eb;margin-top:32px;padding-top:24px}.auth-footer p{font-size:15px;line-height:1.5}.auth-link{text-decoration:none;transition:color .2s ease}.auth-link:hover{color:#5a67d8;text-decoration:underline}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:400px;padding:40px;width:100%}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 8px}.auth-header p{color:#6b7280;margin:0}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{column-gap:8px}.form-group label{color:#1f2937;font-size:14px}.input-wrapper{position:relative}.input-icon,.input-wrapper{align-items:center;display:flex}.input-icon{background:#fff;color:#9ca3af;height:20px;justify-content:center;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:20px;z-index:3}.input-wrapper input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 12px 12px 44px;position:relative;transition:border-color .2s;width:100%;z-index:2}.input-wrapper input:focus{border-color:#667eea;outline:none}.auth-error{background:#fee2e2;border-radius:8px;color:#dc2626;font-size:14px;padding:12px}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:transform .2s}.auth-button:hover{transform:translateY(-2px)}.auth-footer{margin-top:24px;text-align:center}.auth-footer p{color:#6b7280;margin:0}.auth-link{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;text-decoration:underline}.user-management{margin:2rem 0}.user-management-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.user-management-title{align-items:center;display:flex;gap:.75rem}.user-management-title h3{color:var(--text);font-size:1.25rem;font-weight:600;margin:0}.add-user-btn{align-items:center;background:var(--primary);border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.add-user-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.add-user-btn:disabled{cursor:not-allowed;opacity:.6}.user-management-error,.user-management-success{align-items:center;animation:slideIn .3s ease-out;border-radius:.5rem;display:flex;font-size:.9rem;font-weight:600;gap:.75rem;margin-bottom:1rem;padding:1rem 1.5rem}.user-management-error{background:linear-gradient(135deg,var(--error-bg),#ef44441a);border:2px solid var(--error);box-shadow:0 4px 15px #ef444433;color:var(--error)}.user-management-success{background:linear-gradient(135deg,var(--success-bg),#22c55e1a);border:2px solid var(--success);box-shadow:0 4px 15px #22c55e33;color:var(--success)}.user-management-error:before{content:"⚠️";font-size:1.2rem}.user-management-success:before{content:"✅";font-size:1.2rem}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.add-user-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.add-user-content{animation:slideUp .3s ease-out;background:var(--bg);border:1px solid var(--border);border-radius:1rem;box-shadow:0 20px 50px #0000004d;max-width:500px;padding:2rem;width:100%}.add-user-content h4{border-bottom:2px solid var(--primary);color:var(--text);font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;padding-bottom:.75rem;text-align:center}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.add-user-form{gap:1rem}.add-user-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.75rem}.form-group label{align-items:center;color:var(--text);display:flex;font-size:1rem;gap:.5rem}.form-group label:before{background:var(--primary);border-radius:50%;content:"";height:4px;width:4px}.form-group input,.form-group select{background:var(--bg);border:2px solid var(--border);border-radius:.5rem;color:var(--text);font-size:1rem;font-weight:500;padding:1rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4a90e226;outline:none;transform:translateY(-1px)}.form-group input::placeholder{color:var(--text-muted);font-weight:400}.form-actions{border-top:1px solid var(--border);display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem}.btn-cancel,.btn-primary{border:none;border-radius:.5rem;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;letter-spacing:.5px;padding:1rem 2rem;text-transform:uppercase;transition:all .3s ease}.btn-cancel{background:var(--surface);border:2px solid var(--border);color:var(--text)}.btn-cancel:hover:not(:disabled){background:var(--surface-hover);border-color:var(--primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 4px 15px #4a90e24d;color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark),var(--primary));box-shadow:0 6px 20px #4a90e266;transform:translateY(-2px)}.btn-cancel:disabled,.btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.users-list{margin-top:1rem}.loading-users,.no-users{color:var(--text-secondary);font-style:italic;padding:2rem;text-align:center}.users-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.user-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.user-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.user-card.user-admin{border-left:3px solid var(--warning)}.user-card.user-user{border-left:3px solid var(--primary)}.user-avatar{align-items:center;background:var(--surface-hover);border-radius:50%;color:var(--text-secondary);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.user-card.user-admin .user-avatar{background:var(--warning-bg);color:var(--warning)}.user-card.user-user .user-avatar{background:var(--primary-bg);color:var(--primary)}.user-info{min-width:0}.user-info h4{color:var(--text);font-size:.875rem;font-weight:600;margin:0 0 .25rem}.user-info h4,.user-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info p{color:var(--text-secondary);font-size:.75rem;margin:0 0 .5rem}.user-role-badge{border-radius:.25rem;display:inline-block;font-size:.625rem;font-weight:600;letter-spacing:.5px;padding:.125rem .5rem;text-transform:uppercase}.user-role-badge.role-admin{background:var(--warning-bg);color:var(--warning)}.edit-user-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:.375rem;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.edit-user-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff}.edit-user-btn:disabled{cursor:not-allowed;opacity:.5}.field-help{font-size:.75rem;font-style:italic;margin-top:.25rem}.field-help,.optional{color:var(--text-secondary)}.optional{font-size:.875em;font-weight:400}.user-role-badge.role-user{background:var(--primary-bg);color:var(--primary)}.fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.user-management-header{align-items:flex-start;flex-direction:column;gap:1rem}.users-grid{grid-template-columns:1fr}.add-user-content{margin:1rem;max-width:none}}.progress-view-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.progress-view{background:#1a1a2e;background:var(--bg-card,#1a1a2e);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:12px;border-radius:var(--radius,12px);box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.progress-header{align-items:center;background:#13131f;background:var(--bg-deep,#13131f);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border,#ffffff1a);display:flex;justify-content:space-between;padding:20px 24px}.progress-title{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:20px;font-weight:700;gap:10px;margin:0}.home-btn,.progress-title svg{color:#e8c447;color:var(--accent,#e8c447)}.home-btn{align-items:center;background:#e8c44726;background:var(--accent-dim,#e8c44726);border:1px solid #e8c447;border:1px solid var(--accent,#e8c447);border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s}.home-btn:hover{background:#e8c447;background:var(--accent,#e8c447);color:#0d0d14;color:var(--bg-deep,#0d0d14)}.progress-tabs{background:#13131f;background:var(--bg-deep,#13131f);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border,#ffffff1a);display:flex;gap:4px;overflow-x:auto;padding:12px 24px}.progress-tabs button{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s;white-space:nowrap}.progress-tabs button:hover{background:#ffffff0d;color:#fff;color:var(--text-primary,#fff)}.progress-tabs button.active{background:#e8c44726;background:var(--accent-dim,#e8c44726);border-color:#e8c447;border-color:var(--accent,#e8c447);color:#e8c447;color:var(--accent,#e8c447)}.progress-content{flex:1 1;overflow-y:auto;padding:24px}.stats-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.stat-card-large{align-items:center;background:#13131f;background:var(--bg-deep,#13131f);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:12px;display:flex;gap:16px;padding:20px}.stat-card-large .stat-icon{color:#e8c447;color:var(--accent,#e8c447);flex-shrink:0}.stat-card-large.clickable{cursor:pointer;transition:all .2s ease}.stat-card-large.clickable:hover{background:#e8c4471a;background:var(--accent-dim,#e8c4471a);border-color:#e8c447;border-color:var(--accent,#e8c447);transform:translateY(-2px)}.stat-card-large.clickable:hover .stat-icon{color:#e8c447;color:var(--accent,#e8c447);transform:scale(1.1)}.stat-card-large.clickable .stat-icon{transition:transform .2s ease}.stat-info{display:flex;flex-direction:column}.stat-value{color:#fff;color:var(--text-primary,#fff);font-size:32px;font-weight:700;line-height:1}.stat-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:13px;margin-top:4px}.chart-section{background:#13131f;background:var(--bg-deep,#13131f);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:12px;margin-bottom:20px;padding:20px}.chart-section h3{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 20px}.chart-section h3 svg{color:#e8c447;color:var(--accent,#e8c447)}.bar-chart{align-items:flex-end;display:flex;gap:12px;height:160px;justify-content:space-around;padding:10px 0}.bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px}.bar-wrapper{align-items:flex-end;background:#ffffff0d;display:flex;height:120px;overflow:hidden}.bar,.bar-wrapper{border-radius:6px 6px 0 0;width:100%}.bar{min-height:4px;transition:height .5s ease}.bar-label{color:#6b6b7b;color:var(--text-muted,#6b6b7b);font-size:11px;text-transform:uppercase}.bar-value{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:12px;font-weight:600}.horizontal-bar-chart{display:flex;flex-direction:column;gap:12px}.h-bar-item{align-items:center;display:flex;gap:12px}.h-bar-item.clickable{border-radius:6px;cursor:pointer;margin:-4px -8px;padding:4px 8px;transition:all .2s ease}.h-bar-item.clickable:hover{background:#ffffff0d}.h-bar-item.clickable:hover .h-bar-label{color:#e8c447;color:var(--accent,#e8c447)}.h-bar-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);flex-shrink:0;font-size:12px;text-transform:capitalize;width:80px}.h-bar-wrapper{background:#ffffff0d;border-radius:4px;flex:1 1;height:24px;overflow:hidden}.h-bar{border-radius:4px;height:100%;min-width:4px;transition:width .5s ease}.h-bar-value{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);flex-shrink:0;font-size:12px;font-weight:500;text-align:right;width:70px}.leaderboard-tab{padding:8px 0}.leaderboard-header{margin-bottom:24px;text-align:center}.leaderboard-header h3{color:#fff;color:var(--text-primary,#fff);font-size:18px;font-weight:600;margin:0 0 4px}.leaderboard-header p{color:#6b6b7b;color:var(--text-muted,#6b6b7b);font-size:13px;margin:0}.leaderboard-list{display:flex;flex-direction:column;gap:8px}.leaderboard-entry{align-items:center;background:#13131f;background:var(--bg-deep,#13131f);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:10px;display:flex;gap:12px;padding:14px 16px;transition:all .2s}.leaderboard-entry:hover{border-color:#fff3}.leaderboard-entry.current-user{background:#e8c4471a;background:var(--accent-dim,#e8c4471a);border-color:#e8c447;border-color:var(--accent,#e8c447)}.rank{flex-shrink:0;text-align:center;width:36px}.medal{font-size:24px}.rank-number{color:#6b6b7b;color:var(--text-muted,#6b6b7b);font-size:16px;font-weight:600}.user-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.user-name{color:#fff;color:var(--text-primary,#fff);font-size:14px;font-weight:500}.user-role{border-radius:3px;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.role-admin{background:#e8544733;color:#e85447;color:var(--red,#e85447)}.role-user{background:#4799e833;color:#4799e8;color:var(--blue,#4799e8)}.role-shared{background:#a047e833;color:#a047e8;color:var(--purple,#a047e8)}.leaderboard-entry .stats{display:flex;flex-shrink:0;gap:16px}.leaderboard-entry .stat{align-items:center;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);display:flex;font-size:12px;gap:4px}.stat-icon{color:#e8c447;color:var(--accent,#e8c447)}.report-tab{padding:8px 0}.report-filters{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:12px 16px}.report-filters label{color:var(--text-secondary);font-size:13px;font-weight:600}.filter-select{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:13px;padding:8px 12px}.filter-select:focus{border-color:var(--accent);outline:none}.custom-date-range{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.custom-date-range input[type=date]{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;padding:6px 10px}.custom-date-range span{color:var(--text-muted);font-size:12px}.apply-btn{background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--bg-deep);cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px;transition:all .2s ease}.apply-btn:hover:not(:disabled){filter:brightness(1.1)}.apply-btn:disabled{cursor:not-allowed;opacity:.5}.filter-badge{background:var(--accent-dim);border-radius:99px;color:var(--accent);font-size:11px;font-weight:600;padding:4px 10px;text-transform:capitalize}@media (max-width:640px){.report-filters{align-items:stretch;flex-direction:column}.custom-date-range{width:100%}.custom-date-range input[type=date]{flex:1 1}}.user-stats-table{display:flex;flex-direction:column;gap:4px}.table-header,.table-row{align-items:center;border-radius:8px;display:grid;grid-template-columns:60px 1fr 80px 80px;padding:12px 16px}.table-header{background:#ffffff0d;color:#6b6b7b;color:var(--text-muted,#6b6b7b);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.table-row{background:#13131f;background:var(--bg-deep,#13131f);border:1px solid #ffffff0d;border:1px solid var(--border,#ffffff0d);font-size:13px}.table-row.current-user{background:#e8c4471a;background:var(--accent-dim,#e8c4471a);border-color:#e8c447;border-color:var(--accent,#e8c447)}.table-row .rank{color:#6b6b7b;color:var(--text-muted,#6b6b7b);text-align:left}.table-row .name{color:#fff;color:var(--text-primary,#fff);font-weight:500}.table-row .points,.table-row .tasks{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);text-align:right}.table-row .points{color:#e8c447;color:var(--accent,#e8c447);font-weight:600}.progress-view.loading{align-items:center;display:flex;justify-content:center;min-height:300px}.loading-spinner{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:14px}.progress-view.error{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:300px;padding:40px}.progress-view.error p{color:#e85447;color:var(--red,#e85447);font-size:14px}.progress-view.error button{background:#e8c447;background:var(--accent,#e8c447);border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px}@media (max-width:768px){.progress-view-overlay{padding:0}.progress-view{border-radius:0;max-height:100vh;max-width:100%}.progress-header{padding:16px 20px}.progress-title{font-size:18px}.progress-tabs{padding:10px 16px}.progress-tabs button{font-size:12px;padding:6px 12px}.progress-content{padding:16px}.stats-row{gap:12px;grid-template-columns:1fr}.stat-card-large{padding:16px}.stat-value{font-size:28px}.bar-chart{height:140px}.bar-wrapper{height:100px}.leaderboard-entry .stats{flex-direction:column;gap:4px}.table-header,.table-row{font-size:12px;grid-template-columns:40px 1fr 60px 60px;padding:10px 12px}}@media (max-height:500px) and (orientation:landscape){.progress-view{max-height:100vh}.stats-row{grid-template-columns:repeat(2,1fr)}.chart-section{margin-bottom:16px}}.user-profile-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.user-profile-modal{background:#1a1a2e;background:var(--bg-card,#1a1a2e);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:12px;border-radius:var(--radius,12px);display:flex;flex-direction:column;max-height:90vh;max-width:420px;overflow:hidden;width:100%}.user-profile-header{align-items:center;background:#13131f;background:var(--bg-deep,#13131f);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border,#ffffff1a);display:flex;justify-content:space-between;padding:20px 24px}.user-profile-title{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.user-profile-title svg{color:#e8c447;color:var(--accent,#e8c447)}.close-btn{align-items:center;background:#1a1a2e;background:var(--bg-card,#1a1a2e);border:1px solid #fff3;border:1px solid var(--border,#fff3);border-radius:8px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.close-btn:hover{background:#e8544726;background:var(--red-dim,#e8544726);border-color:#e85447;border-color:var(--red,#e85447);color:#e85447;color:var(--red,#e85447)}.user-profile-content{overflow-y:auto;padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);display:block;font-size:13px;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.form-group input{background:#13131f;background:var(--bg-deep,#13131f);border:1px solid #ffffff1a;border:1px solid var(--border,#ffffff1a);border-radius:8px;border-radius:var(--radius-sm,8px);color:#fff;color:var(--text-primary,#fff);font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#e8c447;border-color:var(--accent,#e8c447);outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.6}.password-hint{color:#6b7280;color:var(--text-muted,#6b7280);font-size:11px;margin-top:6px}.user-profile-actions{background:#13131f;background:var(--bg-deep,#13131f);border-top:1px solid #ffffff1a;border-top:1px solid var(--border,#ffffff1a);display:flex;gap:12px;padding:20px 24px}.btn{border:none;border-radius:8px;border-radius:var(--radius-sm,8px);cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s}.btn-secondary{background:#1a1a2e;background:var(--bg-card,#1a1a2e);border:1px solid #fff3;border:1px solid var(--border,#fff3);color:#a0a0b0;color:var(--text-secondary,#a0a0b0)}.btn-secondary:hover{border-color:#fff;border-color:var(--text-primary,#fff);color:#fff;color:var(--text-primary,#fff)}.btn-primary{background:#e8c447;background:var(--accent,#e8c447);color:#0d0d14;color:var(--bg-deep,#0d0d14)}.btn-primary:hover{filter:brightness(1.1)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.success-message{background:#10b9811a;border:1px solid #10b9814d;border-radius:8px;border-radius:var(--radius-sm,8px);color:#10b981}.error-message,.success-message{font-size:13px;margin-bottom:20px;padding:12px 16px}.error-message{background:#e854471a;border:1px solid #e854474d;border-radius:8px;border-radius:var(--radius-sm,8px);color:#e85447}@media (max-width:480px){.user-profile-overlay{padding:0}.user-profile-modal{border-radius:0;max-height:100vh;max-width:100%}}.change-password-toggle{margin:8px 0}.change-password-link{align-items:center;background:#0000;border:none;color:#e8c447;color:var(--accent,#e8c447);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:0;text-decoration:underline;transition:opacity .2s}.change-password-link:hover{opacity:.8}.cancel-password-change{background:#0000;border:none;color:#6b7280;color:var(--text-muted,#6b7280);cursor:pointer;font-size:12px;padding:0;text-decoration:underline;transition:color .2s}.cancel-password-change:hover{color:#a0a0b0;color:var(--text-secondary,#a0a0b0)}.app{display:flex;flex-direction:column;min-height:100vh}.main{flex:1 1;margin:0 auto;max-width:1100px;padding:0 24px 64px;width:100%}@media (max-width:640px){.main{padding:0 16px 48px}}.mobile-view{display:none}.desktop-view{display:block}.mobile-nav{align-items:center;background:var(--bg-card);border-top:1px solid var(--border);bottom:0;display:none;justify-content:space-around;left:0;padding:8px 0;position:fixed;right:0;z-index:100}.mobile-nav-item{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;flex-direction:column;font-size:11px;font-weight:500;gap:4px;padding:8px 16px;transition:all .2s ease}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-item:hover{color:var(--text-primary)}@media (max-width:768px){.mobile-view{display:block}.desktop-view{display:none}.mobile-nav{display:flex}.main{gap:12px;padding:12px 12px 80px}}
/*# sourceMappingURL=main.8cfefaeb.css.map*/