body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f4f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app-container{background:#f3f4f6;min-height:100vh}.header{align-items:center;background:#fff;border-bottom:2px solid #e5e7eb;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;padding:16px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.user-name{color:#111827;font-size:1rem}.header-logo{flex-shrink:0;height:36px;object-fit:contain;width:auto}.header-buttons{align-items:center;display:flex;gap:12px;margin-left:auto}.settings-icon-btn,.view-toggle-btn{background:#3b82f6;border:2px solid #3b82f6;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .3s}.settings-icon-btn:hover,.view-toggle-btn:hover{background:#2563eb;border-color:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.settings-icon-btn{padding:10px 16px}.container{align-items:center;background:#f3f4f6;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 80px);padding:40px 20px}.task-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 24px #00000014;max-width:500px;padding:48px;text-align:center;width:100%}.task-card h2{color:#111827;font-size:1.8rem;margin-bottom:24px}.task-buttons{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;width:100%}.task-folder-group{background:#f0f4ff;border:2px solid #dbeafe;border-radius:10px;overflow:hidden}.task-folder-group--nested{background:#f5f3ff;border-color:#c7d2fe;border-radius:8px;margin:2px 0}.task-folder-group--nested .task-folder-label{background:#e0e7ff;color:#4338ca}.task-folder-label{background:#dbeafe;color:#2563eb;font-size:.82rem;font-weight:700;letter-spacing:.03em;padding:6px 12px}.task-folder-items{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));padding:8px}.task-buttons>.task-btn{width:100%}.task-btn{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:12px;color:#374151;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;justify-content:center;line-height:1.3;min-height:58px;padding:14px 10px;text-align:center;transition:all .2s;word-break:break-word}.task-btn:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.task-btn.selected{background:#3b82f6;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f659;color:#fff}.task-btn:disabled{cursor:not-allowed;opacity:.5}.task-btn.task-btn-active{animation:pulse-task 2s infinite;background:#059669;border-color:#059669;box-shadow:0 2px 8px #05966966;color:#fff}@keyframes pulse-task{0%,to{box-shadow:0 2px 8px #05966966}50%{box-shadow:0 2px 16px #059669b3}}.task-empty{color:#9ca3af;font-size:.95rem;margin-bottom:32px}.timer-task-name{color:#3b82f6;font-size:1rem;font-weight:700;letter-spacing:.02em;margin-bottom:4px;min-height:1.4em;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.timer-display{color:#111827;font-family:Courier New,monospace;font-size:4rem;font-weight:700;letter-spacing:4px;margin:0 0 32px}.btn{border:2px solid;border-radius:8px;font-size:1.1rem;letter-spacing:1px;padding:16px 32px;text-transform:uppercase;width:100%}.btn.start{background:#3b82f6;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f64d;color:#fff}.btn.start:hover:not(:disabled){background:#2563eb;border-color:#2563eb;box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.btn.break{background:#fffbeb;border:2px solid #f59e0b;box-shadow:0 2px 8px #f59e0b26;color:#d97706;font-size:1rem;letter-spacing:.5px;margin-bottom:4px}.btn.break:hover:not(:disabled){background:#fef3c7;border-color:#d97706;box-shadow:0 4px 12px #f59e0b4d;color:#b45309;transform:translateY(-2px)}.btn.break:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none!important}.btn.stop{background:#ef4444;border-color:#ef4444;box-shadow:0 4px 12px #ef44444d;color:#fff}.btn.stop:hover:not(:disabled){background:#dc2626;border-color:#dc2626;box-shadow:0 6px 16px #ef444466;transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.debug-section{margin-top:40px;text-align:center}.debug-section button{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .3s}.debug-section button:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.token-area{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#111827;font-family:monospace;font-size:.85rem;height:200px;margin-top:16px;max-width:100%;padding:12px;resize:vertical;width:600px}.loading{padding:60px}.app-loading-screen{align-items:center;display:flex;justify-content:center;min-height:100vh}.app-spinner{animation:app-spin .8s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#6366f1;height:48px;width:48px}@keyframes app-spin{to{transform:rotate(1turn)}}@media (max-width:1024px){.header{padding:14px 24px}.task-card{padding:40px 32px}.timer-display{font-size:3.5rem}}@media (max-width:768px){.header{flex-wrap:nowrap;gap:8px;padding:8px 12px}.header-logo{height:28px}.header-buttons{gap:8px}.view-toggle-btn{font-size:.8rem;padding:7px 12px}.settings-icon-btn{font-size:1rem;padding:7px 10px}.container{align-items:center;justify-content:center;min-height:calc(100svh - 52px);padding:16px 10px}.task-card{border-radius:10px;padding:14px 12px}.task-card h2{font-size:1rem;margin-bottom:8px}.task-buttons{gap:6px;margin-bottom:8px}.task-btn{font-size:.8rem;min-height:38px;padding:8px 6px}.task-folder-label{font-size:.75rem;padding:4px 10px}.task-folder-items{gap:6px;padding:6px}.timer-task-name{font-size:.85rem;margin-bottom:2px}.timer-display{font-size:2.6rem;letter-spacing:1px;margin:0 0 8px}.btn{font-size:.9rem;padding:11px 20px}.btn.break{font-size:.85rem;margin-bottom:2px;padding:9px 20px}.count-area{gap:10px;margin:4px 0;padding:8px 12px}.count-value{font-size:1.3rem}.btn-count-up{font-size:1.2rem;padding:10px 16px}.btn-count-down{font-size:1.1rem;padding:10px 14px}.debug-section{margin-top:20px}.debug-section button{font-size:.85rem;padding:8px 16px}.token-area{font-size:.75rem;height:150px;width:100%}}@media (max-width:480px){.task-card{padding:12px 10px}.task-card h2{font-size:.95rem;margin-bottom:6px}.task-btn{font-size:.78rem;min-height:34px;padding:6px 4px}.timer-display{font-size:2.2rem;margin:6px 0}.btn{font-size:.85rem;letter-spacing:.3px;padding:10px 16px}.count-area{gap:8px;padding:6px 10px}}@media (max-width:768px) and (orientation:landscape){.container{justify-content:flex-start;padding:16px}.task-card{margin:20px 0}.timer-display{font-size:2.5rem;margin:16px 0}}.app-dialog-overlay{align-items:center;animation:fadeIn .15s ease;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:3000}.app-dialog{animation:slideUp .2s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;max-width:420px;padding:32px 28px 24px;text-align:center;width:90%}.app-dialog-icon{font-size:2.8rem;line-height:1;margin-bottom:12px}.app-dialog-title{color:#111827;font-size:1.2rem;font-weight:700;margin:0 0 12px}.app-dialog-message{color:#4b5563;font-size:.95rem;line-height:1.65;margin:0 0 24px;text-align:left}.app-dialog-actions{display:flex;gap:10px;justify-content:flex-end}.app-dialog-btn{border:2px solid #0000;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 22px;transition:all .2s}.app-dialog-btn--cancel{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.app-dialog-btn--cancel:hover{background:#e5e7eb}.app-dialog-btn--confirm{background:#3b82f6;border-color:#3b82f6;color:#fff}.app-dialog-btn--confirm:hover{background:#2563eb;border-color:#2563eb;box-shadow:0 4px 10px #3b82f659;transform:translateY(-1px)}.app-dialog-btn--confirm.danger{background:#ef4444;border-color:#ef4444}.app-dialog-btn--confirm.danger:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 4px 10px #ef444459}.recovery-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.recovery-dialog{background:#fff;border-radius:16px;box-shadow:0 24px 64px #0003;max-width:92vw;padding:32px 28px;text-align:center;width:420px}.recovery-icon{font-size:2.4rem;margin-bottom:12px}.recovery-dialog h3{color:#111827;font-size:1.1rem;font-weight:700;margin-bottom:8px}.recovery-desc{color:#6b7280;font-size:.875rem;line-height:1.5;margin-bottom:20px}.recovery-detail{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:24px;padding:14px 16px;text-align:left}.recovery-row{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;padding:4px 0}.recovery-row+.recovery-row{border-top:1px solid #f3f4f6;margin-top:6px;padding-top:10px}.recovery-label{color:#6b7280;flex-shrink:0;font-weight:500;margin-right:12px}.recovery-value{color:#111827;font-weight:600}.recovery-actions{display:flex;gap:10px;justify-content:center}.recovery-btn-discard{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.875rem;padding:10px 22px;transition:background .15s}.recovery-btn-discard:hover{background:#f9fafb}.recovery-btn-save{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 24px;transition:background .15s}.recovery-btn-save:hover{background:#1d4ed8}.recovery-btn-discard:disabled,.recovery-btn-save:disabled{cursor:default;opacity:.5}.count-area{background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:12px;gap:16px;justify-content:center;margin:8px 0;padding:12px 20px}.count-area,.count-progress{align-items:center;display:flex}.count-progress{flex-direction:column;gap:2px}.count-label{color:#6b7280;font-size:.72rem;font-weight:500;letter-spacing:.04em}.count-value{font-size:1.5rem;font-weight:700;line-height:1}.count-done,.count-value{color:#1d4ed8}.count-total{color:#6b7280;font-size:1rem;font-weight:500}.count-up-wrap{align-items:center;display:flex;flex-direction:column;gap:4px}.count-up-label{color:#2563eb;font-size:.68rem;font-weight:600;letter-spacing:.03em}.btn-count-up{background:#2563eb;border:none;border-radius:10px;box-shadow:0 2px 6px #2563eb4d;color:#fff;cursor:pointer;font-size:1.4rem;font-weight:700;line-height:1;padding:14px 22px;transition:background .15s,transform .1s}.btn-count-up:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.btn-count-up:active:not(:disabled){transform:scale(.97)}.btn-count-up:disabled{cursor:default;opacity:.35}.btn-count-down{background:#f3f4f6;border:1.5px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-size:1.3rem;font-weight:700;line-height:1;padding:14px 20px;transition:background .15s,transform .1s}.btn-count-down:hover:not(:disabled){background:#e5e7eb;transform:translateY(-1px)}.btn-count-down:active:not(:disabled){transform:scale(.97)}.btn-count-down:disabled{cursor:default;opacity:.35}.wakelock-toggle{align-items:center;cursor:pointer;display:flex;gap:6px;justify-content:center;margin-top:10px;-webkit-user-select:none;user-select:none}.wakelock-toggle input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:14px;width:14px}.wakelock-toggle span{color:#9ca3af;font-size:.72rem;font-weight:500}.wakelock-toggle:hover span{color:#6b7280}.mfa-required-overlay{align-items:center;background:#f3f4f6;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:9999}.mfa-required-dialog{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-width:420px;padding:32px 28px;text-align:center;width:100%}.mfa-required-logo{margin-bottom:20px}.mfa-required-title{color:#111827;font-size:18px;font-weight:700;margin-bottom:16px}.mfa-required-desc{color:#6b7280;font-size:14px;line-height:1.6;margin-bottom:20px}.mfa-required-qr{display:block;height:180px;margin:0 auto 16px;width:180px}.mfa-required-qr,.mfa-required-secret{border:1px solid #e5e7eb;border-radius:8px}.mfa-required-secret{background:#f9fafb;color:#374151;font-size:13px;margin-bottom:16px;padding:10px 14px;word-break:break-all}.mfa-required-secret-label{color:#9ca3af;display:block;font-size:11px;margin-bottom:4px}.mfa-required-secret code{color:#1d4ed8;font-family:monospace;font-size:13px;letter-spacing:1px}.mfa-required-code-input{border:2px solid #d1d5db;border-radius:8px;font-size:20px;letter-spacing:6px;margin-bottom:16px;outline:none;padding:12px;text-align:center;transition:border-color .2s;width:100%}.mfa-required-code-input:focus{border-color:#3b82f6}.mfa-required-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px;margin-bottom:12px;padding:8px 12px}.mfa-required-success{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a;font-size:16px;font-weight:600;margin-bottom:16px;padding:12px}.mfa-required-btn{background:#3b82f6;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:10px;padding:14px;transition:background .2s;width:100%}.mfa-required-btn:hover:not(:disabled){background:#2563eb}.mfa-required-btn:disabled{cursor:not-allowed;opacity:.6}.mfa-required-logout{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:13px;padding:4px;text-decoration:underline}.task-comparison{margin:0 auto;max-width:1600px}.tc-period-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tc-period-btn{background:#fff;border:2px solid #d1d5db;border-radius:20px;color:#374151;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 18px;transition:all .2s}.tc-period-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.tc-period-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.tc-custom-range{align-items:center;background:#f9fafb;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:16px}.tc-custom-range label{align-items:center;color:#374151;display:flex;font-size:.9rem;font-weight:600;gap:8px}.tc-custom-range input[type=date]{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.9rem;padding:8px 12px}.tc-custom-range input[type=date]:focus{border-color:#3b82f6;outline:none}.tc-range-sep{color:#6b7280;font-size:1rem;font-weight:600}.tc-period-label-wrap{margin-bottom:16px;text-align:center}.tc-period-label{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:24px;color:#fff;display:inline-block;font-size:1rem;font-weight:700;padding:10px 24px}.tc-gantt-wrapper{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:20px}.tc-gantt{position:relative}.gantt-body{border:1px solid #e5e7eb;border-radius:8px}.gantt-label-col{background:#f9fafb;border-right:1px solid #e5e7eb;z-index:1}.gantt-label-spacer{border-bottom:1px solid #e5e7eb}.gantt-label-cell{border-bottom:1px solid #f3f4f6;font-size:.82rem;font-weight:600;overflow:hidden;padding:0 12px;text-overflow:ellipsis;white-space:nowrap}.gantt-chart-scroll{min-width:0}.gantt-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 20px #00000026;min-width:180px}.gantt-tooltip-task{border-bottom:1px solid #f3f4f6;color:#111827;font-size:.9rem;margin-bottom:8px;padding-bottom:6px}.gantt-tooltip-row{font-size:.8rem;gap:12px;padding:2px 0}.gantt-tooltip-label{min-width:36px}.gantt-tooltip-value{color:#111827}.tc-legend{border-top:1px solid #f3f4f6;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:14px}.tc-legend-item{align-items:center;color:#374151;display:flex;font-size:.85rem;font-weight:500;gap:6px}.tc-legend-dot{border-radius:3px;flex-shrink:0;height:12px;width:12px}.tc-legend-label{white-space:nowrap}.tc-gantt-controls{display:flex;justify-content:flex-end;margin-bottom:10px}.gantt-zoom-controls{gap:8px}.gantt-zoom-btn{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#374151;font-size:.9rem;font-weight:600;padding:5px 12px;transition:all .2s}.gantt-zoom-btn:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.gantt-zoom-btn:disabled{cursor:not-allowed}.gantt-zoom-label{font-size:.85rem;font-weight:600;min-width:36px}.tc-summary-table{margin-top:0}.tc-table-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.tc-table-header h3{color:#1a1f36;margin:0}.tc-sort-group{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:8px}.tc-sort-group select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.875rem;padding:6px 10px}.tc-sort-group select:focus{border-color:#3b82f6;outline:none}.comparison-description{color:#6b7280;font-size:.95rem;margin-bottom:30px}.comparison-filters{background:#f9fafb;border-radius:12px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:200px}.filter-group label{color:#374151;font-size:.9rem;font-weight:600}.filter-group select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.95rem;padding:10px;transition:border-color .3s}.filter-group select:focus{border-color:#4ecdc4;outline:none}.comparison-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.summary-item{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea33;color:#fff;display:flex;gap:15px;padding:20px}.summary-item:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.summary-item:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.summary-item:nth-child(4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.summary-icon{font-size:2.5rem;opacity:.9}.summary-content{flex:1 1}.summary-label{font-size:.85rem;margin-bottom:4px;opacity:.9}.summary-value{font-size:1.5rem;font-weight:700}.gantt-style-chart{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:30px;padding:30px}.gantt-style-chart h3{color:#1a1f36;margin-bottom:20px;margin-top:0}.comparison-table{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:30px;overflow-x:auto;padding:30px}.comparison-table h3{color:#1a1f36;margin-bottom:20px;margin-top:0}.comparison-table table{border-collapse:collapse;min-width:900px;width:100%}.comparison-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-size:.9rem;font-weight:600;padding:12px;text-align:left}.comparison-table td{border-bottom:1px solid #f3f4f6;font-size:.9rem;padding:12px}.comparison-table tr:hover{background:#f9fafb}.comparison-table tr.inactive-user{opacity:.5}.user-name{color:#1a1f36;font-weight:600}.efficiency-bar{background:#f3f4f6;border-radius:12px;height:24px;min-width:100px;overflow:hidden;position:relative}.efficiency-fill{border-radius:12px;height:100%;transition:width .3s ease}.efficiency-text{color:#1a1f36;font-size:.75rem;font-weight:600;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.insight-cell{text-align:center}.insight-badge{background:#f3f4f6;border-radius:12px;color:#6b7280;display:inline-block;font-size:.85rem;font-weight:600;padding:4px 12px}.insight-badge.warning{background:#fef2f2;color:#dc2626}.insight-badge.success{background:#f0fdf4;color:#16a34a}.recommendations{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:30px}.recommendations h3{color:#1a1f36;margin-bottom:20px;margin-top:0}.recommendation-cards{grid-gap:20px;display:grid;gap:20px}.recommendation-card{border-left:4px solid;border-radius:12px;display:flex;gap:15px;padding:20px}.recommendation-card.warning{background:#fef2f2;border-color:#dc2626}.recommendation-card.success{background:#f0fdf4;border-color:#16a34a}.recommendation-card.info{background:#eff6ff;border-color:#2563eb}.recommendation-icon{font-size:2rem}.recommendation-content h4{color:#1a1f36;font-size:1rem;margin:0 0 8px}.recommendation-content p{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0}.loading{font-size:1.1rem;padding:60px 20px}@media (max-width:768px){.comparison-filters{flex-direction:column}.filter-group{min-width:100%}.comparison-table{overflow-x:scroll}}.comparison-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.help-button{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:background .3s}.help-button:hover{background:#5568d3}.help-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.help-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:80vh;max-width:700px;overflow-y:auto;padding:40px;position:relative}.help-close{background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;font-size:1.2rem;height:32px;position:absolute;right:20px;top:20px;transition:background .3s;width:32px}.help-close:hover{background:#e5e7eb}.help-content h3{color:#1a1f36;font-size:1.5rem;margin-bottom:30px;margin-top:0}.help-section{border-bottom:1px solid #e5e7eb;margin-bottom:30px;padding-bottom:20px}.help-section:last-child{border-bottom:none}.help-section h4{color:#374151;font-size:1.1rem;margin:0 0 10px}.help-section p{color:#6b7280;line-height:1.6;margin:8px 0}.help-section ul{color:#6b7280;margin:10px 0;padding-left:20px}.help-section li{line-height:1.6;margin:6px 0}.help-section strong{color:#374151}.filter-group input[type=date]{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.95rem;padding:10px;transition:border-color .3s}.filter-group input[type=date]:focus{border-color:#4ecdc4;outline:none}.task-specific-section{margin-top:20px}.no-data{background:#f9fafb;border-radius:12px;color:#6b7280;font-size:1.1rem;padding:60px 20px}.task-section{margin-bottom:40px}.section-divider{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;margin:40px 0 20px;padding:20px}.section-title{color:#fff;font-size:1.3rem;margin:0;text-align:center}.task-section-box{background:#fff;border:3px solid #1a1f36;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:40px;padding:20px}.tc-table-scroll{overflow-x:auto;scrollbar-color:#d1d5db #0000;scrollbar-width:thin}.tc-table-scroll::-webkit-scrollbar{height:6px}.tc-table-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.tc-td-sticky,.tc-th-sticky{background:#fff;left:0;position:-webkit-sticky;position:sticky;white-space:nowrap;z-index:2}.tc-th-sticky{background:#f9fafb}.tc-task-time{text-align:center;white-space:nowrap}.tc-no-data{color:#d1d5db}.tc-task-dot{border-radius:2px;display:inline-block;flex-shrink:0;height:10px;margin-right:5px;vertical-align:middle;width:10px}.tc-breakdown-table{margin-top:0}.tc-breakdown-table h3{color:#1a1f36;margin:0 0 16px}.tc-task-name-cell{align-items:center;display:flex;gap:6px;white-space:nowrap}.tc-user-first-row td{border-top:2px solid #e5e7eb;padding-top:10px}.tc-user-first-row .tc-td-sticky{border-top:2px solid #e5e7eb;padding-top:12px;vertical-align:top}.dashboard{background:#f3f4f6;min-height:calc(100vh - 80px);padding:32px}.dashboard-header{border-bottom:2px solid #e5e7eb;margin-bottom:28px;padding-bottom:20px}.dashboard-header-main{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.dashboard-header h1{align-items:center;color:#111827;display:flex;font-size:1.8rem;gap:12px;margin:0}.dashboard-user-badge{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:24px;box-shadow:0 2px 6px #0000000f;display:flex;gap:8px;padding:8px 18px}.dashboard-user-icon{font-size:1rem}.dashboard-user-name{color:#111827;font-size:.95rem;font-weight:700}.dashboard-tabs{-webkit-overflow-scrolling:touch;background:#fff;border-bottom:2px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;gap:12px;margin-bottom:32px;overflow-x:auto;overflow-y:hidden;padding:8px 8px 0;scrollbar-width:none}.dashboard-tabs::-webkit-scrollbar{display:none}.tab-button{background:#0000;border:none;border-bottom:3px solid #0000;bottom:-2px;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:1rem;font-weight:600;padding:14px 28px;position:relative;transition:all .3s;white-space:nowrap}.tab-button:hover{background:#f9fafb;color:#3b82f6}.tab-button.active{background:#0000;border-bottom-color:#3b82f6;color:#3b82f6}.summary-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:32px}.summary-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:28px;transition:all .3s}.summary-card:hover{border-color:#3b82f6;box-shadow:0 8px 20px #0000001a;transform:translateY(-4px)}.card-icon{font-size:2.5rem;margin-bottom:16px}.card-label{color:#6b7280;font-size:.95rem;font-weight:500;margin-bottom:12px}.card-value{color:#111827;font-size:2rem;font-weight:700}.chart-container{-webkit-overflow-scrolling:touch;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:32px;overflow-x:auto;padding:32px}.chart-container h2{align-items:center;color:#111827;display:flex;font-size:1.3rem;gap:10px;margin:0 0 28px}.work-table{-webkit-overflow-scrolling:touch;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow-x:auto;padding:32px}.work-table h2{color:#111827;font-size:1.3rem;margin:0 0 24px}.work-table table{border-collapse:collapse;min-width:500px;width:100%}.work-table thead{background:#f9fafb}.work-table th{border-bottom:2px solid #e5e7eb;color:#111827;font-size:.95rem;font-weight:600;padding:16px;text-align:left}.work-table td{border-bottom:1px solid #f3f4f6;color:#374151;font-size:.95rem;padding:16px}.work-table tbody tr:hover{background:#f9fafb}.work-table tbody tr:last-child td{border-bottom:none}.loading{color:#6b7280;font-size:1.2rem;padding:80px 20px;text-align:center}@media (max-width:1024px){.dashboard{padding:24px}.summary-cards{gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.chart-container,.work-table{padding:24px}}@media (max-width:768px){.dashboard{padding:16px}.dashboard-header{margin-bottom:20px;padding-bottom:16px}.dashboard-header h1{font-size:1.3rem}.dashboard-tabs{border-bottom:none;border-radius:12px;flex-direction:row;gap:8px;margin-bottom:20px;padding:8px}.tab-button{border:2px solid #0000;border-radius:8px;bottom:0;font-size:.85rem;padding:10px 16px;text-align:center;width:auto}.tab-button:hover{background:#f3f4f6}.tab-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.summary-cards{gap:16px;grid-template-columns:1fr;margin-bottom:20px}.summary-card{padding:20px}.card-icon{font-size:2rem;margin-bottom:12px}.card-label{font-size:.85rem;margin-bottom:8px}.card-value{font-size:1.6rem}.chart-container,.work-table{margin-bottom:20px;padding:16px}.chart-container h2,.work-table h2{font-size:1.1rem;margin-bottom:16px}.work-table table{font-size:.85rem;min-width:450px}.work-table td,.work-table th{padding:10px 8px}.loading{font-size:1rem;padding:60px 20px}}@media (max-width:480px){.dashboard{padding:12px}.dashboard-header h1{font-size:1.2rem;gap:8px}.dashboard-tabs{gap:6px;padding:6px}.tab-button{font-size:.8rem;padding:8px 12px}.summary-cards{gap:12px}.summary-card{padding:16px}.card-icon{font-size:1.8rem;margin-bottom:10px}.card-value{font-size:1.4rem}.chart-container,.work-table{margin-bottom:16px;padding:12px}.chart-container h2,.work-table h2{font-size:1rem}.work-table table{font-size:.8rem;min-width:400px}.work-table td,.work-table th{padding:8px 6px}}.month-nav{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.month-nav h2{color:#111827;flex:1 1;font-size:1.2rem;margin:0;text-align:center}.month-nav-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 18px;transition:background .2s;white-space:nowrap}.month-nav-btn:hover{background:#2563eb}.monthly-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.monthly-table{border-collapse:collapse;font-size:.82rem;white-space:nowrap}.monthly-table td,.monthly-table th{border:1px solid #e5e7eb;padding:6px 8px;text-align:center}.monthly-table thead th{background:#f3f4f6;color:#374151;font-weight:600}.task-col{background:#f3f4f6;min-width:120px}.task-col,.task-name-cell{left:0;position:-webkit-sticky;position:sticky;text-align:left!important;z-index:1}.task-name-cell{background:#fff;color:#111827;font-weight:500}.monthly-table tbody tr:hover .task-name-cell{background:#f9fafb}.day-col{min-width:44px}.total-col{min-width:80px}.total-cell,.total-col{background:#eff6ff;font-weight:600}.total-cell{color:#1d4ed8}.has-work{background:#dbeafe;color:#1e40af;font-weight:600}.no-work{color:#d1d5db}.no-data{color:#9ca3af;padding:24px 0;text-align:center}@media (max-width:768px) and (orientation:landscape){.summary-cards{grid-template-columns:repeat(3,1fr)}.chart-container,.work-table{max-height:60vh;overflow-y:auto}}.realtime-monitor{margin-top:16px}.realtime-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.realtime-header h2{color:#111827;font-size:1.2rem;margin:0}.realtime-badge{background:#d1fae5;border-radius:999px;color:#065f46;font-size:.8rem;font-weight:600;padding:4px 12px}.realtime-refresh-note{color:#9ca3af;font-size:.75rem}.realtime-error{background:#fee2e2;border-radius:8px;color:#dc2626;font-size:.9rem;margin-bottom:16px;padding:10px 16px}.realtime-empty{color:#6b7280;font-size:.95rem;padding:48px 0;text-align:center}.realtime-table-wrapper{border-radius:12px;box-shadow:0 1px 4px #00000014;overflow-x:auto}.realtime-table{background:#fff;border-collapse:collapse;font-size:.9rem;width:100%}.realtime-table thead tr{background:#f9fafb;border-bottom:2px solid #e5e7eb}.realtime-table th{color:#374151;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.realtime-row{border-bottom:1px solid #f3f4f6;transition:background .15s}.realtime-row:last-child{border-bottom:none}.realtime-row:hover{background:#f0fdf4}.realtime-table td{color:#374151;padding:14px 16px}.realtime-user{align-items:center;display:flex;font-weight:500;gap:8px}.realtime-dot{animation:pulse-dot 2s infinite;background:#10b981;border-radius:50%;display:inline-block;flex-shrink:0;height:10px;width:10px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.realtime-task{color:#1d4ed8;font-weight:500}.realtime-elapsed{color:#059669;font-family:monospace;font-size:1rem;font-weight:600}.realtime-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.btn-start-monitor{background:#059669;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 18px;transition:background .15s}.btn-start-monitor:hover{background:#047857}.btn-stop-monitor{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 18px;transition:background .15s}.btn-stop-monitor:hover{background:#b91c1c}.btn-select-users{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 18px;transition:border-color .15s,background .15s}.btn-select-users:hover{background:#f9fafb;border-color:#6b7280}.realtime-row-idle{opacity:.6}.status-active{background:#d1fae5;color:#065f46}.status-active,.status-idle{border-radius:999px;display:inline-block;font-size:.78rem;font-weight:600;padding:3px 10px}.status-idle{background:#f3f4f6;color:#6b7280}.today-gantt{background:#fff;border-radius:12px;box-shadow:0 1px 4px #00000014;margin-top:28px;padding:20px 24px}.today-gantt-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:16px}.today-gantt h3{color:#111827;font-size:1rem;font-weight:600;margin:0}.gantt-zoom-controls{align-items:center;display:flex;gap:6px}.gantt-zoom-btn{background:#f3f4f6;border:1.5px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.85rem;line-height:1.4;padding:4px 10px;transition:background .15s,border-color .15s}.gantt-zoom-btn:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.gantt-zoom-btn:disabled{cursor:default;opacity:.4}.gantt-zoom-label{color:#6b7280;font-size:.82rem;min-width:32px;text-align:center}.today-gantt-empty{color:#9ca3af;font-size:.9rem;padding:24px 0;text-align:center}.gantt-body{align-items:stretch;display:flex;overflow:hidden}.gantt-label-col{border-right:1.5px solid #e5e7eb;flex-shrink:0}.gantt-label-spacer{flex-shrink:0}.gantt-label-cell{align-items:center;border-bottom:1px solid #e5e7eb;box-sizing:border-box;color:#374151;display:flex;font-size:13px;font-weight:500;justify-content:flex-end;padding-right:12px}.gantt-chart-scroll{flex:1 1;overflow-x:auto;overflow-y:hidden;scrollbar-color:#d1d5db #0000;scrollbar-width:thin}.gantt-chart-scroll::-webkit-scrollbar{height:6px}.gantt-chart-scroll::-webkit-scrollbar-track{background:#0000}.gantt-chart-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.gantt-tooltip{background:#1f2937;border-radius:8px;box-shadow:0 4px 16px #00000040;color:#fff;font-size:.82rem;min-width:160px;padding:10px 14px;pointer-events:none;position:fixed;white-space:nowrap;z-index:9999}.gantt-tooltip-task{color:#f9fafb;font-size:.88rem;font-weight:700;margin-bottom:6px}.gantt-tooltip-row{display:flex;gap:16px;justify-content:space-between;line-height:1.7}.gantt-tooltip-label{color:#9ca3af}.gantt-tooltip-value{color:#f3f4f6;font-weight:600}.today-gantt-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.today-gantt-legend-item{align-items:center;color:#374151;display:flex;font-size:.8rem;gap:6px}.today-gantt-legend-color{border-radius:3px;display:inline-block;flex-shrink:0;height:12px;width:12px}.dialog-overlay{background:#00000073}.dialog-box{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;max-height:80vh;max-width:94vw;overflow:hidden;width:480px}.dialog-header{border-bottom:1px solid #e5e7eb;padding:18px 20px 14px}.dialog-header h3{font-size:1rem;font-weight:600}.dialog-close-btn{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1rem;padding:4px 8px;transition:background .15s}.dialog-close-btn:hover{background:#f3f4f6}.dialog-search-wrap{align-items:center;background:#fafafa;border-bottom:1px solid #f3f4f6;display:flex;gap:8px;padding:12px 16px}.dialog-search-icon{font-size:.9rem}.dialog-search-input{background:#0000;border:none;color:#374151;flex:1 1;font-size:.9rem;outline:none}.dialog-search-clear{background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:.85rem;padding:2px 6px}.dialog-search-clear:hover{color:#6b7280}.dialog-list-header{background:#f9fafb;border-bottom:1px solid #f3f4f6;padding:8px 16px}.dialog-check-all{align-items:center;color:#6b7280;cursor:pointer;display:flex;font-size:.85rem;gap:8px}.dialog-check-all input{cursor:pointer}.dialog-user-list{flex:1 1;overflow-y:auto;padding:4px 0}.dialog-no-result{color:#9ca3af;font-size:.9rem;padding:24px;text-align:center}.dialog-user-item{align-items:center;cursor:pointer;display:flex;gap:12px;padding:10px 16px;transition:background .1s}.dialog-user-item:hover{background:#f9fafb}.dialog-user-item input[type=checkbox]{cursor:pointer;flex-shrink:0}.dialog-user-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dialog-user-name{color:#111827;font-size:.9rem;font-weight:500}.dialog-user-email,.dialog-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-user-email{color:#9ca3af;font-size:.78rem}.dialog-check-mark{color:#059669;font-size:.85rem;font-weight:600}.dialog-footer{align-items:center;background:#fafafa;border-top:1px solid #e5e7eb;justify-content:space-between;padding:14px 16px}.dialog-selected-count{color:#6b7280;font-size:.85rem}.dialog-footer-btns{display:flex;gap:8px}.btn-dialog-cancel{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;padding:8px 18px;transition:background .15s}.btn-dialog-cancel:hover{background:#f9fafb}.btn-dialog-save{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 18px;transition:background .15s}.btn-dialog-save:hover{background:#1d4ed8}.today-breakdown{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-top:24px;padding:24px}.today-breakdown h3{color:#111827;font-size:1rem;font-weight:700;margin:0 0 16px}.today-breakdown-scroll{overflow-x:auto;scrollbar-color:#d1d5db #0000;scrollbar-width:thin}.today-breakdown-scroll::-webkit-scrollbar{height:6px}.today-breakdown-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.today-breakdown-table{border-collapse:collapse;min-width:500px;width:100%}.today-breakdown-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-size:.875rem;font-weight:600;padding:10px 14px;text-align:left;white-space:nowrap}.today-breakdown-table td{border-bottom:1px solid #f3f4f6;font-size:.875rem;padding:10px 14px}.breakdown-td-sticky,.breakdown-th-sticky{background:#fff;left:0;position:-webkit-sticky;position:sticky;z-index:2}.breakdown-th-sticky{background:#f9fafb}.breakdown-user-first td{border-top:2px solid #e5e7eb}.breakdown-user-cell{color:#111827;font-weight:700;padding-top:12px;vertical-align:top;white-space:nowrap}.breakdown-task-cell{align-items:center;display:flex;gap:8px;white-space:nowrap}.breakdown-task-dot{border-radius:2px;flex-shrink:0;height:10px;width:10px}.breakdown-time{color:#111827;font-weight:600;white-space:nowrap}.breakdown-count{color:#6b7280;white-space:nowrap}.status-badge{border-radius:20px;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.02em;padding:2px 7px;white-space:nowrap}.status-badge--done{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.status-badge--pending{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.my-folder-filter{align-items:center;background:#f0f4ff;border:2px solid #dbeafe;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:12px 16px}.my-folder-filter-label{color:#2563eb;flex-shrink:0;font-size:.88rem;font-weight:700;white-space:nowrap}.my-folder-filter-btns{display:flex;flex-wrap:wrap;gap:8px}.my-folder-btn{background:#fff;border:2px solid #93c5fd;border-radius:20px;color:#374151;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 14px;transition:all .2s}.my-folder-btn:hover{border-color:#3b82f6;color:#3b82f6}.my-folder-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.my-custom-range,.my-period-bar{margin-bottom:16px}.my-gantt-wrapper{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:20px}.my-gantt{position:relative}.my-summary-section{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:24px}.my-summary-section h3{color:#111827;font-size:1rem;font-weight:700;margin:0 0 16px}.my-summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.my-stat-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;padding:16px 20px;text-align:center}.my-stat-label{color:#6b7280;font-size:.85rem;font-weight:500;margin-bottom:8px}.my-stat-value{color:#111827;font-size:1.4rem;font-weight:700}.my-breakdown-section{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:24px}.my-breakdown-section h3{color:#111827;font-size:1rem;font-weight:700;margin:0 0 16px}.my-breakdown-scroll{overflow-x:auto;scrollbar-color:#d1d5db #0000;scrollbar-width:thin}.my-breakdown-table{border-collapse:collapse;min-width:400px;width:100%}.my-breakdown-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-size:.875rem;font-weight:600;padding:10px 14px;text-align:left;white-space:nowrap}.my-breakdown-table td{border-bottom:1px solid #f3f4f6;font-size:.875rem;padding:10px 14px}.my-breakdown-table tr:hover{background:#f9fafb}.my-task-name-cell{align-items:center;color:#111827;display:flex;font-weight:600;gap:8px}.my-task-time{color:#111827;font-weight:600;white-space:nowrap}.my-task-count{color:#6b7280}.realtime-count-cell{text-align:center;white-space:nowrap}.realtime-count-badge{display:inline-block;font-weight:700}.realtime-count-done{color:#2563eb;font-size:1.1rem}.realtime-count-total{color:#6b7280;font-size:.9rem}.settings{background:#f3f4f6;min-height:calc(100vh - 80px);padding:24px}.settings-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:16px;margin-bottom:24px;padding-bottom:16px}.settings-header h1{align-items:center;color:#111827;display:flex;font-size:1.8rem;gap:10px;margin:0}.settings-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:240px 1fr;max-width:1400px}.settings-sidebar{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;height:-webkit-fit-content;height:fit-content;padding:12px;position:-webkit-sticky;position:sticky;top:100px}.settings-sidebar button{align-items:center;background:#fff;border:none;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:10px;margin-bottom:6px;padding:12px 16px;text-align:left;transition:all .3s;width:100%}.settings-sidebar button:last-child{margin-bottom:0}.settings-sidebar button:hover{background:#f3f4f6;color:#111827}.settings-sidebar button.active{background:#3b82f6;color:#fff}.settings-content{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;min-height:500px;padding:32px}.settings-section{margin-bottom:32px}.settings-section:last-child{margin-bottom:0}.section-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.section-header h2{align-items:center;color:#111827;display:flex;font-size:1.4rem;gap:10px;margin:0}.section-content h3{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 16px}.section-content h3:not(:first-child){margin-top:32px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.info-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.info-item.full-width{grid-column:1/-1}.info-label{font-size:.85rem;margin-bottom:8px}.info-value{word-break:break-word}.edit-button{align-items:center;background:#3b82f6;border:2px solid #3b82f6;color:#fff;display:flex;font-size:.95rem;gap:8px;padding:10px 24px;white-space:nowrap}.edit-button:hover{background:#2563eb;border-color:#2563eb;transform:translateY(-2px)}.coming-soon{background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;color:#6b7280;font-size:1.1rem;padding:60px 20px;text-align:center}@media (max-width:1024px){.settings-container{grid-template-columns:1fr}.settings-sidebar{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));padding:12px;position:static}.settings-sidebar button{justify-content:center;margin-bottom:0;text-align:center}.settings-content{padding:28px}.info-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width:768px){.settings{padding:16px}.settings-header{flex-wrap:wrap;gap:12px;margin-bottom:20px;padding-bottom:12px}.back-button{font-size:.85rem;padding:8px 14px}.settings-header h1{flex:1 1 100%;font-size:1.3rem;gap:8px}.settings-sidebar{gap:8px;grid-template-columns:repeat(2,1fr);padding:10px}.settings-sidebar button{flex-direction:column;font-size:.85rem;gap:6px;padding:12px 10px}.settings-content{padding:20px}.section-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:12px}.section-header h2{font-size:1.2rem}.edit-button{font-size:.9rem;justify-content:center;padding:10px 20px;width:100%}.section-content h3{font-size:1rem;margin-bottom:12px}.section-content h3:not(:first-child){margin-top:24px}.info-grid{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.info-item{padding:14px}.info-label{font-size:.8rem;margin-bottom:6px}.info-value{font-size:.95rem}.coming-soon{font-size:1rem;padding:40px 20px}}@media (max-width:480px){.settings{padding:12px}.settings-header h1{font-size:1.1rem}.back-button{font-size:.8rem;padding:6px 12px}.settings-sidebar{gap:6px;padding:8px}.settings-sidebar button{font-size:.8rem;gap:4px;padding:10px 8px}.settings-content{padding:16px}.section-header h2{font-size:1.1rem}.edit-button{font-size:.85rem;padding:8px 16px}.section-content h3{font-size:.95rem}.info-item{padding:12px}.info-label{font-size:.75rem}.info-value{font-size:.9rem}}.users-table-container{-webkit-overflow-scrolling:touch;border:2px solid #e5e7eb;border-radius:8px;overflow-x:auto}.users-table{border-collapse:collapse;min-width:800px;width:100%}.users-table thead{background:#f9fafb}.users-table th{border-bottom:2px solid #e5e7eb;color:#111827;font-weight:600;text-align:left;white-space:nowrap}.users-table td,.users-table th{font-size:.9rem;padding:14px 16px}.users-table td{border-bottom:1px solid #f3f4f6;color:#374151}.users-table tbody tr:hover{background:#f9fafb}.users-table tbody tr:last-child td{border-bottom:none}.username-link{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.9rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.username-link:hover{color:#1d4ed8}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-th:hover{background:#f3f4f6}.sort-icon{font-size:.8rem;margin-left:4px}.sort-icon--none{color:#d1d5db}.sort-icon--active{color:#2563eb}.users-table-meta{align-items:center;color:#6b7280;display:flex;font-size:.88rem;justify-content:space-between;margin-bottom:10px}.users-total-count{color:#374151;font-weight:600}.users-page-info{color:#9ca3af}.pagination{align-items:center;display:flex;gap:4px;justify-content:center;margin-top:16px}.page-btn{background:#fff;border:2px solid #e5e7eb;border-radius:7px;color:#374151;cursor:pointer;font-size:.88rem;font-weight:600;height:34px;min-width:34px;padding:0 8px;transition:all .15s}.page-btn:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6}.page-btn--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.page-btn:disabled{cursor:not-allowed;opacity:.35}.profile-dialog{max-width:560px;width:95vw}.profile-dialog-header-actions{align-items:center;display:flex;gap:8px}.profile-edit-btn{background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:8px;color:#2563eb;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 14px;transition:all .15s;white-space:nowrap}.profile-edit-btn:hover{background:#dbeafe;border-color:#93c5fd}.profile-info-list{display:flex;flex-direction:column;gap:0}.profile-info-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:16px;padding:12px 0}.profile-info-item:last-child{border-bottom:none}.profile-info-label{color:#6b7280;flex-shrink:0;font-size:.8rem;font-weight:600;min-width:120px}.profile-info-value{color:#111827;flex:1 1;font-size:.95rem;font-weight:500;min-width:0;word-break:break-all}.profile-info-value--mono{color:#6b7280;font-family:monospace;font-size:.82rem}.role-badge{border-radius:12px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 12px;white-space:nowrap}.loading-container{padding:60px 20px}.empty-state p{font-size:1.1rem}@media (max-width:768px){.users-table-container{border-left:none;border-radius:0;border-right:none;margin:0 -20px}.users-table{min-width:700px}.users-table td,.users-table th{font-size:.85rem;padding:10px 12px}.user-avatar{font-size:.85rem;height:32px;width:32px}.role-badge{font-size:.75rem;padding:3px 10px}}@media (max-width:480px){.users-table{min-width:600px}.users-table td,.users-table th{font-size:.8rem;padding:8px 10px}.user-avatar{font-size:.8rem;height:28px;width:28px}}.settings-section .info-grid{display:flex;flex-direction:column;gap:12px;max-width:700px}.settings-section .info-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;transition:all .3s}.settings-section .info-item:hover{background:#f3f4f6;border-color:#d1d5db}.settings-section .info-label{color:#6b7280;font-size:.8rem;font-weight:600;margin-bottom:6px}.settings-section .info-value{color:#111827;font-size:1rem;font-weight:500;word-break:break-word}.edit-button{background:#3b82f6!important;border:2px solid #3b82f6!important;border-radius:8px;color:#fff!important;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s}.edit-button:hover{background:#2563eb!important;border-color:#2563eb!important;box-shadow:0 2px 8px #3b82f64d;transform:translateY(-1px)}.dialog-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.dialog{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;margin:16px;max-width:480px;width:100%}.dialog-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px 16px}.dialog-header h3{color:#111827;font-size:1.2rem;margin:0}.dialog-close{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1.1rem;padding:4px 8px;transition:all .2s}.dialog-close:hover{background:#f3f4f6;color:#111827}.dialog-body{gap:16px;padding:20px 24px}.dialog .form-group,.dialog-body{display:flex;flex-direction:column}.dialog .form-group{gap:6px}.dialog .form-group label{color:#374151;font-size:.85rem;font-weight:600}.dialog .form-group input,.dialog .form-group textarea{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#111827;font-family:inherit;font-size:.95rem;outline:none;padding:10px 12px;transition:border-color .2s}.dialog .form-group input:focus,.dialog .form-group textarea:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dialog .form-group input:-webkit-autofill,.dialog .form-group input:-webkit-autofill:focus{box-shadow:inset 0 0 0 1000px #fff!important}.dialog-footer{border-top:2px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 20px}.dialog-cancel{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 20px;transition:all .2s}.dialog-cancel:hover{background:#f3f4f6}.dialog-save{background:#3b82f6;border:2px solid #3b82f6;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 20px;transition:all .2s}.dialog-save:hover{background:#2563eb;border-color:#2563eb}@media (max-width:768px) and (orientation:landscape){.settings-sidebar{grid-template-columns:repeat(4,1fr)}.settings-sidebar button{font-size:.8rem;padding:10px 8px}}.assignment-date-row{align-items:center;display:flex;gap:12px;margin-bottom:20px}.assignment-date-label{color:#374151;font-size:.9rem;font-weight:600;white-space:nowrap}.assignment-date-input{border:1.5px solid #d1d5db;border-radius:8px;color:#111827;cursor:pointer;font-size:.9rem;padding:7px 12px}.assignment-form{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:10px;margin-bottom:24px;padding:16px}.assignment-form h3{color:#374151;font-size:.9rem;font-weight:600;margin-bottom:12px}.assignment-form-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.assignment-select{background:#fff;flex:1 1;min-width:180px}.assignment-count-input,.assignment-select{border:1.5px solid #d1d5db;border-radius:8px;color:#111827;font-size:.88rem;padding:8px 12px}.assignment-count-input{text-align:center;width:80px}.assignment-save-btn{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.88rem;font-weight:600;padding:9px 18px;transition:background .15s;white-space:nowrap}.assignment-save-btn:hover{background:#1d4ed8}.assignment-save-btn:disabled{cursor:default;opacity:.5}.assignment-empty{color:#6b7280;font-size:.9rem;padding:20px 0;text-align:center}.assignment-table{table-layout:fixed;width:100%}.assignment-table td,.assignment-table th{text-align:center;width:25%;word-break:break-word}.history-table-container{overflow-x:auto}.history-table{border-collapse:collapse;font-size:.85rem;width:100%}.history-table th{background:#f3f4f6;border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600;padding:10px 12px;text-align:left;white-space:nowrap}.history-table td{border-bottom:1px solid #f3f4f6;padding:10px 12px;vertical-align:middle}.history-table tr:hover td{background:#f9fafb}.history-datetime{white-space:nowrap}.history-datetime,.history-ip{color:#374151;font-family:monospace;font-size:.82rem}.history-browser-badge{background:#eff6ff;border-radius:100px;color:#1d4ed8;display:inline-block;font-size:.78rem;font-weight:600;padding:2px 10px}.history-ua{color:#9ca3af;font-size:.78rem;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-list{display:flex;flex-direction:column;gap:10px}.audit-item{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #3b82f6;border-radius:8px;padding:14px 16px}.audit-item.audit-user_created{border-left-color:#10b981}.audit-item.audit-user_updated{border-left-color:#f59e0b}.audit-item.audit-company_info_updated{border-left-color:#8b5cf6}.audit-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.audit-action{color:#111827;font-size:.9rem;font-weight:600}.audit-datetime{color:#9ca3af;font-family:monospace;font-size:.8rem;white-space:nowrap}.audit-meta{color:#6b7280;display:flex;font-size:.82rem;gap:16px;margin-bottom:8px}.audit-changes{background:#f9fafb;border-radius:6px;display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:8px 12px}.audit-change-row{align-items:center;display:flex;font-size:.82rem;gap:8px}.audit-field{color:#6b7280;font-weight:500;min-width:80px}.audit-before{color:#dc2626;text-decoration:line-through}.audit-arrow{color:#9ca3af}.audit-after{color:#059669;font-weight:500}.user-detail-page{padding:0}.user-detail-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:14px;margin-bottom:24px;padding-bottom:16px}.user-detail-header h2{color:#111827;font-size:18px;font-weight:700;margin:0}.user-detail-back{background:#fff;border:1.5px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;white-space:nowrap}.user-detail-back:hover{background:#eff6ff}.initial-user-checkbox{accent-color:#10b981;cursor:default;height:16px;width:16px}.faq-list{display:flex;flex-direction:column;gap:32px}.faq-category h3{border-bottom:2px solid #dbeafe;color:#3b82f6;font-size:14px;font-weight:700;margin:0 0 12px;padding-bottom:6px}.faq-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:8px;padding:14px 16px}.faq-item:last-child{margin-bottom:0}.faq-q{color:#111827;font-weight:600;margin-bottom:8px}.faq-a,.faq-q{font-size:14px}.faq-a{color:#4b5563;line-height:1.6}.mfa-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin-top:24px;padding:16px 20px}.mfa-section-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.mfa-desc{color:#6b7280;font-size:13px;margin:4px 0 0}.mfa-setup-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 18px;white-space:nowrap}.mfa-setup-btn:hover{background:#2563eb}.mfa-status-block{padding:8px 0;text-align:center}.mfa-status-badge{border-radius:100px;display:inline-block;font-size:14px;font-weight:700;margin-bottom:12px;padding:6px 16px}.mfa-enabled{background:#d1fae5;color:#065f46}.mfa-disabled{background:#fee2e2;color:#991b1b}.mfa-status-block p{color:#374151;font-size:14px}.mfa-disable-btn{background:#fff;border:2px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:8px 20px}.mfa-step-label{color:#374151;font-size:13px;font-weight:600;margin:12px 0 6px}.mfa-qr{border:1px solid #e5e7eb;border-radius:8px;display:block;margin:0 auto 8px}.mfa-secret-box{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-family:monospace;font-size:13px;margin-bottom:4px;padding:8px 12px;word-break:break-all}.mfa-code-input{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:22px;font-weight:700;letter-spacing:6px;padding:10px 14px;text-align:center;width:100%}.mfa-code-input:focus{border-color:#3b82f6;outline:none}.ip-restriction-note{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#6b7280;font-size:13px;margin-bottom:24px;padding:10px 14px}.ip-current-badge{background:#dbeafe;border-radius:4px;color:#1e40af;display:inline-block;font-size:12px;font-weight:600;margin-left:8px;padding:2px 8px}.ip-section-block{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:32px;padding:16px 20px}.ip-section-block h3{color:#374151;font-size:14px;font-weight:700;margin:0 0 6px}.ip-section-desc{color:#6b7280;font-size:13px;margin:0 0 14px}.ip-preset-form{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.ip-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.ip-input-sm{font-size:13px;padding:6px 10px}.ip-textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-family:monospace;font-size:13px;padding:8px 12px;resize:vertical;width:100%}.ip-preset-form-actions{display:flex;gap:8px;justify-content:flex-end}.ip-empty{color:#9ca3af;font-size:13px}.ip-preset-list{display:flex;flex-direction:column;gap:8px}.ip-preset-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:10px 14px}.ip-preset-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.ip-preset-name{color:#111827;font-size:14px;font-weight:600}.ip-preset-cidrs{color:#6b7280;font-family:monospace;font-size:12px}.ip-preset-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:6px}.ip-btn-primary{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.ip-btn-primary:hover{background:#2563eb}.ip-btn-secondary{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;padding:6px 12px}.ip-btn-secondary:hover{background:#f9fafb}.ip-btn-danger{background:#fff;border:1px solid #ef4444;border-radius:6px;color:#ef4444;cursor:pointer;font-size:13px;padding:6px 12px}.ip-btn-danger:hover{background:#fef2f2}.ip-btn-sm{font-size:12px;padding:4px 8px}.ip-user-list{display:flex;flex-direction:column;gap:12px}.ip-user-item{background:#fafafa;border:1px solid #e5e7eb;border-radius:10px;padding:12px 16px}.ip-user-item.ip-warn{background:#fffbeb;border-color:#fcd34d}.ip-user-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}.ip-user-name{color:#111827;font-size:14px;font-weight:600}.ip-restriction-count{background:#e5e7eb;color:#6b7280}.ip-restriction-count,.ip-warn-badge{border-radius:100px;font-size:12px;padding:2px 8px}.ip-warn-badge{background:#fde68a;color:#92400e}.ip-no-restriction{color:#9ca3af;font-size:12px}.ip-restriction-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.ip-restriction-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.ip-cidr{background:#f3f4f6;border-radius:4px;color:#1f2937;font-family:monospace;font-size:13px;padding:2px 8px}.ip-label{color:#6b7280;font-size:12px}.ip-add-form{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ip-add-form .ip-input{flex:1 1;min-width:140px}.ip-bulk-user-list{border:1px solid #e5e7eb;border-radius:8px;max-height:280px;overflow-y:auto;padding:8px}.ip-bulk-user-row{align-items:center;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 10px}.ip-bulk-user-row:hover{background:#f9fafb}.ip-bulk-user-row input{accent-color:#3b82f6;height:16px;width:16px}@media (max-width:768px){.settings-container{flex-direction:column}.settings-sidebar{-webkit-overflow-scrolling:touch;border-bottom:2px solid #e5e7eb;border-right:none;flex-direction:row;gap:4px;overflow-x:auto;padding:8px;width:100%}.settings-sidebar button{flex-shrink:0;font-size:13px;padding:8px 12px;white-space:nowrap}.settings-content{min-width:0;padding:16px}.settings-section{padding:0}.section-header{flex-wrap:wrap;gap:8px}.info-grid{gap:10px;grid-template-columns:1fr 1fr}.users-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.users-table{min-width:480px}.history-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.history-table{min-width:480px}.history-table td:last-child,.history-table th:last-child{display:none}.audit-list{gap:10px}.audit-change-row{flex-direction:column;gap:2px}.dialog{margin:0 8px;max-width:95vw!important;width:95vw!important}.user-detail-header{flex-wrap:wrap;gap:8px}.ip-preset-item{align-items:flex-start}.ip-add-form,.ip-preset-item{flex-direction:column}.ip-add-form .ip-input{min-width:100%}.mfa-section-header{align-items:flex-start;flex-direction:column}.billing-page{padding:12px}.plan-stats{gap:12px}.quantity-controls{gap:8px}}@media (max-width:480px){.settings-sidebar button{font-size:12px;padding:7px 10px}.info-grid{grid-template-columns:1fr}.section-header h2{font-size:16px}.history-table td:nth-child(4),.history-table th:nth-child(4){display:none}.ip-preset-actions{gap:4px}.ip-btn-danger,.ip-btn-secondary{font-size:12px;padding:4px 8px}}.mfa-reset-btn{background:#fff;border:2px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;white-space:nowrap}.mfa-reset-btn:hover:not(:disabled){background:#fef2f2}.mfa-reset-btn:disabled{cursor:not-allowed;opacity:.5}.mfa-reset-result{border-radius:8px;font-size:13px;font-weight:500;margin:12px 0;padding:10px 14px}.mfa-reset-result--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d}.mfa-reset-result--error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.task-management{padding:0}.task-dialog-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.task-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;margin:16px;max-width:480px;width:100%}.task-dialog-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px 16px}.task-dialog-header h3{color:#111827;font-size:1.2rem;margin:0}.task-dialog-close{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1.1rem;padding:4px 8px;transition:all .2s}.task-dialog-close:hover{background:#f3f4f6;color:#111827}.task-dialog-body{display:flex;flex-direction:column;gap:16px;padding:20px 24px}.task-form-group{display:flex;flex-direction:column;gap:6px}.task-form-group label{color:#374151;font-size:.9rem;font-weight:600}.task-form-group input,.task-form-group textarea{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#111827;font-family:inherit;font-size:.95rem;outline:none;padding:10px 12px;transition:border-color .3s}.task-form-group input:focus,.task-form-group textarea:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.task-form-group input:-webkit-autofill,.task-form-group input:-webkit-autofill:focus{box-shadow:inset 0 0 0 1000px #fff!important}.task-form-group input:disabled,.task-form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.task-form-group textarea{min-height:80px;resize:vertical}.task-dialog-footer{border-top:2px solid #e5e7eb;gap:12px;padding:16px 24px 20px}.form-actions,.task-dialog-footer{display:flex;justify-content:flex-end}.form-actions{gap:10px;margin-top:8px}.cancel-button,.submit-button{border:2px solid;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .2s}.cancel-button{background:#fff;border-color:#d1d5db;color:#6b7280}.cancel-button:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.submit-button{background:#3b82f6;border-color:#3b82f6;color:#fff}.submit-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-2px)}.cancel-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.5}.loading-container{padding:40px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#3b82f6;height:40px;margin:0 auto 16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state{background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;margin-top:16px;padding:60px 20px;text-align:center}.empty-icon{font-size:3.5rem;margin-bottom:16px}.empty-state h3{color:#111827;font-size:1.3rem;margin:0 0 8px}.empty-state p{color:#6b7280;font-size:.95rem;margin:0}.header-btn-group{display:flex;gap:8px}.task-list-item--folder{background:#f0f4ff}.task-list-item--folder:hover{background:#e8efff}.task-list-name--folder{color:#2563eb;font-size:.97rem;font-weight:700}.folder-toggle-btn{background:none;border:none;border-radius:4px;cursor:pointer;flex-shrink:0;font-size:1.2rem;padding:2px 4px;transition:transform .15s}.folder-toggle-btn:hover{background:#dbeafe}.task-form-group select{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#111827;cursor:pointer;font-family:inherit;font-size:.95rem;outline:none;padding:10px 12px;transition:border-color .3s}.task-form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.task-form-group select:disabled{background:#f3f4f6;cursor:not-allowed}.tasks-list{border:2px solid #e5e7eb;border-radius:10px;display:flex;flex-direction:column;margin-top:4px;overflow:hidden}.task-list-item{align-items:center;background:#fff;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;justify-content:space-between;padding:14px 16px;transition:background .15s}.task-list-item:last-child{border-bottom:none}.task-list-item:hover{background:#f9fafb}.task-list-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.task-list-name{color:#111827;font-size:.95rem;font-weight:600}.task-list-desc,.task-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-list-desc{color:#6b7280;font-size:.82rem}.task-list-meta{align-items:center;display:flex;flex-shrink:0;gap:16px}.task-date{color:#9ca3af;font-size:.8rem;white-space:nowrap}.task-actions{display:flex;gap:4px}.task-icon-btn{background:none;border:none;border-radius:6px;cursor:pointer;font-size:1rem;padding:4px 6px;transition:background .2s}.task-icon-btn:hover:not(:disabled){background:#eff6ff}.task-icon-btn--delete:hover:not(:disabled){background:#fee2e2}.task-icon-btn:disabled{cursor:not-allowed;opacity:.5}.task-color-swatch{border:2px solid #0000001a;border-radius:50%;display:inline-block;flex-shrink:0;height:14px;width:14px}.color-picker-section{display:flex;flex-direction:column;gap:10px}.preset-colors{display:flex;flex-wrap:wrap;gap:8px}.preset-color-btn{border:3px solid #0000;border-radius:50%;cursor:pointer;height:28px;outline:none;padding:0;transition:transform .15s,border-color .15s;width:28px}.preset-color-btn:hover:not(:disabled){transform:scale(1.2)}.preset-color-btn.selected{border-color:#111827;box-shadow:inset 0 0 0 2px #fff}.preset-color-btn:disabled{cursor:not-allowed;opacity:.5}.custom-color-row{align-items:center;display:flex;gap:10px}.custom-color-row label{color:#374151;font-size:.85rem;font-weight:500;margin:0}.custom-color-input{background:none;border:2px solid #d1d5db;border-radius:8px;cursor:pointer;height:36px;padding:2px;width:40px}.custom-color-input::-webkit-color-swatch-wrapper{border-radius:5px;padding:0}.custom-color-input::-webkit-color-swatch{border:none;border-radius:5px}.color-hex-label{background:#f3f4f6;border-radius:6px;color:#6b7280;font-family:monospace;font-size:.85rem;padding:4px 8px}@media (max-width:768px){.task-list-meta{align-items:flex-end;flex-direction:column;gap:6px}}.task-comparison{background:#f3f4f6;min-height:calc(100vh - 80px);padding:20px}.header-btn-group{flex-wrap:wrap;justify-content:flex-end}.toggle-archive-btn{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.88rem;font-weight:600;padding:8px 14px;transition:all .2s;white-space:nowrap}.toggle-archive-btn:hover{background:#f3f4f6;border-color:#9ca3af}.toggle-archive-btn--active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.csv-export-btn{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.88rem;font-weight:600;padding:8px 14px;transition:all .2s;white-space:nowrap}.csv-export-btn:hover:not(:disabled){background:#f0fdf4;border-color:#10b981;color:#059669}.csv-import-btn{background:#eff6ff;border:2px solid #3b82f6;border-radius:8px;color:#1d4ed8;cursor:pointer;font-size:.88rem;font-weight:600;padding:8px 14px;transition:all .2s;white-space:nowrap}.csv-import-btn:hover:not(:disabled){background:#3b82f6;color:#fff}.csv-export-btn:disabled,.csv-import-btn:disabled{cursor:not-allowed;opacity:.5}.task-list-item--archived{background:#f9fafb!important;opacity:.75}.task-list-item--archived:hover{background:#f3f4f6!important;opacity:1}.task-list-name--archived{color:#9ca3af!important;text-decoration:line-through}.archive-badge{background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;display:inline-block;font-size:.72rem;font-weight:600;margin-left:8px;padding:2px 6px;text-decoration:none;vertical-align:middle}.archived-date{color:#9ca3af;font-size:.78rem}.task-icon-btn--restore:hover:not(:disabled){background:#f0fdf4}.csv-modal{max-width:600px!important}.csv-drop-zone{background:#fafafa;border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;padding:32px 20px;text-align:center;transition:all .2s}.csv-drop-zone--active,.csv-drop-zone:hover{background:#eff6ff;border-color:#3b82f6}.csv-drop-icon{font-size:2.5rem;margin-bottom:10px}.csv-drop-text{color:#374151;font-size:.98rem;font-weight:600;margin:0 0 4px}.csv-drop-sub{color:#9ca3af;font-size:.85rem;margin:0}.csv-error-msg{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.88rem;margin-top:8px;padding:10px 14px}.csv-format-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:4px;padding:16px}.csv-format-title{color:#374151;font-size:.88rem;font-weight:700;margin-bottom:8px}.csv-format-code{background:#1e293b;border-radius:6px;color:#93c5fd;font-family:monospace;font-size:.85rem;letter-spacing:.02em;margin-bottom:10px;padding:8px 12px}.csv-format-list{color:#4b5563;font-size:.85rem;line-height:1.8;margin:0 0 10px 16px;padding:0}.csv-required{color:#ef4444;font-weight:700}.csv-format-note{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;color:#6b7280;font-size:.82rem;margin-bottom:12px;padding:6px 10px}.csv-sample-btn{background:none;border:1px solid #3b82f6;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 14px;transition:all .2s}.csv-sample-btn:hover{background:#3b82f6;color:#fff}.csv-preview-body{gap:12px!important}.csv-preview-header{align-items:center;display:flex;justify-content:space-between}.csv-preview-file{color:#6b7280;font-size:.88rem}.csv-preview-count{color:#3b82f6;font-size:.9rem;font-weight:700}.csv-preview-scroll{border:1px solid #e5e7eb;border-radius:8px;max-height:260px;overflow-y:auto}.csv-preview-table{border-collapse:collapse;font-size:.85rem;width:100%}.csv-preview-table th{background:#f3f4f6;border-bottom:1px solid #e5e7eb;color:#374151;font-weight:600;padding:8px 10px;position:-webkit-sticky;position:sticky;text-align:left;top:0}.csv-preview-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:7px 10px}.csv-preview-table tr:last-child td{border-bottom:none}.csv-folder-cell{color:#2563eb}.csv-folder-icon{margin-right:4px}.csv-no-val{color:#9ca3af;font-style:italic}.csv-desc-cell{color:#6b7280;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-color-dot{border:1px solid #0000001a;border-radius:50%;display:inline-block;height:12px;margin-right:5px;vertical-align:middle;width:12px}.csv-color-code{color:#6b7280;font-family:monospace;font-size:.82rem}.csv-archive-warning{background:#fef9ec;border:1px solid #fcd34d;border-radius:8px;padding:12px 14px}.csv-archive-warning-title{color:#92400e;font-size:.88rem;font-weight:700;margin-bottom:6px}.csv-archive-list{color:#78350f;font-size:.85rem;line-height:1.7;margin:0;padding-left:18px}.csv-preview-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.csv-result-body{gap:12px!important;padding:28px 24px!important;text-align:center}.csv-result-icon{font-size:3rem;margin-bottom:4px}.csv-result-title{color:#111827;font-size:1.1rem;font-weight:700}.csv-result-stats{display:flex;gap:24px;justify-content:center;margin:4px 0}.csv-result-stat{align-items:center;display:flex;flex-direction:column;gap:2px}.csv-result-num{color:#3b82f6;font-size:2rem;font-weight:800;line-height:1}.csv-result-num--archive{color:#9ca3af}.csv-result-label{color:#6b7280;font-size:.82rem}.csv-result-archived-list{background:#f9fafb;border-radius:8px;color:#6b7280;font-size:.85rem;max-height:120px;overflow-y:auto;padding:10px 14px;text-align:left;width:100%}.csv-result-archived-title{color:#374151;font-weight:600;margin-bottom:4px}.csv-result-archived-list ul{line-height:1.8;margin:0;padding-left:16px}@media (max-width:768px){.header-btn-group{gap:6px}.csv-export-btn,.csv-import-btn,.toggle-archive-btn{font-size:.82rem;padding:6px 10px}.csv-modal{margin:8px!important}}.tm-toast{animation:tm-toast-in .2s ease;border-radius:8px;bottom:32px;box-shadow:0 4px 16px #0000002e;color:#fff;font-size:14px;font-weight:600;left:50%;padding:12px 24px;position:fixed;transform:translateX(-50%);white-space:nowrap;z-index:9999}@keyframes tm-toast-in{0%{opacity:0;transform:translateX(-50%) translateY(12px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.tm-toast-success{background:#10b981}.tm-toast-error{background:#ef4444}.tm-toast-info{background:#3b82f6}.tm-confirm-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:9998}.tm-confirm-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:400px;padding:28px 24px 20px;width:90%}.tm-confirm-message{color:#374151;font-size:14px;line-height:1.6;margin:0 0 20px;white-space:pre-wrap}.tm-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.tm-confirm-cancel{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;padding:8px 18px}.tm-confirm-cancel:hover{background:#f9fafb}.tm-confirm-ok{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px}.tm-confirm-ok:hover{background:#dc2626}.billing-page{margin:0 auto;max-width:640px;padding:24px}.billing-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:16px;margin-bottom:24px;padding-bottom:16px}.billing-header h2{color:#111827;font-size:20px;font-weight:700;margin:0}.billing-back-btn{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.billing-loading{align-items:center;color:#6b7280;display:flex;justify-content:center;min-height:200px;padding:48px;text-align:center}.billing-spinner{animation:billing-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#6366f1;height:40px;width:40px}@keyframes billing-spin{to{transform:rotate(1turn)}}.billing-redirect-overlay{align-items:center;background:#ffffffe6;color:#374151;display:flex;flex-direction:column;font-size:15px;gap:16px;inset:0;justify-content:center;position:fixed;z-index:1000}.billing-alert{border-radius:8px;font-size:14px;margin-bottom:16px;padding:12px 16px}.billing-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.billing-alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.billing-section{margin-bottom:32px}.billing-section h3{color:#374151;font-size:16px;font-weight:600;margin:0 0 12px}.billing-plan-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px}.plan-free{border-color:#e5e7eb}.plan-active{border-color:#3b82f6}.plan-pastdue{border-color:#f59e0b}.plan-badge{background:#f3f4f6;border-radius:100px;color:#374151;display:inline-block;font-size:12px;font-weight:600;margin-bottom:16px;padding:4px 12px}.plan-active .plan-badge{background:#eff6ff;color:#3b82f6}.plan-pastdue .plan-badge{background:#fffbeb;color:#d97706}.plan-stats{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.plan-stat{align-items:center;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px}.stat-value{color:#111827;font-size:16px;font-weight:600}.stat-sub{background:#f3f4f6;border-radius:4px;color:#6b7280;display:inline-block;margin-left:4px;padding:1px 6px;vertical-align:middle}.stat-sub,.stat-sub-line{font-size:11px;font-weight:500}.stat-sub-line{color:#9ca3af;display:block;margin-top:2px}.billing-upgrade-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px}.upgrade-note{color:#6b7280;font-size:14px;margin:0 0 20px;text-align:center}.quantity-selector{align-items:center;display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.quantity-selector label{color:#374151;font-size:14px;font-weight:600}.quantity-controls{align-items:center;display:flex;gap:16px}.quantity-controls button{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:16px;font-weight:600;padding:8px 16px}.quantity-controls button:disabled{cursor:not-allowed;opacity:.4}.quantity-display{color:#111827;font-size:24px;font-weight:700;min-width:80px;text-align:center}.price-preview{color:#6b7280;font-size:14px}.price-preview strong{color:#111827;font-size:18px}.upgrade-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;width:100%}.upgrade-btn:hover{background:#2563eb}.upgrade-btn:disabled{cursor:not-allowed;opacity:.6}.portal-btn{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.portal-btn:hover{background:#eff6ff}.portal-btn:disabled{cursor:not-allowed;opacity:.6}.portal-row{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:flex;gap:16px;justify-content:space-between;padding:16px 20px}.portal-desc{color:#6b7280;flex:1 1;font-size:14px;margin:0}.billing-faq-row{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:16px;justify-content:space-between;padding:14px 20px}.billing-faq-label{color:#374151;font-size:14px}.billing-faq-btn{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:0;text-decoration:none;white-space:nowrap}.billing-faq-btn:hover{text-decoration:underline}.billing-history-empty{color:#9ca3af;font-size:14px;padding:24px 0;text-align:center}.billing-history-list{display:flex;flex-direction:column;gap:8px}.billing-history-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:12px;padding:12px 16px}.bh-invoice-payment-succeeded{border-left:3px solid #10b981}.bh-invoice-payment-failed{border-left:3px solid #ef4444}.bh-customer-subscription-created{border-left:3px solid #3b82f6}.bh-customer-subscription-updated{border-left:3px solid #f59e0b}.bh-customer-subscription-deleted{border-left:3px solid #6b7280}.bh-icon{flex-shrink:0;font-size:20px}.bh-body{flex:1 1;min-width:0}.bh-desc{color:#111827;font-size:14px;font-weight:500}.bh-amount{color:#6b7280;font-size:13px;margin-top:2px}.bh-date{color:#9ca3af;flex-shrink:0;font-size:12px;white-space:nowrap}.plan-pending-notice{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:13px;margin-top:12px;padding:8px 12px}.billing-trial-note{color:#6b7280;font-size:13px;margin-top:8px}.upgrade-detail-note{color:#6b7280;font-size:13px;margin:-12px 0 16px;text-align:center}.billing-history-pagination{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:12px}.billing-history-pagination button{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:16px;padding:4px 12px}.billing-history-pagination button:disabled{cursor:not-allowed;opacity:.4}.billing-history-pagination span{color:#6b7280;font-size:13px}.billing-dialog-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.billing-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:380px;padding:24px;width:90%}.billing-dialog h3{color:#111827;font-size:16px;font-weight:700;margin:0 0 12px}.billing-dialog p{color:#374151;font-size:14px;margin:0 0 8px}.billing-dialog-note{background:#f9fafb;border-radius:6px;color:#6b7280;font-size:13px;margin-top:8px!important;padding:10px 12px}.billing-dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.billing-dialog-cancel{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;padding:8px 16px}.billing-dialog-confirm{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px}.billing-dialog-confirm:disabled{cursor:not-allowed;opacity:.6}.user-menu-container{position:relative}.user-menu{animation:slideDown .2s ease-out;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #00000026;min-width:240px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:16px 20px}.user-menu-header h3{color:#111827;font-size:1rem;font-weight:600;margin:0 0 4px;word-break:break-word}.user-menu-header p{color:#6b7280;font-size:.85rem;margin:0;word-break:break-all}.user-menu-items{padding:8px 0}.user-menu-item{align-items:center;background:#fff;border:none;color:#374151;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:10px;padding:12px 20px;text-align:left;transition:background .2s;width:100%}.user-menu-item:hover{background:#f3f4f6}.user-menu-item.logout{border-top:1px solid #e5e7eb;color:#ef4444;margin-top:4px;padding-top:12px}.user-menu-item.logout:hover{background:#fee2e2}.user-menu-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:1024px){.user-menu{min-width:220px}.user-menu-header h3{font-size:.95rem}.user-menu-header p{font-size:.8rem}.user-menu-item{font-size:.9rem;padding:11px 18px}}@media (max-width:768px){.user-menu{animation:slideUp .3s ease-out;border-bottom:none;border-radius:16px 16px 0 0;bottom:0;left:0;max-height:80vh;min-width:100%;overflow-y:auto;position:fixed;right:0;top:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.user-menu-header{background:#f9fafb;padding:20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.user-menu-header h3{font-size:1.1rem}.user-menu-header p{font-size:.9rem}.user-menu-items{padding:12px 0}.user-menu-item{font-size:1rem;padding:16px 20px}.user-menu-item.logout{margin-top:8px;padding-top:16px}}@media (max-width:480px){.user-menu-header{padding:16px}.user-menu-header h3{font-size:1rem}.user-menu-header p{font-size:.85rem}.user-menu-item{font-size:.95rem;padding:14px 16px}}@media (max-width:768px) and (orientation:landscape){.user-menu{max-height:90vh}}.login-container{align-items:center;background:linear-gradient(135deg,#0f172a,#0c3b6e 60%,#0369a1);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.login-circle{animation:float 20s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0ea5e91f;border-radius:50%;position:absolute}.login-circle-1{animation-delay:0s;height:450px;left:-120px;top:-120px;width:450px}.login-circle-2{animation-delay:-10s;background:#1e40af26;bottom:-60px;height:320px;right:-60px;width:320px}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(50px,-50px) scale(1.1)}50%{transform:translate(-30px,30px) scale(.9)}75%{transform:translate(40px,20px) scale(1.05)}}.login-card{animation:slideUp .5s ease-out;background:#fff;border-radius:24px;border-top:4px solid #0ea5e9;box-shadow:0 24px 64px #00000059;max-width:480px;padding:48px;position:relative;width:100%;z-index:10}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:32px;text-align:center}.login-logo{height:56px;object-fit:contain;width:auto}.login-form{display:flex;flex-direction:column;gap:20px}.form-title{color:#111827;font-size:1.5rem;font-weight:700;margin:0 0 8px;text-align:center}.form-description{color:#6b7280;font-size:.9rem;line-height:1.5;margin-bottom:24px;text-align:center}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#374151;font-size:.9rem;font-weight:600}.required{color:#ef4444}.form-group input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;color:#111827;font-size:1rem;padding:14px 16px;transition:all .25s}.form-group input:focus{border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91f;outline:none}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.form-group small{color:#6b7280;display:block;font-size:.8rem;margin-top:4px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;font-weight:700;justify-content:center;letter-spacing:.3px;padding:14px 24px;transition:all .3s}.btn-primary{background:linear-gradient(135deg,#0ea5e9,#1e40af);box-shadow:0 4px 14px #0ea5e959;color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px #0ea5e973;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-links{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:8px}.link-button{background:none;border:none;color:#0ea5e9;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px;transition:all .2s}.link-button:hover{color:#1e40af;text-decoration:underline}.alert{animation:fadeIn .3s ease-out;border-radius:12px;font-size:.9rem;font-weight:500;margin-bottom:20px;padding:14px 16px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{background:linear-gradient(135deg,#10b981,#059669);border:2px solid #059669;color:#fff}.alert-error{background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid #dc2626;color:#fff}.alert-info{background:linear-gradient(135deg,#0ea5e9,#1e40af);border:2px solid #0ea5e9;color:#fff}@media (max-width:768px){.login-card{max-width:420px;padding:40px 32px}.login-logo{height:48px}.form-title{font-size:1.3rem}.login-circle-1{height:300px;width:300px}.login-circle-2{height:250px;width:250px}}@media (max-width:480px){.login-container{padding:12px}.login-card{border-radius:20px;padding:32px 24px}.login-header{margin-bottom:24px}.login-logo{height:40px}.form-title{font-size:1.2rem}.form-group input{font-size:.95rem;padding:12px 14px}.btn{font-size:.95rem;padding:12px 20px}.form-row{gap:12px;grid-template-columns:1fr}.login-links{align-items:stretch;flex-direction:column}.link-button{text-align:center;width:100%}.login-circle-1{height:250px;left:-80px;top:-80px;width:250px}.login-circle-2{bottom:-60px;height:200px;right:-60px;width:200px}}@media (max-width:360px){.login-card{padding:24px 20px}.form-group input{font-size:.9rem;padding:10px 12px}}@media (prefers-reduced-motion:reduce){.alert,.login-card,.login-circle{animation:none}.btn-primary:hover{transform:none}}.login-landing-link{background:none;border:none;color:#0ea5e9;cursor:pointer;display:block;font-size:13px;margin-top:8px;padding:4px 0;text-align:center}.login-landing-link:hover{text-decoration:underline}.lp{background:#fff;color:#111827;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.lp-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-bottom:1px solid #e5e7eb;left:0;position:fixed;right:0;top:0;z-index:100}.lp-nav-inner{align-items:center;display:flex;height:64px;justify-content:space-between;margin:0 auto;max-width:1100px;padding:0 24px}.lp-nav-logo-img{height:36px;object-fit:contain}.lp-nav-links{align-items:center;display:flex;gap:8px}.lp-nav-links button{background:none;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px;transition:background .15s}.lp-nav-links button:hover{background:#f3f4f6}.lp-nav-login{color:#3b82f6!important}.lp-nav-signup{background:#0ea5e9!important;border-radius:8px!important;color:#fff!important}.lp-nav-signup:hover{background:#0284c7!important}.lp-hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:4px}.lp-hamburger span{background:#374151;border-radius:2px;display:block;height:2px;width:22px}.lp-hero{align-items:center;background:linear-gradient(135deg,#0f172a,#0c3b6e 60%,#0369a1);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:100px 24px 60px;position:relative}.lp-hero-bg{inset:0;pointer-events:none;position:absolute}.lp-hero-circle{animation:lp-float 20s ease-in-out infinite;background:#0ea5e91a;border-radius:50%;position:absolute}.lp-hero-circle-1{height:500px;left:-150px;top:-150px;width:500px}.lp-hero-circle-2{animation-delay:-7s;background:#1e40af26;bottom:-80px;height:350px;right:-80px;width:350px}.lp-hero-circle-3{animation-delay:-14s;background:#0ea5e912;height:250px;right:15%;top:40%;width:250px}@keyframes lp-float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-40px) scale(1.08)}66%{transform:translate(-30px,30px) scale(.93)}}.lp-hero-content{max-width:760px;position:relative;text-align:center;z-index:1}.lp-hero-badge{background:#0ea5e933;border:1px solid #0ea5e94d;border-radius:100px;color:#7dd3fc;display:inline-block;font-size:13px;font-weight:600;margin-bottom:24px;padding:6px 16px}.lp-hero-title{color:#fff;font-size:clamp(32px,5vw,56px);font-weight:800;line-height:1.2;margin:0 0 20px}.lp-hero-accent{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#38bdf8,#818cf8);-webkit-background-clip:text;background-clip:text}.lp-hero-sub{color:#bae6fd;font-size:clamp(15px,2vw,18px);line-height:1.7;margin:0 0 36px}.lp-hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:16px}.lp-btn-primary{align-items:center;background:linear-gradient(135deg,#0ea5e9,#3b82f6);border:none;border-radius:12px;box-shadow:0 4px 24px #0ea5e966;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:8px;padding:14px 28px;transition:transform .15s,box-shadow .15s}.lp-btn-primary:hover{box-shadow:0 8px 32px #0ea5e980;transform:translateY(-2px)}.lp-btn-secondary{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:background .15s}.lp-btn-secondary:hover{background:#ffffff2e}.lp-btn-arrow,.lp-btn-large{font-size:18px}.lp-btn-large{padding:16px 36px}.lp-hero-note{color:#7dd3fc;font-size:13px;margin:0}.lp-br-pc{display:none}@media(min-width:640px){.lp-br-pc{display:block}}.lp-badges{background:#f8fafc;border-bottom:1px solid #e5e7eb;border-top:1px solid #e5e7eb;padding:20px 24px}.lp-badges-inner{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:0 auto;max-width:1000px}.lp-badge-item{color:#374151;font-size:14px;font-weight:600}.lp-badge-divider{background:#d1d5db;height:16px;width:1px}@media(max-width:640px){.lp-badge-divider{display:none}}.lp-section-inner{margin:0 auto;max-width:1100px;padding:80px 24px}.lp-section-header{margin-bottom:56px;text-align:center}.lp-section-header h2{color:#111827;font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.3;margin:8px 0 0}.lp-section-header--light h2{color:#fff}.lp-section-label{background:#eff6ff;border-radius:100px;color:#0ea5e9;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;padding:4px 12px;text-transform:uppercase}.lp-section-label--light{background:#0ea5e926;color:#7dd3fc}.lp-features{background:#fff}.lp-features-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.lp-feature-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:28px;transition:box-shadow .2s,transform .2s}.lp-feature-card:hover{box-shadow:0 8px 32px #00000014;transform:translateY(-2px)}.lp-feature-icon{align-items:center;border-radius:14px;display:flex;font-size:28px;height:56px;justify-content:center;margin-bottom:16px;width:56px}.lp-icon-blue{background:#eff6ff}.lp-icon-green{background:#f0fdf4}.lp-icon-purple{background:#faf5ff}.lp-icon-orange{background:#fff7ed}.lp-icon-cyan{background:#ecfeff}.lp-icon-pink{background:#fff1f2}.lp-feature-card h3{color:#111827;font-size:17px;font-weight:700;margin:0 0 8px}.lp-feature-card p{color:#6b7280;font-size:14px;line-height:1.65;margin:0}.lp-screenshots{background:linear-gradient(135deg,#0f172a,#0c3b6e)}.lp-screenshots-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}@media(max-width:640px){.lp-screenshots-grid{grid-template-columns:1fr}}.lp-screenshot-main{grid-column:1/-1}.lp-screenshot-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;overflow:hidden}.lp-screenshot-placeholder{align-items:center;background:#ffffff0a;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:220px;padding:48px 24px}.lp-screenshot-main .lp-screenshot-placeholder{min-height:300px}.lp-screenshot-placeholder-icon{font-size:40px}.lp-screenshot-placeholder p{color:#bae6fd;font-size:15px;font-weight:600;margin:0}.lp-screenshot-placeholder span{color:#64748b;font-size:12px}.lp-screenshot-caption{border-top:1px solid #ffffff14;padding:16px 20px}.lp-screenshot-caption strong{color:#fff;display:block;font-size:14px;font-weight:700;margin-bottom:4px}.lp-screenshot-caption p{color:#94a3b8;font-size:13px;margin:0}.lp-screenshot-img-wrap{background:#ffffff0a;overflow:hidden}.lp-screenshot-img{display:block;height:auto;object-fit:cover;width:100%}.lp-screenshot-main .lp-screenshot-img{max-height:400px;object-fit:cover;object-position:top}.lp-screenshot-item:not(.lp-screenshot-main) .lp-screenshot-img{max-height:280px;object-fit:cover;object-position:top}.lp-pricing{background:#f8fafc}.lp-pricing-note{color:#6b7280;font-size:16px;line-height:1.6;margin:12px 0 0}.lp-pricing-grid{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-bottom:56px}.lp-pricing-card{background:#fff;border:2px solid #e5e7eb;border-radius:20px;max-width:100%;padding:32px;position:relative;width:340px}.lp-pricing-card--popular{border-color:#0ea5e9;box-shadow:0 8px 40px #0ea5e926}.lp-pricing-badge{background:linear-gradient(135deg,#0ea5e9,#3b82f6);border-radius:100px;color:#fff;font-size:12px;font-weight:700;left:50%;padding:4px 16px;position:absolute;top:-14px;transform:translateX(-50%);white-space:nowrap}.lp-pricing-plan{color:#6b7280;font-size:14px;font-weight:700;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.lp-pricing-price{align-items:baseline;display:flex;gap:4px;margin-bottom:8px}.lp-price-amount{color:#111827;font-size:40px;font-weight:800}.lp-price-period,.lp-pricing-desc{color:#6b7280;font-size:14px}.lp-pricing-desc{margin:0 0 24px}.lp-pricing-features{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0 0 28px;padding:0}.lp-pricing-features li{color:#374151;font-size:14px}.lp-pricing-btn{border:none;border-radius:10px;cursor:pointer;font-size:15px;font-weight:700;padding:12px;transition:opacity .15s;width:100%}.lp-pricing-btn:hover{opacity:.88}.lp-pricing-btn--free{background:#f3f4f6;border:2px solid #e5e7eb;color:#374151}.lp-pricing-btn--paid{background:linear-gradient(135deg,#0ea5e9,#3b82f6);color:#fff}.lp-pricing-example{color:#9ca3af;font-size:12px;margin:12px 0 0;text-align:center}.lp-pricing-faq{display:flex;flex-direction:column;gap:16px}.lp-faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px}.lp-faq-item strong{color:#111827;display:block;font-size:14px;margin-bottom:6px}.lp-faq-item p{color:#6b7280;font-size:14px;line-height:1.6;margin:0}.lp-cta{background:linear-gradient(135deg,#0f172a,#0c3b6e);padding:80px 24px;text-align:center}.lp-cta-inner{align-items:center;display:flex;flex-direction:column;gap:16px;margin:0 auto;max-width:600px}.lp-cta h2{color:#fff;font-size:clamp(24px,4vw,36px);font-weight:800;margin:0}.lp-cta p{color:#bae6fd;font-size:16px;margin:0}.lp-footer{background:#0f172a;border-top:1px solid #ffffff0f;padding:32px 24px}.lp-footer-inner{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:1100px}.lp-footer-copy{color:#64748b;font-size:13px;margin:0}.lp-footer-links{display:flex;gap:8px}.lp-footer-link{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:13px;padding:4px 8px;transition:color .15s}.lp-footer-link:hover{color:#94a3b8}@media(max-width:768px){.lp-nav-links{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 8px 24px #0000001a;display:none;flex-direction:column;left:0;padding:16px;position:absolute;right:0;top:64px}.lp-hamburger,.lp-nav-links.open{display:flex}.lp-features-grid,.lp-pricing-grid{grid-template-columns:1fr}.lp-footer-inner{align-items:flex-start;flex-direction:column}}.user-profile-container{margin:0 auto;max-width:800px;padding:24px}.user-profile-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.back-button{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s}.back-button:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.user-profile-header h2{color:#111827;font-size:1.8rem;margin:0}.user-profile-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:32px}.profile-avatar-section{border-bottom:2px solid #e5e7eb;margin-bottom:32px;padding-bottom:32px;text-align:center}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;display:flex;font-size:3rem;font-weight:700;height:120px;justify-content:center;margin:0 auto 16px;overflow:hidden;width:120px}.profile-avatar-large img{height:100%;object-fit:cover;width:100%}.profile-name{color:#111827;font-size:1.8rem;font-weight:700;margin:0 0 8px}.profile-username{color:#6b7280;font-size:1rem;margin:0}.profile-info-vertical{display:flex;flex-direction:column;gap:12px}.profile-info-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;transition:all .3s}.profile-info-item:hover{background:#f3f4f6;border-color:#d1d5db}.info-label{color:#6b7280;font-size:.8rem;font-weight:600;margin-bottom:6px}.info-value{color:#111827;font-size:1rem;font-weight:500}.info-value a{color:#3b82f6;text-decoration:none;transition:color .3s}.info-value a:hover{color:#2563eb;text-decoration:underline}.user-stats-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.user-stats-card h3{color:#111827;font-size:1.3rem;font-weight:600;margin:0 0 24px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;text-align:center;transition:all .3s}.stat-item:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-2px)}.stat-value{color:#3b82f6;font-size:2rem;font-weight:700;margin-bottom:8px}.stat-label{color:#6b7280;font-size:.9rem;font-weight:500}.error-message{background:#fff;border:2px solid #fee2e2;border-radius:12px;color:#ef4444;font-size:1.2rem;padding:60px 20px;text-align:center}@media (max-width:768px){.user-profile-container{padding:16px}.user-profile-header h2{font-size:1.3rem}.user-profile-card{padding:24px 20px}.profile-avatar-large{font-size:2.5rem;height:100px;width:100px}.profile-name{font-size:1.5rem}.profile-info-item{padding:12px 14px}.info-label{font-size:.75rem}.info-value{font-size:.95rem}.user-stats-card{padding:24px 20px}.stats-grid{gap:12px;grid-template-columns:1fr}}
/*# sourceMappingURL=main.288c09eb.css.map*/