*{box-sizing:border-box}body{margin:0}:root{--color-primary:#1c9b82;--color-primary-dark:#00796b;--color-primary-light:#e8f7f4;--color-accent:#2dce89;--color-accent-hover:#22b975;--color-secondary:#5f6368;--color-secondary-hover:#4a4e52;--color-bg:#f8f8f8;--color-surface:#fff;--color-border:#e2e8f0;--color-text:#333;--color-text-muted:#6b7280;--color-error:#f44336;--color-error-bg:#fff5f5;--color-success:#2dce89;--color-success-bg:#f0fdf7;--color-warning:#f59e0b;--color-high:#ef4444;--color-high-bg:#fef2f2;--color-medium:#f59e0b;--color-medium-bg:#fffbeb;--color-low:#10b981;--color-low-bg:#ecfdf5;--color-open:#3b82f6;--color-open-bg:#eff6ff;--color-progress:#f59e0b;--color-progress-bg:#fffbeb;--color-closed:#6b7280;--color-closed-bg:#f9fafb;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014,0 2px 4px #0000000a;--shadow-lg:0 10px 30px #0000001f,0 4px 8px #0000000f;--transition:all 0.2s ease}@media (prefers-color-scheme:dark){:root{--color-bg:#0f172a;--color-surface:#1e293b;--color-border:#334155;--color-text:#f1f5f9;--color-text-muted:#94a3b8;--color-primary-light:#0f2e28;--color-high-bg:#2d1515;--color-medium-bg:#2d2000;--color-low-bg:#0d2d1e;--color-open-bg:#0d1f3a;--color-progress-bg:#2d2000;--color-closed-bg:#1a1f2e;--color-error-bg:#2d1515;--color-success-bg:#0d2d1e}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background-color:#f8f8f8;background-color:var(--color-bg);color:#333;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{background:none;border:none;cursor:pointer;font-family:inherit}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1 1;padding:0 0 60px}.app-loading{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;flex-direction:column;gap:12px;height:100vh;justify-content:center}.app-loading-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-top-color:#1c9b82;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:36px;width:36px}.navbar{background:#fff;background:var(--color-surface);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;gap:24px;height:60px;margin:0 auto;max-width:1200px;padding:0 24px}.navbar-brand{align-items:center;color:#1c9b82;color:var(--color-primary);display:flex;flex-shrink:0;font-size:18px;font-weight:700;gap:8px;letter-spacing:-.3px}.navbar-brand svg{stroke:#1c9b82;stroke:var(--color-primary);height:22px;width:22px}.navbar-links{align-items:center;display:flex;flex:1 1;gap:4px}.nav-link{border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-text-muted);font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s ease;transition:var(--transition)}.nav-link.active,.nav-link:hover{background:#e8f7f4;background:var(--color-primary-light);color:#1c9b82;color:var(--color-primary)}.navbar-user{margin-left:auto;position:relative}.user-avatar-btn{align-items:center;background:none;border:1.5px solid #0000;border-radius:24px;cursor:pointer;display:flex;gap:6px;padding:3px 8px 3px 3px;transition:all .2s ease;transition:var(--transition)}.user-avatar-btn.open,.user-avatar-btn:hover{background:#e8f7f4;background:var(--color-primary-light);border-color:#1c9b82;border-color:var(--color-primary)}.user-avatar{align-items:center;background:#1c9b82;background:var(--color-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;width:32px}.avatar-chevron{color:#6b7280;color:var(--color-text-muted);flex-shrink:0;transition:transform .2s ease}.avatar-chevron.rotated{transform:rotate(180deg)}.user-dropdown{animation:dropdownIn .18s ease;background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);min-width:240px;overflow:hidden;position:absolute;right:0;top:calc(100% + 10px);z-index:200}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-header{align-items:center;display:flex;gap:12px;padding:16px}.dropdown-avatar{align-items:center;background:#1c9b82;background:var(--color-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.dropdown-info{min-width:0}.dropdown-name{color:#333;color:var(--color-text);font-size:14px;font-weight:600}.dropdown-email,.dropdown-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-email{color:#6b7280;color:var(--color-text-muted);font-size:12px;margin-top:1px}.dropdown-meta{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:0 16px 12px}.dropdown-company{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:12px;gap:5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-role-badge{border-radius:10px;color:#fff;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.2px;padding:2px 9px;text-transform:capitalize}.dropdown-divider{border:none;border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);margin:0}.dropdown-item{align-items:center;background:none;border:none;color:#333;color:var(--color-text);cursor:pointer;display:flex;font-family:inherit;font-size:14px;gap:10px;padding:11px 16px;text-align:left;transition:background .15s;width:100%}.dropdown-item:hover{background:#f8f8f8;background:var(--color-bg)}.dropdown-item svg{color:#6b7280;color:var(--color-text-muted);flex-shrink:0;height:15px;width:15px}.dropdown-item.danger,.dropdown-item.danger svg{color:#f44336;color:var(--color-error)}.navbar-mobile-toggle{border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-text-muted);display:none;padding:6px;transition:all .2s ease;transition:var(--transition)}.navbar-mobile-toggle:hover{background:#f8f8f8;background:var(--color-bg)}.navbar-mobile-toggle.open{color:#333;color:var(--color-text)}.navbar-mobile-toggle svg{display:block;height:22px;width:22px}.mobile-menu{animation:dropdownIn .18s ease;background:#fff;background:var(--color-surface);border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);display:none;flex-direction:column}.mobile-user-info{align-items:center;display:flex;gap:12px;padding:16px 20px}.mobile-user-avatar{align-items:center;background:#1c9b82;background:var(--color-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.mobile-user-name{color:#333;color:var(--color-text);font-size:14px;font-weight:600}.mobile-user-email{color:#6b7280;color:var(--color-text-muted);font-size:12px;margin-top:2px}.mobile-nav-link{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);color:#333;color:var(--color-text);display:block;font-size:15px;font-weight:500;padding:14px 20px;transition:all .2s ease;transition:var(--transition)}.mobile-nav-link:hover{background:#f8f8f8;background:var(--color-bg);color:#1c9b82;color:var(--color-primary)}.mobile-nav-signout{background:none;border:none;color:#f44336;color:var(--color-error);cursor:pointer;font-family:inherit;font-size:15px;font-weight:500;padding:14px 20px;text-align:left;transition:all .2s ease;transition:var(--transition);width:100%}.mobile-nav-signout:hover{background:#fff5f5;background:var(--color-error-bg)}.btn{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:9px 18px;text-decoration:none;transition:all .2s ease;transition:var(--transition);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.btn-primary{background:#2dce89;background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:#22b975;background:var(--color-accent-hover);box-shadow:0 4px 12px #2dce8959;transform:translateY(-1px)}.btn-secondary{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);color:#333;color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:#f8f8f8;background:var(--color-bg);border-color:#5f6368;border-color:var(--color-secondary);transform:translateY(-1px)}.btn-danger{background:#f44336;background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:#d32f2f;transform:translateY(-1px)}.btn-full{justify-content:center;width:100%}.btn-sm{font-size:13px;padding:5px 12px}.btn-spinner{animation:spin .7s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;width:14px}.btn-secondary .btn-spinner{border-color:#333 #0003 #0003;border-top-color:var(--color-text)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.form-label{align-items:center;color:#333;color:var(--color-text);display:flex;font-size:14px;font-weight:600;gap:6px}.required{color:#f44336;color:var(--color-error)}.form-input,.form-select,.form-textarea{background:#fff;background:var(--color-surface);border:1.5px solid #e2e8f0;border:1.5px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#333;color:var(--color-text);font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:all .2s ease;transition:var(--transition);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 0 0 3px #1c9b821f}.form-input::placeholder,.form-textarea::placeholder{color:#6b7280;color:var(--color-text-muted);opacity:.7}.form-input.input-error{border-color:#f44336;border-color:var(--color-error)}.form-input.input-error:focus{box-shadow:0 0 0 3px #f443361f}.form-textarea{line-height:1.6;min-height:120px;resize:vertical}.form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:36px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-actions{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);display:flex;gap:10px;justify-content:flex-end;margin-top:8px;padding-top:8px}.form-error-text{color:#f44336;color:var(--color-error)}.char-count,.form-error-text{font-size:12px;margin-top:2px}.char-count{color:#6b7280;color:var(--color-text-muted);text-align:right}.input-with-icon{position:relative}.input-with-icon .form-input{padding-right:42px}.input-icon-btn{border-radius:4px;color:#6b7280;color:var(--color-text-muted);padding:4px;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:all .2s ease;transition:var(--transition)}.input-icon-btn:hover{color:#1c9b82;color:var(--color-primary)}.tooltip{align-items:center;background:#e2e8f0;background:var(--color-border);border-radius:50%;color:#6b7280;color:var(--color-text-muted);cursor:help;display:inline-flex;font-size:11px;font-weight:700;height:16px;justify-content:center;position:relative;width:16px}.tooltip:hover:after{background:#1e293b;border-radius:6px;border-radius:var(--radius-sm);bottom:calc(100% + 6px);color:#fff;content:attr(data-tip);font-size:12px;font-weight:400;left:50%;padding:6px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}.auth-page{align-items:center;background:#f8f8f8;background:var(--color-bg);display:flex;justify-content:center;min-height:calc(100vh - 60px);padding:24px}.auth-card{animation:fadeInUp .3s ease;background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);max-width:420px;padding:40px;width:100%}.auth-logo{display:flex;justify-content:center;margin-bottom:20px}.auth-logo svg{stroke:#1c9b82;stroke:var(--color-primary);background:#e8f7f4;background:var(--color-primary-light);border-radius:10px;border-radius:var(--radius-md);height:48px;padding:10px;width:48px}.auth-title{color:#333;color:var(--color-text);font-size:24px;font-weight:700;margin-bottom:6px;text-align:center}.auth-subtitle{color:#6b7280;color:var(--color-text-muted);font-size:14px;margin-bottom:28px;text-align:center}.auth-form{margin-bottom:16px}.auth-link-btn{background:none;border:none;color:#1c9b82;color:var(--color-primary);cursor:pointer;display:block;font-size:14px;margin-bottom:12px;padding:8px;text-align:center;transition:all .2s ease;transition:var(--transition);width:100%}.auth-link-btn:hover{color:#00796b;color:var(--color-primary-dark);text-decoration:underline}.auth-switch{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);color:#6b7280;color:var(--color-text-muted);font-size:14px;padding-top:16px;text-align:center}.auth-link{color:#1c9b82;color:var(--color-primary);font-weight:600;transition:all .2s ease;transition:var(--transition)}.auth-link:hover{color:#00796b;color:var(--color-primary-dark);text-decoration:underline}.reset-info{color:#6b7280;color:var(--color-text-muted);font-size:14px;line-height:1.5;margin-bottom:20px}.password-strength{align-items:center;display:flex;gap:8px;margin-top:6px}.strength-bars{display:flex;flex:1 1;gap:4px}.strength-bar{background:#e2e8f0;background:var(--color-border);border-radius:2px;flex:1 1;height:4px;transition:all .2s ease;transition:var(--transition)}.strength-bar.weak{background:#f44336;background:var(--color-error)}.strength-bar.fair{background:#f59e0b;background:var(--color-warning)}.strength-bar.good{background:#84cc16}.strength-bar.strong{background:#2dce89;background:var(--color-accent)}.strength-bar.very-strong{background:#1c9b82;background:var(--color-primary)}.strength-label{font-size:12px;font-weight:600;min-width:60px;text-align:right}.strength-label.weak{color:#f44336;color:var(--color-error)}.strength-label.fair{color:#f59e0b;color:var(--color-warning)}.strength-label.good{color:#84cc16}.strength-label.strong{color:#2dce89;color:var(--color-accent)}.strength-label.very-strong{color:#1c9b82;color:var(--color-primary)}.page{margin:0 auto;max-width:1200px;padding:32px 24px}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:28px}.page-title{color:#333;color:var(--color-text);font-size:26px;font-weight:700;letter-spacing:-.3px}.page-subtitle{color:#6b7280;color:var(--color-text-muted);font-size:14px;margin-top:4px}.page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}.back-btn{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);display:flex;flex-shrink:0;font-size:14px;padding:7px 14px}.back-btn:hover{border-color:#1c9b82;border-color:var(--color-primary);color:#1c9b82;color:var(--color-primary);transform:translateX(-2px)}.dashboard-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:28px}.stats-row{grid-gap:16px;display:grid;grid-template-columns:repeat(3,1fr)}.stat-card{cursor:pointer;padding:20px;text-align:center;transition:all .2s ease;transition:var(--transition)}.stat-card:hover{transform:translateY(-2px)}.stat-count{font-size:32px;margin-bottom:4px}.stat-label{font-size:13px;font-weight:500}.filter-bar{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;margin-bottom:24px;padding:16px 20px}.filter-search{position:relative}.search-icon{stroke:#6b7280;stroke:var(--color-text-muted);height:16px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:16px}.search-input{background:#f8f8f8;background:var(--color-bg);border:1.5px solid #e2e8f0;border:1.5px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#333;color:var(--color-text);font-size:14px;outline:none;padding:9px 14px 9px 36px;transition:all .2s ease;transition:var(--transition);width:100%}.search-input:focus{border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 0 0 3px #1c9b821f}.filter-controls{display:flex;flex-wrap:wrap;gap:20px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-label{color:#6b7280;color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.filter-chips{display:flex;flex-wrap:wrap;gap:6px}.filter-chip{background:#fff;background:var(--color-surface);border:1.5px solid #e2e8f0;border:1.5px solid var(--color-border);border-radius:20px;color:#6b7280;color:var(--color-text-muted);cursor:pointer;font-size:13px;font-weight:500;padding:4px 12px;transition:all .2s ease;transition:var(--transition)}.filter-chip:hover{color:#1c9b82;color:var(--color-primary)}.filter-chip.active,.filter-chip:hover{border-color:#1c9b82;border-color:var(--color-primary)}.filter-chip.active{background:#1c9b82;background:var(--color-primary);color:#fff}.priority-chip-high.active{background:#ef4444;background:var(--color-high);border-color:#ef4444;border-color:var(--color-high)}.priority-chip-medium.active{background:#f59e0b;background:var(--color-medium);border-color:#f59e0b;border-color:var(--color-medium)}.priority-chip-low.active{background:#10b981;background:var(--color-low);border-color:#10b981;border-color:var(--color-low)}.issues-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.issue-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);color:inherit;display:flex;flex-direction:column;gap:12px;padding:20px;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.issue-card:hover{border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.issue-card-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.issue-card-title{color:#333;color:var(--color-text);flex:1 1;font-size:15px;font-weight:600;line-height:1.4}.issue-card-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#6b7280;color:var(--color-text-muted);display:-webkit-box;font-size:13px;line-height:1.6;overflow:hidden}.issue-card-footer{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);justify-content:space-between;margin-top:auto;padding-top:10px}.issue-card-footer,.issue-card-meta{align-items:center;display:flex;gap:8px}.meta-item{align-items:center;display:flex;gap:3px}.meta-date,.meta-item{color:#6b7280;color:var(--color-text-muted);font-size:12px}.priority-badge,.status-badge{align-items:center;border-radius:20px;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:600;gap:4px;padding:3px 10px;white-space:nowrap}.priority-high{background:#fef2f2;background:var(--color-high-bg);border:1px solid #ef444433;color:#ef4444;color:var(--color-high)}.priority-medium{background:#fffbeb;background:var(--color-medium-bg);border:1px solid #f59e0b33;color:#f59e0b;color:var(--color-medium)}.priority-low{background:#ecfdf5;background:var(--color-low-bg);border:1px solid #10b98133;color:#10b981;color:var(--color-low)}.status-open{background:#eff6ff;background:var(--color-open-bg);border:1px solid #3b82f633;color:#3b82f6;color:var(--color-open)}.status-in-progress{background:#fffbeb;background:var(--color-progress-bg);border:1px solid #f59e0b33;color:#f59e0b;color:var(--color-progress)}.status-closed{background:#f9fafb;background:var(--color-closed-bg);border:1px solid #6b728033;color:#6b7280;color:var(--color-closed)}.loading-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.issue-card-skeleton{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);height:160px}.issue-card-skeleton,.skeleton{animation:pulse 1.5s ease infinite}.skeleton{background:#e2e8f0;background:var(--color-border);border-radius:6px;border-radius:var(--radius-sm)}.skeleton-title{height:28px;margin-bottom:16px;width:60%}.skeleton-text{height:16px;margin-bottom:10px;width:100%}.skeleton-text.short{width:40%}.loading-detail{max-width:780px;padding-top:20px}.form-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);max-width:780px;padding:32px}.progress-tracker{padding:8px 0}.progress-bar-container{position:relative}.progress-bar-track{background:#e2e8f0;background:var(--color-border);border-radius:2px;height:3px;left:5%;position:absolute;right:5%;top:19px;z-index:0}.progress-bar-fill{background:#1c9b82;background:var(--color-primary);border-radius:2px;height:100%;transition:width .4s ease}.progress-steps{display:flex;justify-content:space-between;position:relative;z-index:1}.progress-step{align-items:center;background:none;border:none;display:flex;flex:1 1;flex-direction:column;font-family:inherit;gap:8px;padding:0}.progress-step.clickable{cursor:pointer}.progress-step.clickable:hover .progress-step-circle{border-color:#1c9b82;border-color:var(--color-primary);transform:scale(1.1)}.progress-step-circle{align-items:center;background:#fff;background:var(--color-surface);border:2.5px solid #e2e8f0;border:2.5px solid var(--color-border);border-radius:50%;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:14px;font-weight:600;height:38px;justify-content:center;transition:all .2s ease;transition:var(--transition);width:38px}.progress-step.completed .progress-step-circle{background:#e8f7f4;background:var(--color-primary-light);border-color:#1c9b82;border-color:var(--color-primary);color:#1c9b82;color:var(--color-primary)}.progress-step.current .progress-step-circle{background:#1c9b82;background:var(--color-primary);border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 0 0 4px #1c9b8226;color:#fff}.progress-step-circle svg{stroke:#1c9b82;stroke:var(--color-primary);height:16px;width:16px}.progress-step-label{color:#6b7280;color:var(--color-text-muted);font-size:12px;font-weight:500;text-align:center}.progress-step.completed .progress-step-label,.progress-step.current .progress-step-label{color:#1c9b82;color:var(--color-primary);font-weight:600}.image-uploader{display:flex;flex-direction:column;gap:16px}.drop-zone{background:#f8f8f8;background:var(--color-bg);border:2px dashed #e2e8f0;border:2px dashed var(--color-border);border-radius:10px;border-radius:var(--radius-md);cursor:pointer;padding:32px 24px;text-align:center;transition:all .2s ease;transition:var(--transition)}.drop-zone.dragging,.drop-zone:hover{background:#e8f7f4;background:var(--color-primary-light);border-color:#1c9b82;border-color:var(--color-primary)}.drop-zone.paste-success{animation:pasteFlash .3s ease;background:#f0fdf7;background:var(--color-success-bg);border-color:#2dce89;border-color:var(--color-accent);border-style:solid}.paste-success-icon{stroke:#2dce89!important;stroke:var(--color-accent)!important}@keyframes pasteFlash{0%{transform:scale(.98)}to{transform:scale(1)}}.upload-icon{stroke:#6b7280;stroke:var(--color-text-muted);display:block;height:40px;margin:0 auto 12px;width:40px}.drop-zone.dragging .upload-icon{stroke:#1c9b82;stroke:var(--color-primary)}.drop-zone-text{color:#6b7280;color:var(--color-text-muted);font-size:14px;margin-bottom:4px}.file-browse-label{color:#1c9b82;color:var(--color-primary);cursor:pointer;font-weight:600;text-decoration:underline;text-underline-offset:2px}.file-input-hidden{display:none}.drop-zone-hint{color:#6b7280;color:var(--color-text-muted);font-size:12px;opacity:.7}.image-preview-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.image-preview-item{aspect-ratio:1;background:#f8f8f8;background:var(--color-bg);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);overflow:hidden;position:relative}.image-preview-item.clickable{cursor:zoom-in}.preview-img{display:block;height:100%;object-fit:cover;width:100%}.preview-remove-btn{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:22px;justify-content:center;line-height:1;position:absolute;right:4px;top:4px;transition:all .2s ease;transition:var(--transition);width:22px}.preview-remove-btn:hover{background:#f44336;background:var(--color-error)}.preview-new-badge{background:#2dce89;background:var(--color-accent);border-radius:10px;bottom:4px;color:#fff;font-size:10px;font-weight:700;left:4px;padding:1px 6px;position:absolute;text-transform:uppercase}.preview-overlay{align-items:center;background:#0000004d;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:all .2s ease;transition:var(--transition)}.image-preview-item.clickable:hover .preview-overlay{opacity:1}.preview-overlay svg{stroke:#fff}.detail-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);max-width:780px;padding:36px}.detail-header{margin-bottom:28px}.detail-badges{display:flex;gap:8px;margin-bottom:12px}.detail-title{color:#333;color:var(--color-text);font-size:28px;font-weight:700;letter-spacing:-.4px;line-height:1.3;margin-bottom:10px}.detail-meta{color:#6b7280;color:var(--color-text-muted);font-size:13px}.detail-section{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);margin-bottom:28px;padding-bottom:28px}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{color:#6b7280;color:var(--color-text-muted);font-size:14px;font-weight:700;letter-spacing:.8px;margin-bottom:14px;text-transform:uppercase}.detail-description{color:#333;color:var(--color-text);font-size:15px;line-height:1.8;white-space:pre-wrap}.confirm-delete{animation:fadeIn .15s ease;background:#fff5f5;background:var(--color-error-bg);border:1px solid #f4433633;border-radius:6px;border-radius:var(--radius-sm);color:#f44336;color:var(--color-error);font-size:13px;font-weight:600;gap:8px;padding:6px 12px}.confirm-delete,.lightbox{align-items:center;display:flex}.lightbox{animation:fadeIn .2s ease;background:#000000e6;inset:0;justify-content:center;position:fixed;z-index:1000}.lightbox-img{border-radius:10px;border-radius:var(--radius-md);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);max-height:90vh;max-width:90vw;object-fit:contain}.lightbox-close{align-items:center;background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:22px;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .2s ease;transition:var(--transition);width:40px}.lightbox-close:hover{background:#ffffff4d}.empty-state{flex-direction:column;padding:64px 24px;text-align:center}.empty-state,.empty-state-icon{align-items:center;display:flex;justify-content:center}.empty-state-icon{background:#e8f7f4;background:var(--color-primary-light);border-radius:16px;border-radius:var(--radius-lg);height:72px;margin-bottom:20px;width:72px}.empty-state-icon svg{stroke:#1c9b82;stroke:var(--color-primary);height:36px;width:36px}.empty-state-title{color:#333;color:var(--color-text);font-size:20px;font-weight:700;margin-bottom:8px}.empty-state-description{color:#6b7280;color:var(--color-text-muted);font-size:14px;line-height:1.6;margin-bottom:24px;max-width:340px}.toast-container{display:flex;flex-direction:column;gap:8px;max-width:360px;position:fixed;right:20px;top:80px;width:calc(100vw - 40px);z-index:999}.toast{align-items:center;animation:slideInRight .25s ease;border-radius:10px;border-radius:var(--radius-md);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:space-between;padding:12px 16px}.toast-success{background:#f0fdf7;background:var(--color-success-bg);border-left:4px solid #2dce89;border-left:4px solid var(--color-success);color:#065f46}.toast-error{background:#fff5f5;background:var(--color-error-bg);border-left:4px solid #f44336;border-left:4px solid var(--color-error);color:#991b1b}.toast-info{background:#e8f7f4;background:var(--color-primary-light);border-left:4px solid #1c9b82;border-left:4px solid var(--color-primary);color:#00796b;color:var(--color-primary-dark)}.toast-close{color:currentColor;cursor:pointer;flex-shrink:0;font-size:18px;opacity:.6;text-align:center;transition:all .2s ease;transition:var(--transition);width:20px}.toast-close:hover{opacity:1}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.navbar-links,.navbar-user{display:none}.navbar-mobile-toggle{display:flex;margin-left:auto}.mobile-menu{display:flex}.page{padding:20px 16px}.detail-card,.form-card{border-radius:10px;border-radius:var(--radius-md);padding:20px 16px}.auth-card{padding:28px 20px}.stats-row{gap:10px;grid-template-columns:repeat(3,1fr)}.stat-card{padding:14px 10px}.stat-count{font-size:24px}.form-row,.issues-grid{grid-template-columns:1fr}.dashboard-header{align-items:flex-start;flex-direction:column}.dashboard-header .btn{justify-content:center;width:100%}.filter-controls{flex-direction:column;gap:12px}.page-actions{width:100%}.confirm-delete{flex-wrap:wrap}.detail-title{font-size:22px}.progress-step-label{font-size:10px}}@media (max-width:480px){.stats-row{grid-template-columns:1fr}.toast-container{right:12px;width:calc(100vw - 24px)}}.tasks-page .tasks-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.tasks-header-actions{display:flex;flex-wrap:wrap;gap:10px}.task-date-display{color:#1c9b82;color:var(--color-primary);font-size:13px;font-weight:600;letter-spacing:.8px;margin-bottom:4px;text-transform:uppercase}.carried-banner{align-items:center;animation:fadeInUp .3s ease;background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;border-left:4px solid var(--color-warning);border-radius:10px;border-radius:var(--radius-md);color:#92400e;display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:12px 16px}@media (prefers-color-scheme:dark){.carried-banner{background:#2d2000;border-color:#854d0e;color:#fbbf24}}.task-filter-bar{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:14px 18px}.task-filter-chips{display:flex;flex-wrap:wrap;gap:16px}.task-list{gap:12px}.task-card,.task-list{display:flex;flex-direction:column}.task-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border-left:4px solid #e2e8f0;border:1px solid var(--color-border);border-left-width:4px;border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);gap:10px;padding:16px 18px;transition:all .2s ease;transition:var(--transition)}.task-card:hover{box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.task-card-done{border-left-color:#10b981!important;border-left-color:var(--color-low)!important;opacity:.72}.task-card-carried{background:linear-gradient(90deg,#fffbeb 0,#fff 60px);background:linear-gradient(to right,#fffbeb 0,var(--color-surface) 60px)}@media (prefers-color-scheme:dark){.task-card-carried{background:linear-gradient(90deg,#2d2000 0,#fff 60px);background:linear-gradient(to right,#2d2000 0,var(--color-surface) 60px)}}.task-card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.task-card-meta-top{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.task-priority-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.priority-dot-high{background:#ef4444;background:var(--color-high);box-shadow:0 0 0 3px #ef444426}.priority-dot-medium{background:#f59e0b;background:var(--color-medium);box-shadow:0 0 0 3px #f59e0b26}.priority-dot-low{background:#10b981;background:var(--color-low);box-shadow:0 0 0 3px #10b98126}.task-card-title{color:#333;color:var(--color-text);font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.task-card-title:hover{color:#1c9b82;color:var(--color-primary)}.task-title-done{opacity:.6;text-decoration:line-through}.task-card-description{color:#6b7280;color:var(--color-text-muted);font-size:13px;line-height:1.5}.category-badge{align-items:center;border:1px solid;border-radius:20px;display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.3px;padding:2px 9px;white-space:nowrap}.carried-badge{background:#fffbeb;border:1px solid #fde68a;border-radius:20px;color:#92400e;gap:3px}.carried-badge,.recurrence-badge{align-items:center;display:inline-flex;font-size:11px;font-weight:600;padding:2px 8px;white-space:nowrap}.recurrence-badge{background:#e8f7f4;background:var(--color-primary-light);border:1px solid #1c9b8240;border-radius:20px;color:#1c9b82;color:var(--color-primary)}.task-progress-container{align-items:center;display:flex;gap:8px}.task-progress-track{background:#e2e8f0;background:var(--color-border);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.task-progress-track.large{border-radius:5px;height:10px}.task-progress-fill{background:#e2e8f0;background:var(--color-border);border-radius:inherit;height:100%;transition:width .5s ease,background .3s ease}.progress-active{background:#1c9b82;background:var(--color-primary)}.progress-complete{background:#2dce89;background:var(--color-accent)}.task-progress-label{background:none;border:none;border-radius:4px;color:#6b7280;color:var(--color-text-muted);cursor:pointer;font-size:12px;font-weight:700;min-width:36px;padding:2px 4px;text-align:right;transition:all .2s ease;transition:var(--transition)}.task-progress-label:hover{background:#e8f7f4;background:var(--color-primary-light);color:#1c9b82;color:var(--color-primary)}.progress-slider-row{align-items:center;animation:fadeIn .15s ease;display:flex;gap:8px;padding:8px 0}.progress-slider{flex:1 1}.progress-slider,.progress-slider-full{accent-color:#1c9b82;accent-color:var(--color-primary);cursor:pointer}.progress-slider-full{margin:4px 0;width:100%}.slider-value{color:#1c9b82;color:var(--color-primary);font-size:13px;font-weight:700;min-width:36px;text-align:center}.task-deadline-row{align-items:center;display:flex}.countdown{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:3px 8px}.countdown-ok{background:#ecfdf5;background:var(--color-low-bg);color:#10b981;color:var(--color-low)}.countdown-warning{background:#fffbeb;background:var(--color-medium-bg);color:#f59e0b;color:var(--color-medium)}.countdown-urgent{animation:pulse 1s ease infinite}.countdown-overdue,.countdown-urgent{background:#fef2f2;background:var(--color-high-bg);color:#ef4444;color:var(--color-high)}.countdown-overdue{font-weight:800}.countdown-compact{font-size:11px;padding:2px 7px}.task-card-actions{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:6px;padding-top:4px}.task-action-btn{align-items:center;background:#fff;background:var(--color-surface);border:1.5px solid #e2e8f0;border:1.5px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:5px 12px;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.action-progress:hover{background:#eff6ff;background:var(--color-open-bg);border-color:#3b82f6;border-color:var(--color-open);color:#3b82f6;color:var(--color-open)}.action-complete:hover{background:#f0fdf7;background:var(--color-success-bg);border-color:#10b981;border-color:var(--color-low);color:#10b981;color:var(--color-low)}.action-edit:hover{background:#e8f7f4;background:var(--color-primary-light);border-color:#1c9b82;border-color:var(--color-primary);color:#1c9b82;color:var(--color-primary)}.task-completed-row{align-items:center;border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);color:#10b981;color:var(--color-low);display:flex;font-size:12px;font-weight:600;gap:6px;padding-top:4px}.task-progress-detail{align-items:center;display:flex;gap:12px;margin-bottom:12px}.task-progress-pct-large{color:#1c9b82;color:var(--color-primary);font-size:20px;font-weight:800;min-width:52px}.daily-stats{animation:fadeInUp .25s ease;background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);margin-bottom:24px;padding:24px}.stats-section-title{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:14px;font-weight:700;gap:10px;letter-spacing:.8px;margin-bottom:16px;text-transform:uppercase}.week-avg-badge{background:#e8f7f4;background:var(--color-primary-light);border-radius:20px;color:#1c9b82;color:var(--color-primary);font-size:12px;font-weight:600;letter-spacing:0;padding:2px 8px;text-transform:none}.performance-feedback{border-radius:10px;border-radius:var(--radius-md);font-size:14px;font-weight:600;margin-bottom:20px;padding:12px 16px}.feedback-perfect{background:#f0fdf7;background:var(--color-success-bg);border-left:4px solid #2dce89;border-left:4px solid var(--color-accent);color:#065f46}.feedback-great{background:#e8f7f4;background:var(--color-primary-light);border-left:4px solid #1c9b82;border-left:4px solid var(--color-primary);color:#00796b;color:var(--color-primary-dark)}.feedback-good{background:#eff6ff;background:var(--color-open-bg);border-left:4px solid #3b82f6;border-left:4px solid var(--color-open);color:#1e40af}.feedback-ok{background:#fffbeb;background:var(--color-medium-bg);border-left:4px solid #f59e0b;border-left:4px solid var(--color-warning);color:#92400e}.today-summary-row{align-items:center;display:flex;gap:28px}.summary-ring-wrap{flex-shrink:0}.summary-ring{color:#333;color:var(--color-text);height:90px;transform:rotate(-90deg);width:90px}.today-breakdown{display:flex;flex-direction:column;gap:10px}.breakdown-item{align-items:center;display:flex;font-size:13px;gap:10px}.breakdown-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.dot-completed{background:#2dce89;background:var(--color-accent)}.dot-in-progress{background:#1c9b82;background:var(--color-primary)}.dot-pending{background:#e2e8f0;background:var(--color-border)}.breakdown-label{color:#6b7280;color:var(--color-text-muted);flex:1 1}.breakdown-count{color:#333;color:var(--color-text);font-weight:700;min-width:24px;text-align:right}.weekly-chart{align-items:flex-end;display:flex;gap:6px;justify-content:space-between;padding:4px 0}.week-day{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px;position:relative}.week-bar-track,.week-bar-wrap{align-items:flex-end;display:flex;width:100%}.week-bar-track{background:#e2e8f0;background:var(--color-border);border-radius:4px 4px 0 0;overflow:hidden}.week-bar-fill{border-radius:4px 4px 0 0;min-height:4px;transition:height .6s ease;width:100%}.bar-complete{background:#2dce89;background:var(--color-accent)}.bar-partial{background:#1c9b82;background:var(--color-primary)}.bar-empty{background:#e2e8f0;background:var(--color-border)}.week-pct{font-weight:700}.week-label,.week-pct{color:#6b7280;color:var(--color-text-muted);font-size:11px}.week-label{font-weight:500}.week-day-today .week-label{font-weight:700}.week-day-today .week-label,.week-day-today .week-pct{color:#1c9b82;color:var(--color-primary)}.week-today-dot{background:#1c9b82;background:var(--color-primary);border-radius:50%;height:5px;width:5px}.notes-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.notes-empty{color:#6b7280;color:var(--color-text-muted);font-size:14px;font-style:italic}.note-item{background:#f8f8f8;background:var(--color-bg);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);padding:12px 14px}.note-content{color:#333;color:var(--color-text);font-size:14px;line-height:1.6;margin-bottom:8px;white-space:pre-wrap}.note-meta{align-items:center;display:flex;font-size:12px;justify-content:space-between}.note-delete-btn,.note-meta{color:#6b7280;color:var(--color-text-muted)}.note-delete-btn{background:none;border:none;cursor:pointer;font-size:18px;line-height:1;padding:0 4px;transition:all .2s ease;transition:var(--transition)}.note-delete-btn:hover{color:#f44336;color:var(--color-error)}.note-form{display:flex;flex-direction:column;gap:10px}.note-form .btn{align-self:flex-end}.move-day-label{cursor:pointer}@media (max-width:768px){.tasks-header{align-items:flex-start;flex-direction:column}.tasks-header-actions{width:100%}.tasks-header-actions .btn{flex:1 1;justify-content:center}.task-filter-chips{flex-direction:column;gap:10px}.today-summary-row{align-items:flex-start;flex-direction:column}.weekly-chart{gap:3px}.week-label,.week-pct{font-size:9px}}.signup-page{align-items:stretch;min-height:100vh;padding:0}.signup-split{display:flex;min-height:100vh;width:100%}.signup-brand{align-items:center;background:linear-gradient(145deg,#1c9b82,#6d28d9);background:linear-gradient(145deg,var(--color-primary) 0,#6d28d9 100%);display:flex;flex:0 0 42%;justify-content:center;padding:48px 40px}.signup-brand-inner{color:#fff;max-width:340px}.signup-brand-logo{align-items:center;background:#ffffff2e;border-radius:14px;display:flex;height:52px;justify-content:center;margin-bottom:24px;width:52px}.signup-brand-logo svg{stroke:#fff;height:28px;width:28px}.signup-brand-title{color:#fff;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0 0 12px}.signup-brand-desc{color:#ffffffd1;font-size:15px;line-height:1.6;margin:0 0 36px}.signup-feature-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;padding:0}.signup-feature-item{align-items:center;color:#ffffffe6;display:flex;font-size:14px;font-weight:500;gap:10px}.signup-feature-item svg{stroke:#ffffffe6;flex-shrink:0}.signup-form-panel{align-items:center;background:#f8f8f8;background:var(--color-bg);display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:48px 32px}.signup-form-inner{max-width:420px;width:100%}.signup-steps{gap:0;margin-bottom:32px}.signup-step-dot,.signup-steps{align-items:center;display:flex}.signup-step-dot{background:#f8f8f8;background:var(--color-bg);border:2px solid #e2e8f0;border:2px solid var(--color-border);border-radius:50%;color:#6b7280;color:var(--color-text-muted);flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;transition:var(--transition);width:32px}.signup-step-dot.active{background:#1c9b82;background:var(--color-primary);border-color:#1c9b82;border-color:var(--color-primary);color:#fff}.signup-step-line{background:#e2e8f0;background:var(--color-border);flex:1 1;height:2px;transition:background .3s}.signup-step-line.active{background:#1c9b82;background:var(--color-primary)}.signup-summary-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:8px;margin-bottom:24px;padding:14px 16px}.summary-row{align-items:center;color:#333;color:var(--color-text);display:flex;font-size:13px;font-weight:500;gap:8px}.summary-row svg{stroke:#6b7280;stroke:var(--color-text-muted);flex-shrink:0}.btn-google{align-items:center;background:#f8f8f8;background:var(--color-bg);border:1.5px solid #e2e8f0;border:1.5px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#333;color:var(--color-text);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;justify-content:center;padding:10px 16px;transition:all .2s ease;transition:var(--transition)}.btn-google:hover:not(:disabled){background:#fff;background:var(--color-surface);border-color:#6b7280;border-color:var(--color-text-muted)}.btn-google:disabled{cursor:not-allowed;opacity:.6}.settings-card{margin-bottom:20px}.settings-section-title{font-size:18px;font-weight:700;margin-bottom:14px}.settings-toggle-row{margin-bottom:12px}.btn-lg{font-size:15px;font-weight:700;gap:8px;padding:13px 20px}.btn-spinner-dark{animation:spin .7s linear infinite;border:2px solid #e2e8f0;border-top-color:#6b7280;border:2px solid var(--color-border);border-radius:50%;border-top-color:var(--color-text-muted);display:inline-block;height:16px;width:16px}.input-icon-static{align-items:center;display:flex;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.field-hint,.input-icon-static{color:#6b7280;color:var(--color-text-muted)}.field-hint{font-size:12px;line-height:1.4;margin:5px 0 0}.form-success-text{align-items:center;color:#2dce89;color:var(--color-accent);display:inline-flex;font-size:12px;font-weight:500;gap:4px;margin-top:5px}.form-success-text svg{stroke:#2dce89;stroke:var(--color-accent)}.input-success{border-color:#2dce89!important;border-color:var(--color-accent)!important;outline-color:#2dce89!important;outline-color:var(--color-accent)!important}.input-success:focus{box-shadow:0 0 0 3px #10b98126!important}.back-btn{align-items:center;background:none;border:none;color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:0;transition:all .2s ease;transition:var(--transition)}.back-btn:hover{color:#333;color:var(--color-text)}.auth-divider{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:13px;gap:12px;margin:4px 0}.auth-divider:after,.auth-divider:before{background:#e2e8f0;background:var(--color-border);content:"";flex:1 1;height:1px}.verify-email-page{background:#f8f8f8;background:var(--color-bg)}.verify-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000012;max-width:480px;padding:48px 40px;text-align:center;width:100%}.verify-icon{animation:verifyBounce .6s ease;height:80px;margin:0 auto 24px;width:80px}@keyframes verifyBounce{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.verify-title{color:#333;color:var(--color-text);font-size:24px;font-weight:800;letter-spacing:-.4px;margin:0 0 12px}.verify-body{color:#6b7280;color:var(--color-text-muted);font-size:15px;line-height:1.6;margin:0 0 28px}.verify-email-highlight{color:#1c9b82;color:var(--color-primary);font-weight:600;word-break:break-all}.verify-steps{background:#f8f8f8;background:var(--color-bg);border-radius:10px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:14px;margin-bottom:28px;padding:20px;text-align:left}.verify-step{color:#333;color:var(--color-text);font-size:14px;gap:14px;line-height:1.4}.verify-step,.verify-step-num{align-items:center;display:flex}.verify-step-num{background:#1c9b82;background:var(--color-primary);border-radius:50%;color:#fff;flex-shrink:0;font-size:12px;font-weight:700;height:26px;justify-content:center;width:26px}.verify-divider{background:#e2e8f0;background:var(--color-border);height:1px;margin:0 0 20px}.verify-resend-label{color:#6b7280;color:var(--color-text-muted);font-size:13px;margin:0 0 14px}.verify-resent{border-color:#2dce89!important;border-color:var(--color-accent)!important;color:#2dce89!important;color:var(--color-accent)!important;gap:6px}@media (max-width:520px){.verify-card{border-radius:10px;border-radius:var(--radius-md);padding:32px 20px}}@media (max-width:768px){.signup-split{flex-direction:column}.signup-brand{flex:none;min-height:auto;padding:32px 24px}.signup-brand-inner{max-width:100%}.signup-feature-list{display:none}.signup-brand-desc{margin-bottom:0}.signup-form-panel{padding:32px 20px}}.invite-link-card{background:#fff;background:var(--color-surface);border:1.5px solid #1c9b82;border:1.5px solid var(--color-primary);border-radius:10px;border-radius:var(--radius-md);margin-bottom:24px;padding:16px 18px}.invite-link-label{color:#6b7280;color:var(--color-text-muted);font-size:13px;line-height:1.5;margin:0 0 12px}.invite-link-row{align-items:center;display:flex;gap:10px}.invite-link-input{background:#f8f8f8;background:var(--color-bg);color:#333;color:var(--color-text);flex:1 1;font-family:monospace;font-size:13px;min-width:0}.btn-accent{align-items:center;background:#2dce89;background:var(--color-accent);border:none;color:#fff;display:inline-flex;gap:6px}.btn-accent:hover{opacity:.88}.invite-email-btn{justify-content:center;margin-top:10px;width:100%}.invite-badge{align-items:center;background:color-mix(in srgb,#1c9b82 12%,#0000);background:color-mix(in srgb,var(--color-primary) 12%,#0000);border:1px solid color-mix(in srgb,#1c9b82 30%,#0000);border:1px solid color-mix(in srgb,var(--color-primary) 30%,#0000);border-radius:20px;color:#1c9b82;color:var(--color-primary);display:inline-flex;font-size:13px;font-weight:600;gap:7px;margin-bottom:24px;padding:7px 14px}.input-readonly{background:#fff!important;background:var(--color-surface)!important;color:#6b7280!important;color:var(--color-text-muted)!important;cursor:default}.summary-role-badge{background:color-mix(in srgb,#1c9b82 15%,#0000);background:color-mix(in srgb,var(--color-primary) 15%,#0000);border-radius:10px;color:#1c9b82;color:var(--color-primary);display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;text-transform:capitalize}.invite-sent-banner{align-items:center;background:color-mix(in srgb,#2dce89 12%,#0000);background:color-mix(in srgb,var(--color-accent) 12%,#0000);border:1px solid color-mix(in srgb,#2dce89 30%,#0000);border:1px solid color-mix(in srgb,var(--color-accent) 30%,#0000);border-radius:6px;border-radius:var(--radius-sm);color:#2dce89;color:var(--color-accent);display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 14px}.invite-sent-banner svg{stroke:#2dce89;stroke:var(--color-accent);flex-shrink:0}.comments-section{margin-top:28px;max-width:800px}.comments-heading{align-items:center;color:#333;color:var(--color-text);display:flex;font-size:16px;font-weight:700;gap:8px;margin-bottom:20px}.comments-heading svg{stroke:#6b7280;stroke:var(--color-text-muted)}.comments-count{align-items:center;background:#e8f7f4;background:var(--color-primary-light);border-radius:10px;color:#1c9b82;color:var(--color-primary);display:inline-flex;font-size:12px;font-weight:700;height:20px;justify-content:center;min-width:22px;padding:0 6px}.comments-list{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}.comments-empty{color:#6b7280;color:var(--color-text-muted);font-size:14px;padding:20px 0;text-align:center}.comments-loading{display:flex;flex-direction:column;gap:10px}.comment-skeleton{animation:shimmer 1.4s infinite;background:linear-gradient(90deg,#e2e8f0 25%,#f8f8f8 50%,#e2e8f0 75%);background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg) 50%,var(--color-border) 75%);background-size:200% 100%;border-radius:10px;border-radius:var(--radius-md);height:64px}.comment-item{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);display:flex;gap:12px;padding:14px 0;position:relative}.comment-item:last-child{border-bottom:none}.comment-avatar{align-items:center;background:#1c9b82;background:var(--color-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;margin-top:1px;width:32px}.comment-body{flex:1 1;min-width:0}.comment-meta{align-items:baseline;display:flex;gap:8px;margin-bottom:5px}.comment-author{color:#333;color:var(--color-text);font-size:13px;font-weight:700}.comment-time{color:#6b7280;color:var(--color-text-muted);font-size:12px}.comment-content{color:#333;color:var(--color-text);font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.comment-delete-btn{border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-text-muted);cursor:pointer;opacity:0;padding:4px;position:absolute;right:0;top:14px;transition:all .2s ease;transition:var(--transition)}.comment-item:hover .comment-delete-btn{opacity:1}.comment-delete-btn:hover{background:#fff5f5;background:var(--color-error-bg);color:#f44336;color:var(--color-error)}.comment-action-hint{align-items:center;background:color-mix(in srgb,#1c9b82 10%,#0000);background:color-mix(in srgb,var(--color-primary) 10%,#0000);border:1px solid color-mix(in srgb,#1c9b82 25%,#0000);border:1px solid color-mix(in srgb,var(--color-primary) 25%,#0000);border-radius:6px;border-radius:var(--radius-sm);color:#1c9b82;color:var(--color-primary);display:flex;font-size:13px;gap:8px;margin-bottom:10px;padding:9px 12px}.comment-action-hint svg{flex-shrink:0}.hint-dismiss{color:#1c9b82;color:var(--color-primary);cursor:pointer;font-size:12px;margin-left:auto;opacity:.7;padding:0 2px;transition:opacity .15s}.hint-dismiss:hover{opacity:1}.comment-form{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);padding:14px}.comment-textarea{background:#f8f8f8;background:var(--color-bg);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#333;color:var(--color-text);font-family:inherit;font-size:14px;line-height:1.5;min-height:80px;padding:10px 12px;resize:vertical;transition:all .2s ease;transition:var(--transition);width:100%}.comment-textarea:focus{background:#fff;background:var(--color-surface);border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,#1c9b82 15%,#0000);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 15%,#0000);outline:none}.comment-form-footer{align-items:center;display:flex;justify-content:space-between;margin-top:10px}.comment-hint{color:#6b7280;color:var(--color-text-muted);font-size:11px}.comment-input-wrap{position:relative}.comment-mention{background:color-mix(in srgb,#1c9b82 10%,#0000);background:color-mix(in srgb,var(--color-primary) 10%,#0000);border-radius:4px;color:#1c9b82;color:var(--color-primary);display:inline;font-weight:600;padding:0 3px}.mention-dropdown{animation:dropdownIn .15s ease;background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);bottom:calc(100% + 6px);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);left:0;overflow:hidden;position:absolute;right:0;z-index:300}.mention-dropdown-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);color:#6b7280;color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.6px;padding:7px 12px 5px;text-transform:uppercase}.mention-item{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-family:inherit;gap:10px;padding:9px 12px;text-align:left;transition:background .12s;width:100%}.mention-item.active,.mention-item:hover{background:#e8f7f4;background:var(--color-primary-light)}.mention-item-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.mention-item-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.mention-item-name{color:#333;color:var(--color-text);font-size:13px;font-weight:600}.mention-item-email,.mention-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-item-email{color:#6b7280;color:var(--color-text-muted);font-size:11px}.mention-item-role{border-radius:8px;color:#fff;flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px;text-transform:capitalize}.mention-dropdown-footer{background:#f8f8f8;background:var(--color-bg);border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);color:#6b7280;color:var(--color-text-muted);font-size:11px;padding:6px 12px}.project-search-wrap{margin-bottom:24px;max-width:420px;position:relative}.project-search-wrap .search-icon{stroke:#6b7280;stroke:var(--color-text-muted);height:16px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:16px}.project-search-wrap .search-input{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);color:#333;color:var(--color-text);font-size:14px;padding:9px 14px 9px 38px;transition:all .2s ease;transition:var(--transition);width:100%}.project-search-wrap .search-input:focus{border-color:#1c9b82;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,#1c9b82 15%,#0000);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 15%,#0000);outline:none}.project-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.project-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s ease,transform .15s ease}.project-card:hover{box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-card-archived{opacity:.65}.project-card-color-bar{height:4px;width:100%}.project-card-body{display:flex;flex:1 1;flex-direction:column;gap:10px;padding:18px 18px 14px}.project-card-top{align-items:flex-start;display:flex;justify-content:space-between}.project-avatar{align-items:center;border-radius:10px;border-radius:var(--radius-md);color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.project-card-name{color:#333;color:var(--color-text);font-size:16px;font-weight:700;line-height:1.3;transition:color .15s}.project-card-name:hover{color:#1c9b82;color:var(--color-primary)}.project-card-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;color:var(--color-text-muted);display:-webkit-box;flex:1 1;font-size:13px;line-height:1.5;overflow:hidden}.project-creator-row{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);display:flex;gap:8px;margin:4px 0;padding:10px 0}.project-creator-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:26px;justify-content:center;width:26px}.project-creator-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.project-creator-label{color:#6b7280;color:var(--color-text-muted);font-size:10px;font-weight:600;letter-spacing:.4px;line-height:1;text-transform:uppercase}.project-creator-name{color:#333;color:var(--color-text);font-size:13px;font-weight:600;line-height:1.3;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-creator-role{border-radius:10px;color:#fff;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.3px;padding:2px 8px;text-transform:capitalize}.project-card-footer{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:auto;padding-top:10px}.project-open-btn{align-items:center;background:#e8f7f4;background:var(--color-primary-light);border:1.5px solid color-mix(in srgb,#1c9b82 25%,#0000);border:1.5px solid color-mix(in srgb,var(--color-primary) 25%,#0000);border-radius:6px;border-radius:var(--radius-sm);color:#1c9b82;color:var(--color-primary);display:inline-flex;flex-shrink:0;font-size:13px;font-weight:600;gap:4px;padding:5px 12px;transition:all .2s ease;transition:var(--transition);white-space:nowrap}.project-open-btn:hover{background:#1c9b82;background:var(--color-primary);border-color:#1c9b82;border-color:var(--color-primary);color:#fff}.project-issue-count{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:12px;gap:5px}.project-archived-badge{background:#f9fafb;background:var(--color-closed-bg);color:#6b7280;color:var(--color-text-muted)}.project-archived-badge,.project-private-badge{border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.4px;padding:2px 8px;text-transform:uppercase}.project-private-badge{align-items:center;background:color-mix(in srgb,#f59e0b 12%,#0000);background:color-mix(in srgb,var(--color-warning) 12%,#0000);color:#f59e0b;color:var(--color-warning);display:inline-flex;gap:4px}.project-private-badge-lg,.project-public-badge{font-size:12px;padding:3px 10px}.project-public-badge{align-items:center;background:color-mix(in srgb,#1c9b82 12%,#0000);background:color-mix(in srgb,var(--color-primary) 12%,#0000);border-radius:10px;color:#1c9b82;color:var(--color-primary);display:inline-flex;font-weight:600;gap:4px;letter-spacing:.4px;text-transform:uppercase}.visibility-toggle{display:flex;gap:10px}.visibility-option{align-items:center;background:#fff;background:var(--color-surface);border:2px solid #e2e8f0;border:2px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:14px;font-weight:600;gap:4px;padding:14px 12px;transition:all .2s ease;transition:var(--transition)}.visibility-option svg{margin-bottom:2px}.visibility-option.active,.visibility-option:hover{background:#e8f7f4;background:var(--color-primary-light);border-color:#1c9b82;border-color:var(--color-primary);color:#1c9b82;color:var(--color-primary)}.visibility-hint{color:#6b7280;color:var(--color-text-muted);font-size:11px;font-weight:400;text-align:center}.visibility-option.active .visibility-hint{color:#1c9b82;color:var(--color-primary);opacity:.75}.visibility-locked{align-items:center;background:color-mix(in srgb,#f59e0b 8%,#0000);background:color-mix(in srgb,var(--color-warning) 8%,#0000);border:1px solid color-mix(in srgb,#f59e0b 30%,#0000);border:1px solid color-mix(in srgb,var(--color-warning) 30%,#0000);border-radius:10px;border-radius:var(--radius-md);color:#f59e0b;color:var(--color-warning);display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 14px}.visibility-locked svg{flex-shrink:0}.project-dropdown{animation:fadeInDown .15s ease;background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 10px 30px #0000001f,0 4px 8px #0000000f;box-shadow:var(--shadow-lg);min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:20}.project-section-title{color:#6b7280;color:var(--color-text-muted);font-size:13px;font-weight:600;letter-spacing:.8px;margin-bottom:14px;text-transform:uppercase}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.project-card-skeleton{animation:shimmer 1.4s infinite;background:linear-gradient(90deg,#e2e8f0 25%,#f8f8f8 50%,#e2e8f0 75%);background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg) 50%,var(--color-border) 75%);background-size:200% 100%;border-radius:16px;border-radius:var(--radius-lg);height:180px}.project-breadcrumb{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;font-size:13px;gap:6px;margin-bottom:20px}.breadcrumb-link{color:#1c9b82;color:var(--color-primary);font-weight:500;transition:opacity .15s}.breadcrumb-link:hover{opacity:.75}.breadcrumb-current{color:#333;color:var(--color-text);font-weight:600}.project-breadcrumb svg{stroke:#6b7280;stroke:var(--color-text-muted);flex-shrink:0}.stats-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.stat-card{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:100px;padding:16px 20px;transition:box-shadow .15s,transform .15s}.stat-card:hover{box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-count{color:#333;color:var(--color-text);font-size:28px;font-weight:700;line-height:1}.stat-label{color:#6b7280;color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-open{border-top:3px solid #3b82f6;border-top:3px solid var(--color-open)}.stat-progress{border-top:3px solid #f59e0b;border-top:3px solid var(--color-progress)}.stat-closed{border-top:3px solid #6b7280;border-top:3px solid var(--color-closed)}.stat-open .stat-count{color:#3b82f6;color:var(--color-open)}.stat-progress .stat-count{color:#f59e0b;color:var(--color-progress)}.stat-closed .stat-count{color:#6b7280;color:var(--color-closed)}.issues-grid{display:flex;flex-direction:column;gap:12px}.icon-btn{align-items:center;background:#0000;border:none;border-radius:6px;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:flex;height:30px;justify-content:center;transition:all .2s ease;transition:var(--transition);width:30px}.icon-btn:hover{background:#f8f8f8;background:var(--color-bg);color:#333;color:var(--color-text)}@media (max-width:600px){.stats-row{gap:10px}.stat-card{padding:12px 14px}.stat-count{font-size:22px}.project-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.e4360bf0.css.map*/