.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-notification);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg-primary);border-radius:16px;box-shadow:0 8px 32px #0003;width:100%;max-width:400px;margin:20px;border:1px solid var(--bg-tertiary);animation:modalSlideIn .3s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0;margin-bottom:16px}.modal-title{color:var(--text-primary);font-size:18px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px}.modal-title.danger{color:#dc2626}.modal-title.warning{color:#d97706}.modal-title.info{color:#2563eb}.modal-icon{font-size:20px}.modal-close{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;line-height:1}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{padding:0 24px 24px}.modal-message{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.modal-footer{display:flex;gap:12px;padding:0 24px 24px;justify-content:flex-end}.modal-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent;min-width:80px}.cancel-button{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-color)}.cancel-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.confirm-button{background:#2563eb;color:#fff;border-color:#2563eb}.confirm-button:hover{background:#1d4ed8;border-color:#1d4ed8}.confirm-button.danger{background:#dc2626;border-color:#dc2626}.confirm-button.danger:hover{background:#b91c1c;border-color:#b91c1c}.confirm-button.warning{background:#d97706;border-color:#d97706}.confirm-button.warning:hover{background:#b45309;border-color:#b45309}.confirm-button.info{background:#2563eb;border-color:#2563eb}.confirm-button.info:hover{background:#1d4ed8;border-color:#1d4ed8}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;overflow-y:auto;position:relative;width:100%}.modal-small{max-width:400px}.modal-medium{max-width:600px}.modal-large{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0}.modal-title{margin:0;font-size:1.8rem;font-weight:600;color:#fff}.modal-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;transition:all .2s ease}.modal-close-btn:hover{background-color:#f3f4f6;color:#374151}@media (max-width: 640px){.modal-overlay{padding:10px}.modal-content{margin:0;border-radius:8px}.modal-header{padding:16px 20px}.modal-body{padding:20px}.modal-title{font-size:1.125rem}}.password-input-container{position:relative;display:flex;align-items:center;width:100%}.password-input{width:100%;padding:8px 35px 8px 12px;border:1px solid #ccc;border-radius:4px;font-size:16px;transition:border-color .2s ease}.password-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.password-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.password-toggle-button{position:absolute;right:8px;background:none;border:none;padding:4px 8px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#666;border-radius:4px;text-transform:uppercase;font-weight:600;letter-spacing:.5px;z-index:var(--z-content)}.password-toggle-button:hover{background-color:#0000000d;color:#333}.password-toggle-button:disabled{cursor:not-allowed;opacity:.5}.password-toggle-button:not(:focus-visible){outline:none}.version-display{display:inline-flex;align-items:center;gap:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.4}.version-display.compact{font-size:12px;color:var(--text-secondary)}.version-display.inline{font-size:.85rem;color:var(--text-primary);padding:4px 8px;background:var(--bg-secondary);border-radius:4px;border:1px solid var(--bg-tertiary)}.version-display.detailed{flex-direction:column;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:6px;min-width:300px}.version-text{font-weight:500;cursor:help;position:relative}.version-text[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:8px 12px;border-radius:6px;font-size:.75rem;white-space:pre-line;z-index:1000;min-width:250px;text-align:left;box-shadow:0 4px 12px #0000004d;margin-bottom:8px}.version-text[data-tooltip]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6;margin-bottom:3px;z-index:1000}.version-display.loading .version-loading{color:var(--text-secondary);font-style:italic}.version-display.error .version-error{color:var(--error-red);font-style:italic}.version-refresh-btn{background:none;border:none;cursor:pointer;padding:2px;border-radius:3px;font-size:12px;opacity:.7;transition:opacity .2s ease}.version-refresh-btn:hover{opacity:1;background:var(--bg-tertiary)}.version-refresh-btn:active{transform:scale(.95)}.version-details{display:flex;flex-direction:column;gap:6px;width:100%}.version-detail-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid var(--bg-tertiary)}.version-detail-item:last-child{border-bottom:none}.detail-label{font-weight:600;color:var(--text-secondary);min-width:80px}.detail-value{color:var(--text-primary);font-weight:500;text-align:right;flex:1;margin-left:12px}.version-display .version-text[title*=development]{color:var(--accent-orange)}.version-display .version-text[title*=staging]{color:var(--accent-yellow)}.version-display .version-text[title*=production]{color:var(--accent-green)}@media (max-width: 768px){.version-display.detailed{min-width:250px;font-size:.8rem}.version-detail-item{flex-direction:column;align-items:flex-start;gap:2px}.detail-value{text-align:left;margin-left:0}}@keyframes versionRefresh{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.version-refresh-btn:active{animation:versionRefresh .3s ease}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);padding:20px;box-sizing:border-box}.login-card{background:var(--bg-primary);border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:40px;width:100%;max-width:420px;border:1px solid var(--bg-tertiary)}.login-header{text-align:center;margin-bottom:32px}.login-header h1{color:var(--text-primary);font-size:28px;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:var(--text-secondary);font-size:16px;margin:0 0 16px}.early-dev-notice{background:#eab3081a;border:1px solid rgba(234,179,8,.3);color:#b45309;padding:12px 16px;border-radius:8px;margin:16px 0;font-size:14px;line-height:1.4;text-align:center}.early-dev-notice span{font-weight:600}.status-indicator{padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;margin-top:8px;display:flex;align-items:center;gap:6px;justify-content:center}.status-indicator.checking{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.status-indicator.online{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.status-indicator.offline{background:#ef44441a;color:var(--accent-red);border:1px solid rgba(239,68,68,.2);text-align:center;line-height:1.4}.status-indicator span{font-size:14px}.login-form{margin-bottom:0}.form-group input[type=text],.form-group input[type=email]{width:100%;padding:12px 16px;border:2px solid var(--bg-tertiary);border-radius:8px;font-size:16px;color:var(--text-primary);background:var(--bg-primary);transition:all .3s ease;box-sizing:border-box}.form-group input[type=text]:focus,.form-group input[type=email]:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #1e3a8a1a}.form-group input[type=text]:disabled,.form-group input[type=email]:disabled{background:var(--bg-secondary);color:var(--text-light);cursor:not-allowed}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder{color:var(--text-light)}.login-button{width:100%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #1e3a8a4d}.login-button:disabled{background:var(--bg-tertiary);color:var(--text-light);cursor:not-allowed;transform:none;box-shadow:none}.login-error{background:#ef44441a;border:1px solid var(--accent-red);color:var(--accent-red);padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}.error-icon{font-size:16px;flex-shrink:0}@media (max-width: 480px){.login-container{padding:16px}.login-card{padding:24px}.login-header h1{font-size:24px}.status-indicator{font-size:11px;padding:6px 10px}.status-indicator span{font-size:12px}}@media (prefers-color-scheme: dark){.login-card{background:var(--bg-dark);border-color:var(--bg-tertiary);box-shadow:0 8px 32px #0000004d}}.unauthorized-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);padding:20px;box-sizing:border-box}.unauthorized-card{background:var(--bg-primary);border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:40px;width:100%;max-width:480px;border:1px solid var(--bg-tertiary);text-align:center}.unauthorized-icon{font-size:64px;margin-bottom:24px}.unauthorized-card h1{color:var(--text-primary);font-size:28px;font-weight:700;margin:0 0 16px}.unauthorized-card p{color:var(--text-secondary);font-size:16px;margin:0 0 24px;line-height:1.5}.user-info{background:var(--bg-secondary);border-radius:8px;padding:16px;margin-bottom:24px;text-align:left}.user-info p{margin:0 0 8px;font-size:14px;color:var(--text-primary)}.user-info p:last-child{margin-bottom:0}.user-info strong{color:var(--text-primary);font-weight:600}.unauthorized-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.home-button,.logout-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;min-width:120px}.home-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white)}.home-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1e3a8a4d}.logout-button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--bg-tertiary)}.logout-button:hover{background:var(--bg-tertiary);transform:translateY(-1px)}@media (max-width: 480px){.unauthorized-container{padding:16px}.unauthorized-card{padding:24px}.unauthorized-card h1{font-size:24px}.unauthorized-icon{font-size:48px;margin-bottom:16px}.unauthorized-actions{flex-direction:column}.home-button,.logout-button{width:100%}}@media (prefers-color-scheme: dark){.unauthorized-card{background:var(--bg-dark);border-color:var(--bg-tertiary);box-shadow:0 8px 32px #0000004d}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg-primary);border-radius:16px;box-shadow:0 8px 32px #0003;width:100%;max-width:480px;margin:20px;border:1px solid var(--bg-tertiary);animation:modalSlideIn .3s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0;margin-bottom:20px}.modal-header h2{color:var(--text-primary);font-size:24px;font-weight:700;margin:0;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-close{background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary);transform:scale(1.1)}.change-password-form{padding:0 24px 24px}.form-group label{display:block;color:var(--text-primary);font-weight:600;margin-bottom:8px;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid var(--bg-tertiary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.form-group input:disabled{background:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.password-requirements{margin-top:12px;padding:12px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--bg-tertiary)}.requirements-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.requirement-item{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:4px;transition:all .2s ease}.requirement-item:last-child{margin-bottom:0}.requirement-item.met{color:#22c55e}.requirement-item.unmet{color:var(--text-secondary)}.requirement-icon{font-size:12px;width:16px;display:flex;justify-content:center}.form-message{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-message.error{background:#ef44441a;color:var(--accent-red);border:1px solid rgba(239,68,68,.2)}.form-message.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.message-icon{font-size:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-button,.submit-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;min-width:100px}.cancel-button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--bg-tertiary)}.cancel-button:hover{background:var(--bg-tertiary);transform:translateY(-1px)}.submit-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white)}.submit-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1e3a8a4d}.submit-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 480px){.modal-content{margin:10px;border-radius:12px}.modal-header{padding:20px 20px 0}.modal-header h2{font-size:20px}.change-password-form{padding:0 20px 20px}.modal-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}@media (prefers-color-scheme: dark){.modal-overlay{background:#000000b3}.modal-content{background:var(--bg-dark);border-color:var(--bg-tertiary);box-shadow:0 8px 32px #0006}.password-requirements{background:var(--bg-primary);border-color:var(--bg-tertiary)}.requirement-item.met{color:#10b981}}.user-greeting{position:relative;display:inline-block;cursor:pointer;z-index:var(--z-content);overflow:visible}.user-greeting-button{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;transition:background-color .2s ease;font-size:14px}.user-greeting-button:hover{background-color:#f5f5f5}.greeting-text{color:#333;font-weight:500;transition:background-color .2s ease;position:relative;z-index:var(--z-content)}.dropdown-arrow{font-size:12px;color:#666;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.user-greeting:hover .greeting-text{background-color:#f5f5f5}.user-dropdown{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:220px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease;z-index:var(--z-notification);margin-top:4px}.user-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.user-dropdown-item{background:none;border:none;width:100%;text-align:left;padding:12px 16px;cursor:pointer;font-size:14px;color:#333;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease;z-index:var(--z-modal);font-family:inherit}.user-dropdown-item:hover{background-color:#f5f5f5}.user-dropdown-item:last-child{border-bottom:none}.dropdown-divider{height:1px;background-color:#e0e0e0;margin:8px 0}.user-info{padding:12px 16px 0;margin:0}.user-details{display:flex;flex-direction:column;margin:0;padding:0}.user-details strong{color:#333;font-size:14px;margin:0;padding:0}.user-email{color:#666;font-size:12px;margin:0;padding:0}.user-role{color:#666;font-size:12px;font-weight:500;margin:0;padding:0}.user-actions{padding:8px 0 4px;margin:0;border-top:1px solid #f0f0f0;display:flex;flex-direction:column;gap:4px}.action-button{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:12px;transition:all .2s ease;display:flex;align-items:center;gap:6px;text-align:left;width:100%;box-sizing:border-box}.change-password-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff}.change-password-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #1e3a8a4d}.logout-button{background:#ff4757;color:#fff}.logout-button:hover{background:#ff3742;transform:translateY(-1px);box-shadow:0 2px 8px #ff47574d}@media (max-width: 768px){.user-greeting{gap:8px}.user-dropdown{min-width:200px}.user-details strong{font-size:13px}.user-email,.user-role{font-size:11px}.action-button{padding:6px 10px;font-size:11px}}.right-align{text-align:right;color:var(--text-secondary);font-size:14px}.hello-container{display:flex;justify-content:space-between;width:100%;padding:10px 16px;box-sizing:border-box;position:fixed;top:0;left:0;right:0;z-index:var(--z-modal);background:var(--bg-primary);border-bottom:1px solid var(--bg-tertiary);height:var(--hello-height);min-height:var(--hello-height);max-height:var(--hello-height);align-items:center}.left-align{text-align:left;font-size:16px;font-weight:700}.right-align{text-align:right;font-size:16px;font-weight:700}.trading-calendar{padding:20px;font-family:Arial,sans-serif;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;transition:all .3s ease}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.trading-calendar h2{margin:0;color:#333;font-size:1.5rem}.view-links{display:flex;align-items:center;gap:8px;background:#f8f9fa;border-radius:6px;padding:4px}.view-link{background:transparent;border:none;padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .2s ease;white-space:nowrap}.view-link:hover{background:#e9ecef;color:#495057}.view-link.active{background:#007bff;color:#fff}.view-link.active:hover{background:#0056b3}.loading,.error{text-align:center;padding:20px;color:#666}.error{color:#dc3545}.calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:20px;transition:all .3s ease}.calendar-day{border:1px solid #ddd;border-radius:8px;padding:15px;background:#fff;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease}.calendar-day:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.calendar-day.market-closed{background-color:#f8f9fa;opacity:.7}.calendar-day.option-expiry{border-color:#dc3545;background-color:#fff5f5}.calendar-day.current-day{border-color:#007bff;background-color:#f0f8ff;box-shadow:0 0 0 2px #007bff40}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.date{font-weight:700;font-size:14px;color:#333}.day-of-week{color:#666;font-size:12px;text-transform:uppercase}.day-status{margin-bottom:10px}.market-status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.market-status.open{background-color:#d4edda;color:#155724}.market-status.closed{background-color:#f8d7da;color:#721c24}.option-expiry-badge{display:inline-block;background-color:#dc3545;color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;margin-left:8px;font-weight:700}.earnings-section{margin-top:10px;padding-top:10px;border-top:1px solid #eee}.earnings-section h4{margin:0 0 8px;font-size:12px;color:#666;text-transform:uppercase}.earning-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:11px;border-bottom:1px solid #f0f0f0}.earning-item:last-child{border-bottom:none}.symbol{font-weight:700;color:#333;flex:1}.time{color:#666;font-size:10px;margin:0 8px}.estimate,.actual{font-weight:700;font-size:10px}.estimate{color:#28a745}.estimate.tc-negative{color:#333}.actual{color:#007bff}@media (max-width: 768px){.calendar-grid{grid-template-columns:1fr}.trading-calendar{padding:15px}.calendar-day{padding:12px}.calendar-header{flex-direction:column;align-items:flex-start;gap:10px}.view-links{align-self:flex-end}}@media (max-width: 480px){.day-header{flex-direction:column;align-items:flex-start;gap:4px}.earning-item{flex-direction:column;align-items:flex-start;gap:2px}.calendar-header{align-items:stretch}.view-links{align-self:center}}.trade-summary-card{border:1px solid #ddd;border-radius:8px;padding:0;background:#fff;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease;display:flex;flex-direction:column;gap:0px;min-height:auto}.trade-summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.trade-summary-card.current-period{border-color:#007bff;background-color:#f0f8ff;box-shadow:0 0 0 2px #007bff40}.trade-summary-card.current-period:hover{background-color:#e6f3ff}.trade-summary-day-header,.trade-summary-week-header,.trade-summary-month-header,.trade-summary-year-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding:15px 15px 0}.trade-summary-date{font-weight:500;font-size:14px;color:#333}.trade-summary-day-of-week{color:#666;font-size:12px;text-transform:uppercase}.card-divider{border-top:1px solid #eee;margin:5px 15px}.ts-card-content{display:flex;flex-direction:column;gap:0px;flex:1;padding:10px 15px 15px}.ts-metric-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:11px;font-family:Arial,sans-serif;border-bottom:1px solid #f0f0f0}.ts-metric-item:last-child{border-bottom:none}.metric-label{font-size:11px!important;font-family:Arial,sans-serif!important;color:#666!important;font-weight:700!important}.metric-value{font-size:11px!important;font-family:Arial,sans-serif!important;font-weight:700!important;color:#333!important;display:flex;align-items:center;gap:4px}.metric-value.positive{color:#155724}.metric-value.negative{color:#721c24}.change-indicator{font-size:8px;font-weight:700;padding:1px 3px;border-radius:3px;background:#0000000d}.change-indicator.positive{color:#155724;background:#1557241a}.change-indicator.negative{color:#721c24;background:#721c241a}@media (max-width: 1024px){.trade-summary-card{padding:0;min-height:180px}.trade-summary-day-header,.trade-summary-week-header,.trade-summary-month-header,.trade-summary-year-header{padding:12px 12px 0}.ts-card-content{padding:12px}.trade-summary-date{font-size:14px}.metric-label,.metric-value{font-size:11px!important}}@media (max-width: 768px){.trade-summary-card{padding:0;min-height:160px}.trade-summary-day-header,.trade-summary-week-header,.trade-summary-month-header,.trade-summary-year-header{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 10px 0}.ts-card-content{padding:10px}.ts-metric-item{padding:1px 0}.metric-label,.metric-value{font-size:10px!important}}.dashboard-trade-summary-table{margin-bottom:20px}.table-title{margin:0 0 15px;padding:15px 20px;background:#f8f9fa;border-bottom:1px solid #e9ecef;font-size:1.2rem;font-weight:600;color:#333}.trade-summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:20px;transition:all .3s ease}@media (max-width: 1024px){.trade-summary-grid{grid-template-columns:repeat(3,1fr);gap:12px}.table-title{padding:12px 15px;font-size:1.1rem}}@media (max-width: 768px){.trade-summary-grid{grid-template-columns:repeat(2,1fr);gap:10px}.table-title{padding:10px 12px;font-size:1rem}}@media (max-width: 480px){.trade-summary-grid{grid-template-columns:1fr;gap:10px}}.dashboard-trade-summary{padding:20px;font-family:Arial,sans-serif;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;transition:all .3s ease}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.dashboard-header h2{margin:0;color:#333;font-size:1.5rem}.expand-toggle{background:#f8f9fa;border:1px solid #e9ecef;color:#495057;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.expand-toggle:hover{background:#e9ecef;color:#333}.dashboard-content{margin-top:20px}.current-periods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:20px}.no-data{text-align:center;padding:20px;color:#666;font-size:1.1rem}@media (max-width: 768px){.dashboard-header{flex-direction:column;gap:15px;text-align:center}.dashboard-header h2{font-size:1.3rem}.expand-toggle{width:100%;max-width:200px}}@media (max-width: 480px){.dashboard-header{padding:15px}.dashboard-header h2{font-size:1.2rem}}.home-container{padding:24px;max-width:1400px;margin:0 auto;min-height:calc(100vh - 80px);background:var(--bg-primary)}.home-header{text-align:center;margin-bottom:32px}.home-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-header p{color:var(--text-secondary);font-size:1.1rem;margin:0}.home-content{display:flex;flex-direction:column;gap:32px}.section{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;padding:24px;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.section:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 20px;display:flex;align-items:center;gap:8px}.dummy-badge{background:var(--error-red);color:#fff;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-left:8px}.section h3{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 12px}.week-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.day-card{background:var(--bg-secondary);border:2px solid var(--bg-tertiary);border-radius:8px;padding:16px;text-align:center;transition:all .3s ease}.day-card.open{border-color:var(--accent-green);background:#4caf501a}.day-card.closed{border-color:var(--error-red);background:#f443361a}.day-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.day-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.day-date{font-size:.9rem;color:var(--text-secondary);margin-bottom:8px}.open-badge{background:var(--accent-green);color:#fff;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600}.closed-badge{background:var(--error-red);color:#fff;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;margin-bottom:4px}.closure-info{display:flex;flex-direction:column;gap:4px}.closure-name{font-size:.75rem;color:var(--text-secondary)}.results-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--bg-tertiary)}.results-table{width:100%;border-collapse:collapse;background:var(--bg-primary)}.results-table th{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;padding:12px;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.results-table td{padding:12px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary)}.results-table tr:nth-child(2n){background:var(--bg-secondary)}.results-table tr:hover{background:var(--bg-tertiary)}.results-table .symbol{font-weight:600;color:var(--primary-blue)}.results-table .type{font-weight:500;color:var(--accent-green)}.summary-grid,.commission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-card,.commission-card{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:20px;text-align:center;transition:all .3s ease}.summary-card:hover,.commission-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:var(--primary-blue)}.summary-label,.commission-label{font-size:.9rem;color:var(--text-secondary);margin-bottom:8px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.summary-value,.commission-value{font-size:1.5rem;font-weight:700;color:var(--primary-blue);margin-bottom:4px}.trades-value{font-size:.9rem;color:var(--text-secondary);font-weight:500}.no-data-message{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:1.1rem}.no-data-message p{margin:0}.portfolio-links-container{overflow-x:auto;border-radius:8px;border:1px solid var(--bg-tertiary);margin-bottom:24px;max-height:400px;overflow-y:auto}.portfolio-links-table{width:100%;border-collapse:collapse;background:var(--bg-primary)}.portfolio-links-table th{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;padding:12px;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:var(--z-sticky)}.portfolio-links-table td{padding:12px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary)}.portfolio-links-table tr:nth-child(2n){background:var(--bg-secondary)}.portfolio-links-table tr:hover{background:var(--bg-tertiary)}.portfolio-links-table .symbol{font-weight:600;color:var(--primary-blue)}.portfolio-links-table .price{font-weight:500;color:var(--text-primary)}.portfolio-links-table .profit-loss{font-weight:600}.portfolio-links-table .profit-loss.positive{color:var(--accent-green)}.portfolio-links-table .profit-loss.negative{color:var(--error-red)}.external-link{display:inline-block;padding:6px 12px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;text-decoration:none;border-radius:4px;font-weight:500;font-size:.8rem;text-align:center;transition:all .3s ease;border:none;cursor:pointer}.external-link:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003;filter:brightness(1.1)}.external-link:active{transform:translateY(0)}.market-summary-section{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:20px;transition:all .3s ease}.market-summary-section:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.market-links{display:flex;flex-direction:column;gap:16px}.market-link-buttons{display:flex;flex-wrap:wrap;gap:8px}.market-link-btn{display:inline-block;padding:8px 12px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;text-decoration:none;border-radius:4px;font-weight:500;text-align:center;transition:all .3s ease;border:none;cursor:pointer;font-size:.9rem}.market-link-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003;filter:brightness(1.1)}.market-link-btn:active{transform:translateY(0)}.market-description{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.market-description p{margin:0}@media (max-width: 1200px){.home-container{padding:16px}.portfolio-links-table{font-size:.9rem}.external-link{font-size:.7rem;padding:4px 8px}}@media (max-width: 768px){.home-header h1{font-size:2rem}.week-grid{grid-template-columns:repeat(2,1fr);gap:12px}.day-card:nth-child(5){grid-column:span 2}.summary-grid,.commission-grid{grid-template-columns:repeat(2,1fr)}.portfolio-links-table{font-size:.8rem}.external-link{font-size:.6rem;padding:3px 6px}.market-link-buttons{flex-direction:column}.section{padding:16px}}@media (max-width: 480px){.week-grid{grid-template-columns:1fr}.day-card:nth-child(5){grid-column:span 1}.summary-grid,.commission-grid{grid-template-columns:1fr}.home-header h1{font-size:1.5rem}.section h2{font-size:1.2rem}}.section{animation:fadeInUp .6s ease-out}:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #e9ecef;--text-primary: #212529;--text-secondary: #6c757d;--text-white: #ffffff;--primary-blue: #007bff;--accent-green: #28a745;--error-red: #dc3545}.dashboard-trade-summary-section,.portfolio-summary-section{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;padding:0;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.market-summary-section{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;padding:24px;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.dashboard-trade-summary-section:hover,.portfolio-summary-section:hover,.market-summary-section:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.dashboard-trade-summary-section h2,.portfolio-summary-section h2,.market-summary-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 20px;display:flex;align-items:center;gap:8px}.dashboard-trade-summary-section .dashboard-trade-summary{background:transparent;border-radius:0;box-shadow:none;margin-bottom:0;padding:20px}.dashboard-trade-summary-section .dashboard-trade-summary:hover{transform:none}.dashboard-trade-summary-section .dashboard-header{margin-bottom:15px}.dashboard-trade-summary-section .dashboard-header h2{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.dashboard-trade-summary-section .dashboard-content{padding:0}.trade-table-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.trade-table{width:100%;border-collapse:collapse;border-spacing:0}.trade-table-header{flex-shrink:0;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));border-top:1px solid rgba(255,255,255,.2)}.trade-table-header .trade-table thead th{font-weight:600;background:transparent;color:var(--text-white);padding:16px 12px;text-align:right;border-bottom:none;letter-spacing:.5px;font-size:13px;text-transform:uppercase}.trade-table-header .trade-table thead th:first-child{text-align:left}.trade-table-body{flex:1;overflow-y:auto;background:var(--bg-primary)}.trade-table-body .trade-table tbody td{padding:12px;text-align:right;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-weight:500}.trade-table-body .trade-table tbody td:first-child{text-align:left;font-weight:600;color:var(--text-primary)}.trade-table-body .trade-table tbody tr:nth-child(2n){background-color:var(--bg-secondary)}.trade-table-body .trade-table tbody tr:nth-child(odd){background-color:var(--bg-primary)}.trade-table-body .trade-table tbody tr:hover{background-color:var(--bg-tertiary);transition:background-color .2s ease}.trade-table-footer{flex-shrink:0;background:linear-gradient(135deg,var(--accent-green),var(--primary-blue));border-radius:0 0 8px 8px}.trade-table-footer .trade-table tbody tr.totals-row{background:transparent}.trade-table-footer .trade-table tbody tr.totals-row td{color:var(--text-white);font-weight:600;padding:16px 12px;border-bottom:none;text-align:right}.trade-table-footer .trade-table tbody tr.totals-row td:first-child{text-align:left}.trade-table-footer .trade-table tbody tr.totals-row:hover{background:linear-gradient(135deg,var(--accent-gold),var(--accent-green))}.trade-table:not(.trade-table-container .trade-table){border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.trade-table:not(.trade-table-container .trade-table) thead th{font-weight:600;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);padding:16px 12px;text-align:right;border-bottom:none;letter-spacing:.5px;font-size:13px;text-transform:uppercase;border-radius:8px 8px 0 0}.trade-table:not(.trade-table-container .trade-table) thead th:first-child{text-align:left}.trade-table:not(.trade-table-container .trade-table) tbody td{padding:12px;text-align:right;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-weight:500}.trade-table:not(.trade-table-container .trade-table) tbody td:first-child{text-align:left;font-weight:600;color:var(--text-primary)}.trade-table:not(.trade-table-container .trade-table) tbody tr:nth-child(2n){background-color:var(--bg-secondary)}.trade-table:not(.trade-table-container .trade-table) tbody tr:nth-child(odd){background-color:var(--bg-primary)}.trade-table:not(.trade-table-container .trade-table) tbody tr:hover{background-color:var(--bg-tertiary);transition:background-color .2s ease}.trade-table:not(.trade-table-container .trade-table) tbody tr:last-child{background:linear-gradient(135deg,var(--accent-green),var(--primary-blue));color:var(--text-white);font-weight:600;border-radius:0 0 8px 8px}.trade-table:not(.trade-table-container .trade-table) tbody tr:last-child td{color:var(--text-white);border-bottom:none}.trade-table:not(.trade-table-container .trade-table) tbody tr:last-child:hover{background:linear-gradient(135deg,var(--accent-gold),var(--accent-green))}.no-data{padding:24px;text-align:center;color:var(--text-secondary);font-style:italic;font-size:16px;height:100%;display:flex;align-items:center;justify-content:center}.account-table-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.account-table{width:100%;border-collapse:collapse;border-spacing:0}.account-table-header{flex-shrink:0;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green))}.account-table-header .account-table thead th{font-weight:600;background:transparent;color:var(--text-white);padding:16px 12px;text-align:right;border-bottom:none;letter-spacing:.5px;font-size:13px;text-transform:uppercase}.account-table-header .account-table thead th:first-child{text-align:left}.account-table-body{flex:1;overflow-y:auto;background:var(--bg-primary);min-height:0}.account-table-body .account-table tbody td{padding:12px;text-align:right;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-weight:500}.account-table-body .account-table tbody td:first-child{text-align:left;font-weight:600;color:var(--text-primary)}.account-table-body .account-table tbody tr:nth-child(2n){background-color:var(--bg-secondary)}.account-table-body .account-table tbody tr:nth-child(odd){background-color:var(--bg-primary)}.account-table-body .account-table tbody tr:hover{background-color:var(--bg-tertiary);transition:background-color .2s ease}.account-table-footer{flex-shrink:0;background:linear-gradient(135deg,var(--accent-green),var(--primary-blue));border-radius:0 0 8px 8px;margin:0!important;padding:0!important}.account-table-footer .account-table,.account-table-footer .account-table tbody{background:transparent;margin:0;padding:0}.account-table-footer .account-table tbody tr.account-totals-row{background:transparent;margin:0;padding:0;height:auto}.account-table-footer .account-table tbody tr.account-totals-row td{color:var(--text-white);font-weight:600;padding:16px 12px;border-bottom:none;text-align:right;background:transparent;margin:0;line-height:1.2}.account-table-footer .account-table tbody tr.account-totals-row td:first-child{text-align:left}.account-table-footer .account-table tbody tr.account-totals-row:hover{background:linear-gradient(135deg,var(--accent-gold),var(--accent-green))}.account-table-footer .account-table thead,.account-table-footer .account-table thead tr,.account-table-footer .account-table thead th{display:none}.account-no-data{padding:24px;text-align:center;color:var(--text-secondary);font-style:italic;font-size:16px;height:100%;display:flex;align-items:center;justify-content:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.summary-container{display:flex;flex-direction:column;height:calc(100vh - 125px);width:100%;padding:24px 16px;background:transparent;overflow:hidden;box-sizing:border-box}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;width:100%;height:100%;overflow:hidden;max-width:100%}.summary-section{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;box-shadow:0 4px 16px #00000014;text-align:center;transition:all .3s ease;animation:fadeInUp .6s ease-out;display:flex;flex-direction:column;height:100%;overflow:hidden}.summary-section:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.summary-section h2{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);margin:0;padding:16px;border-radius:12px 12px 0 0;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:14px;flex-shrink:0}.summary-section .content{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:0;height:100%}.summary-container-accounts{display:flex;flex-direction:column;align-items:center;gap:0px;width:100%;padding:24px;overflow-y:auto;background:transparent}.summary-grid-accounts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;width:100%;max-height:calc(100vh - 130px);overflow-y:auto}.summary-grid-accounts .summary-section{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;box-shadow:0 4px 16px #00000014;text-align:center;transition:all .3s ease;animation:fadeInUp .6s ease-out;display:block;height:auto;overflow:visible}.summary-grid-accounts .summary-section:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.summary-grid-accounts .summary-section h2{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);margin:0;padding:16px;border-radius:12px 12px 0 0;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:14px}.summary-grid-accounts .summary-section .content{padding:16px;display:block;overflow:visible}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.accounts-accordion{display:flex;flex-direction:column;gap:8px;height:100%;min-height:100%}.account-accordion-item{border:1px solid var(--bg-tertiary);border-radius:0;background:var(--bg-primary);overflow:hidden;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.account-accordion-item:hover{border-color:var(--bg-tertiary);box-shadow:0 4px 8px #0000001f}.account-accordion-item.expanded{flex:1;min-height:0;display:flex;flex-direction:column}.account-accordion-item.collapsed{flex:none}.account-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;font-weight:600;border-bottom:1px solid rgba(255,255,255,.2)}.account-header:hover{background:linear-gradient(135deg,var(--accent-gold),var(--accent-green));transform:translateY(-1px)}.account-header:focus{outline:2px solid var(--focus-color, #60a5fa);outline-offset:2px}.account-toggle-icon{font-size:14px;transition:transform .2s ease;color:#ffffffe6}.account-accordion-item.expanded .account-toggle-icon{transform:rotate(0)}.account-accordion-item.collapsed .account-toggle-icon{transform:rotate(-90deg)}.account-name{flex:1;font-size:16px;font-weight:600;color:#fff}.account-summary{font-size:14px;color:#fffc;font-weight:500;padding:4px 12px;background:#ffffff26;border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.account-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.account-content .account-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden;margin:0;padding:0}.account-content .account-table-header{flex-shrink:0}.account-content .account-table-body{flex:1;overflow-y:auto;min-height:0}.account-content .account-table-footer{flex-shrink:0}@media (max-width: 768px){.account-header{padding:12px 16px;font-size:14px}.account-name{font-size:14px}.account-summary{font-size:12px;padding:2px 8px}.account-content{height:calc(100vh - 200px)}}@media (prefers-color-scheme: dark){.account-accordion-item{background:var(--bg-primary);border-color:var(--bg-tertiary)}.account-accordion-item:hover{border-color:var(--bg-tertiary);box-shadow:0 4px 8px #00000040}}.view-toggle-container{display:flex;align-items:center;gap:12px;margin:0 16px}.view-toggle-label{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap}.view-toggle{position:relative;display:flex;background:var(--bg-secondary);border-radius:24px;padding:4px;border:1px solid var(--bg-tertiary);box-shadow:0 2px 4px #0000000d;overflow:hidden}.view-toggle-option{position:relative;z-index:var(--z-content);padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border-radius:20px;white-space:nowrap;display:flex;align-items:center;gap:6px}.view-toggle-option:hover{color:var(--text-primary)}.view-toggle-option.active{color:var(--text-white);font-weight:600}.view-toggle-slider{position:absolute;top:4px;left:4px;bottom:4px;width:calc(50% - 4px);background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));border-radius:20px;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #00000026;z-index:var(--z-base)}.view-toggle:hover .view-toggle-slider{box-shadow:0 4px 12px #0003}.view-toggle-option:focus{outline:2px solid var(--primary-blue);outline-offset:2px}@media (max-width: 768px){.view-toggle-container{margin:0 8px;gap:8px}.view-toggle-label{font-size:12px}.view-toggle-option{padding:6px 12px;font-size:12px}}@media (prefers-color-scheme: dark){.view-toggle{background:var(--bg-primary);border-color:var(--bg-tertiary)}.view-toggle-slider{box-shadow:0 2px 6px #0006}.view-toggle:hover .view-toggle-slider{box-shadow:0 4px 12px #00000080}}.summary-page-wrapper{position:relative;height:calc(100vh - 100px);width:100vw;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column}.summary-page-header,.summary-page-title{display:none}.summary-selectors{display:flex;align-items:center;justify-content:flex-start;gap:16px;padding:12px 24px;background:var(--bg-primary);border-bottom:1px solid var(--bg-tertiary);box-shadow:0 2px 8px #00000014;flex-shrink:0;z-index:var(--z-sticky)}.view-selector-section,.account-selector-section{display:flex;align-items:center}.account-selector-section,.view-selector-section{justify-content:flex-start}.account-selector{padding:6px 12px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:150px}.account-selector:hover{border-color:var(--primary-blue);box-shadow:0 2px 4px #2563eb1a}.account-selector:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.summary-page-content{flex:1;overflow:hidden;box-sizing:border-box}.summary-page-content .summary-container{height:100%}.summary-selectors .view-toggle-container{margin:0;gap:6px}.summary-selectors .view-toggle-label{display:none}.summary-selectors .view-toggle{padding:2px;box-shadow:none;border:1px solid var(--bg-tertiary)}.summary-selectors .view-toggle-option{padding:6px 12px;font-size:13px;gap:4px}@media (max-width: 768px){.summary-selectors{flex-direction:column;gap:12px;padding:16px;align-items:flex-start}.view-selector-section,.account-selector-section{width:100%;justify-content:flex-start}.account-selector{min-width:200px}}@media (prefers-color-scheme: dark){.summary-selectors{background:var(--bg-primary);border-color:var(--bg-tertiary);box-shadow:0 2px 8px #0003}.account-selector{background:var(--bg-primary);border-color:var(--bg-tertiary);color:var(--text-primary)}}.portfolio-date-picker{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:8px;border:1px solid #cbd5e1;margin-bottom:1rem}.portfolio-date-picker.loading,.portfolio-date-picker.error{justify-content:center;padding:1rem}.date-picker-label{font-weight:600;color:#374151;font-size:.875rem;white-space:nowrap}.date-picker-select{flex:1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;color:#374151;font-size:.875rem;cursor:pointer;transition:all .2s ease;min-width:200px}.date-picker-select:hover{border-color:#6366f1;box-shadow:0 0 0 1px #6366f1}.date-picker-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.date-picker-info{display:flex;flex-direction:column;align-items:flex-end;font-size:.75rem;color:#6b7280}.date-range{font-weight:500}.loading-text,.error-text{font-size:.875rem;color:#6b7280;font-weight:500}.error-text{color:#dc2626}@media (max-width: 640px){.portfolio-date-picker{flex-direction:column;align-items:stretch;gap:.75rem}.date-picker-label{text-align:center}.date-picker-select{min-width:auto}.date-picker-info{align-items:center}}@media (prefers-color-scheme: dark){.portfolio-date-picker{background:linear-gradient(135deg,#1f2937,#111827);border-color:#374151}.date-picker-label{color:#f3f4f6}.date-picker-select{background-color:#1f2937;border-color:#374151;color:#f3f4f6}.date-picker-select:hover{border-color:#818cf8;box-shadow:0 0 0 1px #818cf8}.date-picker-select:focus{border-color:#818cf8;box-shadow:0 0 0 3px #818cf81a}.date-picker-info,.loading-text{color:#9ca3af}}.data-freshness-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;transition:all .2s ease}.data-freshness-indicator.current{background-color:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.data-freshness-indicator.recent{background-color:#fef3c7;color:#d97706;border:1px solid #fed7aa}.data-freshness-indicator.old{background-color:#fee2e2;color:#dc2626;border:1px solid #fecaca}.data-freshness-indicator.loading{background-color:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.status-icon{font-size:1rem;line-height:1}.status-text{white-space:nowrap}.data-freshness-indicator:not(:has(.status-text)){padding:.375rem;min-width:2rem;justify-content:center}.data-freshness-indicator:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}@media (prefers-color-scheme: dark){.data-freshness-indicator.current{background-color:#064e3b;color:#34d399;border-color:#065f46}.data-freshness-indicator.recent{background-color:#451a03;color:#fbbf24;border-color:#78350f}.data-freshness-indicator.old{background-color:#450a0a;color:#f87171;border-color:#7f1d1d}.data-freshness-indicator.loading{background-color:#1e293b;color:#94a3b8;border-color:#334155}}@media (max-width: 640px){.data-freshness-indicator{font-size:.8rem}.status-text{display:none}.data-freshness-indicator{padding:.375rem;min-width:2rem;justify-content:center}}.portfolio-container{padding:20px;text-align:center}.portfolio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:1rem}.portfolio-header h2{margin:0;color:#1a2b4c}.no-data-message{text-align:center;padding:20px;background-color:#f8f9fa;border-radius:8px;margin:20px auto;max-width:600px}.portfolio-summary{background-color:#f8f9fa;border-radius:8px;padding:20px;margin:20px 0;box-shadow:0 2px 4px #0000001a}.portfolio-summary h3{color:#1a2b4c;margin-bottom:15px;font-size:1.2em}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;text-align:left}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background-color:#fff;border-radius:4px;border-left:4px solid #1a2b4c}.summary-label{font-weight:500;color:#495057}.summary-value{font-weight:700;color:#1a2b4c}.portfolio-filters{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;padding:15px;margin:20px 0;text-align:left}.filter-group select:focus{outline:none;border-color:#1a2b4c;box-shadow:0 0 0 2px #1a2b4c1a}.portfolio-table{width:100%;border-collapse:collapse;margin:20px 0;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.portfolio-table th,.portfolio-table td{padding:12px;text-align:right;border-bottom:1px solid #dee2e6}.portfolio-table th{background-color:#1a2b4c;color:#fff;font-weight:600;text-transform:uppercase;font-size:.9em;letter-spacing:.5px}.portfolio-table tbody tr:hover{background-color:#f8f9fa}.portfolio-table tbody tr:last-child td{border-bottom:none}.portfolio-pagination{display:flex;justify-content:space-between;align-items:center;margin:20px 0;padding:15px;background-color:#f8f9fa;border-radius:8px}.pagination-info{color:#495057;font-size:14px}.pagination-controls{display:flex;align-items:center;gap:15px}.pagination-btn{padding:8px 16px;border:1px solid #ced4da;border-radius:4px;background-color:#fff;color:#495057;cursor:pointer;transition:all .2s ease;font-size:14px}.pagination-btn:hover:not(:disabled){background-color:#1a2b4c;color:#fff;border-color:#1a2b4c}.pagination-btn:disabled{background-color:#e9ecef;color:#6c757d;cursor:not-allowed;border-color:#dee2e6}.page-indicator{font-weight:500;color:#495057;padding:8px 12px;background-color:#fff;border:1px solid #ced4da;border-radius:4px;min-width:60px;text-align:center}@media (max-width: 768px){.portfolio-container{padding:10px}.summary-grid{grid-template-columns:1fr}.portfolio-pagination{flex-direction:column;gap:10px;text-align:center}.filter-group{flex-direction:column;align-items:stretch}.filter-group label{min-width:auto;margin-bottom:5px}.portfolio-table{font-size:12px}.portfolio-table th,.portfolio-table td{padding:6px}}.positive{color:#28a745;font-weight:600}.negative{color:#dc3545;font-weight:600}.analytics-container{padding:20px;max-width:1400px;margin:0 auto}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:1rem}.analytics-header h2{margin:0;color:#1a2b4c;font-size:2em}.analytics-container h2{color:#1a2b4c;text-align:center;margin-bottom:30px;font-size:2em}.analytics-filters{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;padding:15px;margin:20px 0}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-weight:500;color:#495057;min-width:120px}.filter-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;background-color:#fff;color:#495057;font-size:14px;min-width:200px}.analytics-summary{margin:30px 0}.analytics-summary h3{color:#1a2b4c;margin-bottom:20px;font-size:1.4em}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.summary-card{background-color:#fff;border:1px solid #dee2e6;border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.card-header{font-size:14px;color:#6c757d;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.card-value{font-size:24px;font-weight:700;color:#1a2b4c;margin-bottom:5px}.card-subtitle{font-size:14px;color:#6c757d}.allocation-section{margin:40px 0;background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a}.allocation-section h3{color:#1a2b4c;margin-bottom:20px;font-size:1.4em}.allocation-bar{height:40px;border-radius:20px;overflow:hidden;display:flex;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.allocation-segment:hover{opacity:.8}.allocation-segment.stocks{background-color:#007bff}.allocation-segment.options{background-color:#28a745}.allocation-segment.cash{background-color:#ffc107}.allocation-segment.other{background-color:#6c757d}.allocation-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:20px}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.stocks{background-color:#007bff}.legend-color.options{background-color:#28a745}.legend-color.cash{background-color:#ffc107}.legend-color.other{background-color:#6c757d}.analytics-sections{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:40px 0}.top-holdings{background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a}.top-holdings h3{color:#1a2b4c;margin-bottom:20px;font-size:1.3em}.holdings-table{display:grid;gap:2px}.table-header{display:grid;grid-template-columns:1fr 2fr 1fr 1fr 1fr;gap:10px;padding:12px;background-color:#1a2b4c;color:#fff;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-radius:6px 6px 0 0}.table-row{display:grid;grid-template-columns:1fr 2fr 1fr 1fr 1fr;gap:10px;padding:12px;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;transition:background-color .2s ease}.table-row:hover{background-color:#e9ecef}.table-row:last-child{border-radius:0 0 6px 6px}.holding-symbol{font-weight:700;color:#1a2b4c}.holding-description{color:#495057;font-size:13px}.holding-value,.holding-percentage{font-weight:600;color:#495057;text-align:right}.holding-type{text-align:center;font-size:12px;background-color:#e9ecef;padding:2px 6px;border-radius:4px;color:#495057}.top-sectors{background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a}.top-sectors h3{color:#1a2b4c;margin-bottom:20px;font-size:1.3em}.sectors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.sector-card{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px;text-align:center;transition:all .2s ease}.sector-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.sector-name{font-weight:700;color:#1a2b4c;font-size:14px;margin-bottom:8px}.sector-value{font-weight:600;color:#495057;font-size:16px;margin-bottom:4px}.sector-percentage{color:#28a745;font-weight:600;font-size:14px;margin-bottom:4px}.sector-positions{color:#6c757d;font-size:12px}.breakdowns-section{margin:40px 0}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.breakdown-card{background-color:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a}.breakdown-card h4{color:#1a2b4c;margin-bottom:20px;font-size:1.2em;padding-bottom:10px;border-bottom:2px solid #1a2b4c}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background-color:#f8f9fa;border-radius:6px;transition:background-color .2s ease}.breakdown-item:hover{background-color:#e9ecef}.breakdown-label{font-weight:500;color:#1a2b4c;flex:1}.breakdown-values{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.breakdown-amount{font-weight:700;color:#495057}.breakdown-percentage{font-size:12px;color:#6c757d}@media (max-width: 1200px){.analytics-sections{grid-template-columns:1fr}}@media (max-width: 768px){.analytics-container{padding:15px}.summary-cards{grid-template-columns:1fr}.allocation-legend{flex-direction:column;align-items:center}.breakdown-grid{grid-template-columns:1fr}.sectors-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.table-header,.table-row{grid-template-columns:1fr;gap:5px}.table-header div,.table-row div{padding:4px 0}.filter-group{flex-direction:column;align-items:stretch}.filter-group label{min-width:auto;margin-bottom:5px}}@media (max-width: 480px){.analytics-container h2{font-size:1.5em}.card-value{font-size:18px}.allocation-bar{height:30px}.sector-card{padding:10px}.breakdown-card{padding:15px}}.no-data-message{text-align:center;padding:40px 20px;background-color:#f8f9fa;border-radius:12px;margin:20px auto;max-width:600px}.no-data-message h2{color:#1a2b4c;margin-bottom:10px}.no-data-message p{color:#6c757d;margin:0}.total-portfolio-wrapper{padding:20px;max-width:1400px;margin:0 auto;background-color:#f8f9fa;min-height:100vh}.total-portfolio-container{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.total-portfolio-header{display:flex;justify-content:space-between;align-items:flex-start;padding:30px 20px 10px;gap:1rem}.total-portfolio-header div:first-child{flex:1}.total-portfolio-container h2{color:#1a2b4c;text-align:center;margin:0;padding:0;font-size:2.2em;font-weight:700}.subtitle{text-align:center;color:#6c757d;margin:0;font-size:1.1em;font-style:italic}.total-summary{padding:30px;background:linear-gradient(135deg,#1a2b4c,#2c5282);color:#fff;margin-bottom:0}.total-summary h3{color:#fff;margin-bottom:25px;font-size:1.5em;text-align:center;font-weight:600}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.summary-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:25px;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.summary-card:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.summary-card.total-value{border-left:4px solid #28a745}.summary-card.total-gain{border-left:4px solid #ffc107}.summary-card.symbols{border-left:4px solid #007bff}.summary-card.accounts{border-left:4px solid #dc3545}.card-header{font-size:14px;color:#fffc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.card-value{font-size:28px;font-weight:700;color:#fff;margin-bottom:5px}.total-allocation{padding:40px 30px;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.total-allocation h3{color:#1a2b4c;margin-bottom:25px;font-size:1.4em;text-align:center;font-weight:600}.allocation-chart{max-width:800px;margin:0 auto}.allocation-bar{height:50px;border-radius:25px;overflow:hidden;display:flex;margin-bottom:25px;box-shadow:0 4px 8px #0000001a}.allocation-segment{height:100%;transition:all .3s ease;cursor:pointer}.allocation-segment:hover{opacity:.8;transform:scaleY(1.1)}.allocation-segment.stocks{background:linear-gradient(135deg,#007bff,#0056b3)}.allocation-segment.options{background:linear-gradient(135deg,#28a745,#1e7e34)}.allocation-segment.cash{background:linear-gradient(135deg,#ffc107,#e0a800)}.allocation-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:25px}.legend-item{display:flex;align-items:center;gap:10px;font-size:15px;color:#495057;font-weight:500}.legend-color{width:20px;height:20px;border-radius:6px;box-shadow:0 2px 4px #0000001a}.legend-color.stocks{background:linear-gradient(135deg,#007bff,#0056b3)}.legend-color.options{background:linear-gradient(135deg,#28a745,#1e7e34)}.legend-color.cash{background:linear-gradient(135deg,#ffc107,#e0a800)}.total-top-holdings{padding:40px 30px;background-color:#fff;border-bottom:1px solid #dee2e6}.total-top-holdings h3{color:#1a2b4c;margin-bottom:25px;font-size:1.4em;text-align:center;font-weight:600}.holdings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.holding-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:10px;padding:20px;text-align:center;transition:all .3s ease;position:relative;overflow:hidden}.holding-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#007bff,#28a745)}.holding-card:hover{transform:translateY(-3px);box-shadow:0 8px 16px #00000026;border-color:#007bff}.holding-symbol{font-weight:700;color:#1a2b4c;font-size:18px;margin-bottom:8px}.holding-description{color:#6c757d;font-size:13px;margin-bottom:12px;min-height:32px;display:flex;align-items:center;justify-content:center}.holding-value{font-weight:700;color:#495057;font-size:16px;margin-bottom:5px}.holding-percentage{color:#28a745;font-weight:600;font-size:14px;margin-bottom:8px}.holding-type{font-size:12px;background:#e9ecef;color:#495057;padding:4px 8px;border-radius:4px;display:inline-block}.position-sections{padding:40px 30px}.position-section{margin-bottom:50px}.position-section:last-child{margin-bottom:0}.position-section h3{color:#1a2b4c;margin-bottom:20px;font-size:1.3em;font-weight:600;padding-bottom:10px;border-bottom:2px solid #dee2e6}.stocks-section h3{border-bottom-color:#007bff}.options-section h3{border-bottom-color:#28a745}.cash-section h3{border-bottom-color:#ffc107}.positions-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.table-header{display:grid;grid-template-columns:1fr 2fr 1fr 1fr 1fr .8fr 1fr;gap:15px;padding:15px;background:#1a2b4c;color:#fff;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.table-row{display:grid;grid-template-columns:1fr 2fr 1fr 1fr 1fr .8fr 1fr;gap:15px;padding:15px;background:#f8f9fa;border-bottom:1px solid #dee2e6;transition:background-color .2s ease;align-items:center}.table-row:hover{background:#e9ecef}.table-row:last-child{border-bottom:none}.position-symbol{font-weight:700;color:#1a2b4c;font-size:15px}.position-description{color:#495057;font-size:14px}.position-quantity,.position-value,.position-accounts,.position-percentage{font-weight:600;color:#495057;text-align:right;font-size:14px}.position-gain{font-weight:600;text-align:right;font-size:14px}@media (max-width: 1200px){.holdings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width: 768px){.total-portfolio-wrapper{padding:10px}.total-portfolio-container h2{font-size:1.8em;padding:20px 15px 5px}.total-summary{padding:20px 15px}.summary-cards{grid-template-columns:1fr;gap:15px}.total-allocation,.total-top-holdings,.position-sections{padding:20px 15px}.allocation-legend{flex-direction:column;align-items:center;gap:15px}.holdings-grid{grid-template-columns:1fr}.table-header,.table-row{grid-template-columns:1fr;gap:8px;text-align:left}.table-header div,.table-row div{padding:5px 0}.position-quantity,.position-value,.position-gain,.position-accounts,.position-percentage{text-align:left}}@media (max-width: 480px){.total-portfolio-container h2{font-size:1.5em}.card-value{font-size:22px}.allocation-bar{height:40px}.holding-card{padding:15px}.position-section{margin-bottom:30px}}.positive{color:#28a745!important}.negative{color:#dc3545!important}.no-data-message{text-align:center;padding:60px 20px;background-color:#f8f9fa;border-radius:12px;margin:20px}.no-data-message h2{color:#1a2b4c;margin-bottom:15px;font-size:1.8em}.no-data-message p{color:#6c757d;margin:0;font-size:1.1em}.nav{display:flex;align-items:center;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-blue) 100%);padding:10px 16px;gap:10px;justify-content:flex-start;box-shadow:0 2px 12px #00000026;box-sizing:border-box;position:fixed;top:var(--hello-height);left:0;right:0;z-index:var(--z-navbar);width:100%;height:var(--navbar-height);min-height:var(--navbar-height);max-height:var(--navbar-height);contain:layout style}.nav-right{margin-left:auto;display:flex;gap:12px;align-items:center}.dropdown{position:relative}.dropdown-button{background:var(--accent-green);color:var(--text-white);border:none;padding:12px 18px;font-size:16px;cursor:pointer;border-radius:8px;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #10b9814d;white-space:nowrap}.dropdown-button:hover{background:var(--accent-gold);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.dropdown-list{position:absolute;top:100%;left:0;background:var(--bg-primary);border:1px solid var(--bg-tertiary);list-style:none;padding:8px 0;margin:0;width:180px;box-shadow:0 8px 24px #00000026;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:var(--z-modal)}.dropdown-list li{padding:12px 16px;text-align:left;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.dropdown-list li a{text-decoration:none;color:var(--text-primary);font-weight:500;display:block}.dropdown-list li:hover{background:var(--bg-secondary)}.dropdown-list li.active{background-color:var(--accent-green);color:var(--text-white)}.dropdown-list li.active a{color:var(--text-white)}.nav-right .dropdown-list{right:0;left:auto}@media (max-width: 768px){.nav{padding:8px 12px;gap:8px}.dropdown-button{padding:10px 14px;font-size:14px}.nav-right{gap:8px}}@media (max-width: 480px){.nav{padding:8px 10px;gap:6px}.dropdown-button{padding:8px 12px;font-size:13px}.nav-right{gap:6px}}.queued-file-item{background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;cursor:grab}.queued-file-item:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-1px)}.queued-file-item:active{cursor:grabbing}.queued-file-item.uploading{border-left:4px solid #f59e0b}.queued-file-item.processing{border-left:4px solid #8b5cf6}.queued-file-item.completed{border-left:4px solid #10b981;opacity:.8}.queued-file-item.failed{border-left:4px solid #ef4444}.queued-file-item.paused{border-left:4px solid #f97316}.file-item-header{display:flex;align-items:center;gap:1rem;padding:1rem}.drag-handle{color:#9ca3af;cursor:grab;font-size:1.2rem;line-height:1;min-width:20px;text-align:center}.file-details{flex:1;display:flex;justify-content:space-between;align-items:center;gap:1rem}.file-main-info{display:flex;align-items:center;gap:.75rem;flex:1}.file-icon{font-size:1.5rem}.file-text{flex:1;min-width:0}.file-name{margin:0 0 .25rem;font-size:1rem;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{display:flex;gap:1rem;font-size:.875rem;color:#6b7280}.file-meta span{white-space:nowrap}.file-status{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.status-indicator{display:flex;align-items:center;gap:.5rem}.status-text{font-size:.875rem;font-weight:500}.duration{font-size:.75rem;color:#9ca3af}.file-actions{display:flex;gap:.5rem;align-items:center}.file-actions button{background:none;border:1px solid #d1d5db;border-radius:4px;padding:.375rem;cursor:pointer;transition:all .2s;font-size:.875rem;min-width:32px;display:flex;align-items:center;justify-content:center}.file-actions button:hover{background:#f3f4f6}.file-actions button:disabled{opacity:.5;cursor:not-allowed}.pause-button:hover{background:#fef3c7;border-color:#f59e0b}.resume-button:hover{background:#dcfce7;border-color:#10b981}.retry-button:hover{background:#dbeafe;border-color:#3b82f6}.remove-button:hover{background:#fee2e2;border-color:#ef4444}.view-results-button:hover{background:#dbeafe;border-color:#3b82f6}.confirm-button:hover{background:#dcfce7;border-color:#10b981}.cancel-button:hover{background:#fee2e2;border-color:#ef4444}.progress-section{padding:0 1rem 1rem}.progress-container{display:flex;align-items:center;gap:.75rem}.progress-bar{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease;border-radius:3px}.progress-text{font-size:.75rem;color:#6b7280;min-width:40px;text-align:right}.error-details{margin:.5rem 1rem 1rem;padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;display:flex;align-items:flex-start;gap:.5rem}.error-icon{color:#ef4444;font-size:1rem;flex-shrink:0}.error-message{color:#dc2626;font-size:.875rem;line-height:1.4;flex:1}.operation-info{margin:.5rem 1rem 1rem;padding:.5rem .75rem;background:#f3f4f6;border-radius:4px;font-size:.75rem;color:#6b7280;display:flex;gap:.5rem}.operation-label{font-weight:500}.operation-id{font-family:monospace}.file-preview{margin:.5rem 1rem 1rem;padding:1rem;background:#f0f9ff;border:2px solid #0ea5e9;border-radius:8px}.preview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-weight:600;color:#0c4a6e;font-size:.875rem}.preview-icon{font-size:1rem}.file-badges{display:flex;gap:.5rem;margin-bottom:.75rem}.file-type-badge,.brokerage-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;font-weight:500}.file-type-badge.transaction{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.file-type-badge.portfolio{background:#dcfce7;color:#166534;border:1px solid #86efac}.brokerage-badge.fidelity{background:#e0e7ff;color:#3730a3;border:1px solid #a5b4fc}.brokerage-badge.unknown{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.preview-summary{display:grid;grid-template-columns:1fr;gap:.5rem;margin-bottom:.75rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem;border-bottom:1px solid #e0f2fe}.summary-item:last-child{border-bottom:none}.summary-label{font-weight:500;color:#075985}.summary-value{font-weight:600;color:#0c4a6e}.summary-value.new-count{color:#059669}.summary-value.duplicate-count{color:#d97706}.preview-warnings{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:.75rem}.warnings-header{font-weight:600;color:#92400e;font-size:.875rem;margin-bottom:.5rem}.warnings-list{margin:0;padding-left:1rem;list-style-type:disc}.warning-item{color:#92400e;font-size:.875rem;margin-bottom:.25rem}.warning-item:last-child{margin-bottom:0}.upload-results{margin:.5rem 1rem 1rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.results-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-weight:600;color:#374151;font-size:.875rem}.results-icon{font-size:1rem}.results-summary{display:flex;flex-direction:column;gap:.5rem}.result-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem}.result-item:not(:last-child){border-bottom:1px solid #e5e7eb}.result-label{font-weight:500;color:#6b7280}.result-value{font-weight:600;color:#374151}.result-value.success{color:#10b981}.result-value.error{color:#ef4444}@media (max-width: 768px){.file-item-header,.file-details{flex-direction:column;align-items:stretch;gap:.75rem}.file-main-info{justify-content:flex-start}.file-status{align-items:flex-start;flex-direction:row;justify-content:space-between}.file-actions{justify-content:center}.file-meta{flex-wrap:wrap;gap:.5rem}.result-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.upload-stats{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.upload-stats.processing{border-left:4px solid #3b82f6}.stats-header{margin-bottom:1.5rem}.stats-header h3{margin:0;color:#1f2937;display:flex;align-items:center;gap:1rem}.processing-indicator{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#3b82f6;font-weight:400}.processing-dot{width:8px;height:8px;background:#3b82f6;border-radius:50%;animation:pulse 2s infinite}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;transition:all .2s}.stat-item:hover{background:#f3f4f6;transform:translateY(-1px)}.stat-icon{font-size:1.5rem;opacity:.8}.stat-content{flex:1}.stat-value{font-size:1.25rem;font-weight:600;line-height:1;margin-bottom:.25rem}.stat-label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.overall-progress{margin-bottom:1.5rem}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.progress-header span:first-child{font-weight:500;color:#374151}.progress-header span:last-child{font-size:.875rem;color:#6b7280}.progress-bar-container{margin-bottom:.75rem}.progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;display:flex}.progress-segment{height:100%;transition:width .3s ease}.progress-segment.completed{background:linear-gradient(90deg,#10b981,#22c55e)}.progress-segment.failed{background:linear-gradient(90deg,#ef4444,#f87171)}.progress-segment.pending{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.progress-legend{display:flex;gap:1rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.completed{background:#10b981}.legend-color.failed{background:#ef4444}.legend-color.pending{background:#f59e0b}.stats-details{border-top:1px solid #e5e7eb;padding-top:1rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.detail-row:not(:last-child){border-bottom:1px solid #f3f4f6}.detail-label{font-size:.875rem;color:#6b7280;font-weight:500}.detail-value{font-size:.875rem;font-weight:600;color:#374151}.empty-stats{text-align:center;padding:2rem;color:#6b7280}.empty-icon{font-size:3rem;opacity:.5;margin-bottom:1rem}.empty-stats p{margin:0;font-size:.875rem}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-item{padding:.5rem}.stat-icon{font-size:1.25rem}.stat-value{font-size:1.125rem}.progress-header{flex-direction:column;align-items:stretch;gap:.5rem}.progress-legend{gap:.75rem}.legend-item{font-size:.75rem}}.upload-history-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;width:1000px;display:flex;flex-direction:column}.modal-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.history-summary{display:flex;gap:2rem;padding:1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1.25rem;font-weight:600;color:#1f2937}.history-filters{display:flex;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;align-items:center;flex-wrap:wrap}.search-container{position:relative;flex:1;min-width:250px}.search-input{width:100%;padding:.5rem .75rem .5rem 2.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#6b7280;font-size:.875rem}.status-filter{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.status-filter:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.history-table-container{flex:1;overflow:auto;padding:0 1.5rem}.history-table{width:100%;border-collapse:collapse;font-size:.875rem}.history-table th{position:sticky;top:0;background:#fff;border-bottom:2px solid #e5e7eb;padding:.75rem;text-align:left;font-weight:600;color:#374151;white-space:nowrap}.history-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.history-table th.sortable:hover{background:#f9fafb}.history-table th.sortable.active{background:#eff6ff;color:#3b82f6}.history-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.history-row{transition:background .2s}.history-row:hover{background:#f9fafb}.status-cell{display:flex;align-items:center;gap:.5rem}.status-icon{font-size:1rem}.status-text{font-weight:500;text-transform:capitalize}.file-cell{display:flex;align-items:center;gap:.5rem;max-width:250px}.file-icon{font-size:1rem;flex-shrink:0}.file-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.details-cell{display:flex;align-items:center;gap:.75rem}.operation-id{font-family:monospace;font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px}.error-indicator{color:#ef4444;cursor:help}.no-results{text-align:center;color:#6b7280;font-style:italic;padding:2rem}.results-count{padding:1rem 1.5rem;color:#6b7280;font-size:.875rem;text-align:center;border-top:1px solid #e5e7eb}.empty-history{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6b7280;text-align:center;min-height:300px}.empty-history h3{margin:0 0 .5rem;color:#374151}.empty-history p{margin:0;font-size:.875rem}@media (max-width: 768px){.modal-content{width:95vw;height:90vh}.history-summary{grid-template-columns:repeat(2,1fr);gap:1rem}.history-filters{flex-direction:column;align-items:stretch}.search-container{min-width:auto}.history-table{font-size:.75rem}.history-table th,.history-table td{padding:.5rem .25rem}.file-cell{max-width:150px}.details-cell{flex-direction:column;align-items:flex-start;gap:.25rem}}.upload-settings-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;width:600px;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;color:#1f2937;font-size:1.5rem}.close-button{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:4px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#374151}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.settings-section{margin-bottom:2rem}.settings-section:last-child{margin-bottom:0}.section-title{margin:0 0 1rem;color:#1f2937;font-size:1.125rem;font-weight:600;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.section-content{display:flex;flex-direction:column;gap:1rem}.setting-item{display:flex;flex-direction:column;gap:.5rem}.setting-label{font-size:.875rem;font-weight:500;color:#374151;display:flex;flex-direction:column;gap:.25rem}.setting-description{font-size:.75rem;font-weight:400;color:#6b7280;line-height:1.4}.number-input{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s;width:120px}.number-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}.checkbox-input{margin:0;width:1rem;height:1rem;accent-color:#3b82f6;cursor:pointer;flex-shrink:0;margin-top:.125rem}.checkbox-text{flex:1;font-size:.875rem;color:#374151;display:flex;flex-direction:column;gap:.25rem}.advanced-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.info-item:not(:last-child){border-bottom:1px solid #e5e7eb}.info-label{font-size:.875rem;color:#6b7280;font-weight:500}.info-value{font-size:.875rem;color:#374151;font-weight:500}.modal-footer{border-top:1px solid #e5e7eb;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.footer-buttons{display:flex;justify-content:flex-end;gap:.75rem}.footer-buttons button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#fff;color:#374151;border:1px solid #d1d5db}.cancel-button:hover{background:#f9fafb}.reset-button{background:#f59e0b;color:#fff}.reset-button:hover{background:#d97706}.save-button{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.save-button.has-changes{background:#3b82f6;color:#fff;cursor:pointer}.save-button.has-changes:hover{background:#2563eb}.save-button:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.changes-indicator{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#f59e0b;background:#fef3c7;padding:.75rem;border-radius:6px;border:1px solid #fcd34d}.changes-icon{font-size:1rem}@media (max-width: 768px){.modal-content{width:95vw;height:90vh}.modal-header,.modal-body,.modal-footer{padding:1rem}.footer-buttons{flex-direction:column-reverse}.footer-buttons button{width:100%;padding:.75rem}.info-item{flex-direction:column;align-items:flex-start;gap:.25rem}.number-input{width:100%}}.upload-queue-container{max-width:1200px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.upload-header{text-align:center;margin-bottom:2rem}.upload-header h1{color:#1f2937;margin-bottom:.5rem}.upload-header p{color:#6b7280;font-size:1.1rem}.file-drop-zone{border:2px dashed #d1d5db;border-radius:12px;padding:3rem 2rem;text-align:center;background:#f9fafb;transition:all .3s ease;margin-bottom:2rem;cursor:pointer}.file-drop-zone:hover{border-color:#3b82f6;background:#eff6ff}.file-drop-zone.drag-active{border-color:#10b981;background:#ecfdf5;transform:scale(1.02)}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.drop-zone-icon{font-size:3rem;opacity:.7}.drop-zone-content h3{margin:0;color:#374151;font-size:1.2rem}.drop-zone-content p{margin:0;color:#6b7280;font-size:1rem}.browse-button{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.browse-button:hover{background:#2563eb}.file-info{font-size:.9rem;color:#6b7280;line-height:1.5}.queue-controls{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.control-group h3{margin:0 0 1rem;color:#1f2937}.queue-actions{display:flex;gap:.75rem;flex-wrap:wrap}.queue-actions button{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.start-button{background:#10b981;color:#fff}.start-button:hover{background:#059669}.stop-button{background:#f59e0b;color:#fff}.stop-button:hover{background:#d97706}.clear-button,.clear-all-button{background:#ef4444;color:#fff}.clear-button:hover,.clear-all-button:hover{background:#dc2626}.queue-actions button:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.view-toggles{display:flex;gap:.5rem}.toggle-button{padding:.5rem 1rem;border:1px solid #d1d5db;background:#fff;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s}.toggle-button:hover{background:#f3f4f6}.toggle-button.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.queue-list{margin-bottom:2rem}.empty-queue{text-align:center;padding:4rem 2rem;color:#6b7280;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.empty-icon{font-size:4rem;opacity:.5;margin-bottom:1rem}.empty-queue h4{margin:0 0 .5rem;color:#374151}.empty-queue p{margin:0;font-size:.9rem}.file-list{display:flex;flex-direction:column;gap:1rem}.processing-indicator{position:fixed;bottom:2rem;right:2rem;background:#3b82f6;color:#fff;padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px #3b82f64d;display:flex;align-items:center;gap:.75rem;font-size:.9rem;z-index:1000}.processing-dot{width:8px;height:8px;background:#10b981;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@media (max-width: 768px){.upload-queue-container{padding:1rem}.queue-controls{flex-direction:column;gap:1rem}.queue-actions,.view-toggles{justify-content:center}.processing-indicator{bottom:1rem;right:1rem;left:1rem;justify-content:center}}.admin-dashboard{padding:24px;max-width:1200px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.admin-header{text-align:center;margin-bottom:32px}.admin-header h1{color:var(--text-primary);font-size:32px;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-header p{color:var(--text-secondary);font-size:16px;margin:0}.warning-banner{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #d97706;border-radius:12px;margin-bottom:24px;padding:16px;box-shadow:0 4px 12px #f59e0b33}.warning-content{display:flex;align-items:center;gap:12px;color:#fff}.warning-icon{font-size:20px}.warning-text{flex:1;font-size:14px;font-weight:500}.warning-retry{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:8px 16px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.warning-retry:hover{background:#ffffff4d;transform:translateY(-1px)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:16px;padding:24px;box-shadow:0 4px 16px #00000014;transition:all .3s ease;display:flex;align-items:center;gap:16px}.stat-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.stat-icon{font-size:36px;padding:12px;border-radius:12px;background:var(--bg-secondary)}.stat-content h3{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.stat-number{color:var(--text-primary);font-size:32px;font-weight:700;margin:0;line-height:1}.total-users .stat-icon{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green))}.active-users .stat-icon{background:linear-gradient(135deg,#22c55e,#16a34a)}.inactive-users .stat-icon{background:linear-gradient(135deg,#ef4444,#dc2626)}.role-breakdown-card{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:16px;padding:24px;box-shadow:0 4px 16px #00000014;grid-column:1 / -1}.role-breakdown-card h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px}.role-list{display:flex;flex-direction:column;gap:12px}.role-item{padding:16px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--bg-tertiary)}.role-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.role-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-total{font-size:18px;font-weight:700;color:var(--text-primary)}.role-details{display:flex;gap:16px;font-size:14px}.role-details .active{color:#22c55e;font-weight:500}.role-details .inactive{color:#ef4444;font-weight:500}.no-roles{text-align:center;padding:24px;color:var(--text-secondary)}.no-roles p{margin:0;font-style:italic}.quick-actions{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:16px;padding:24px;box-shadow:0 4px 16px #00000014;margin-bottom:24px}.quick-actions h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px}.action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.action-button{padding:12px 20px;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;justify-content:center}.action-button.primary{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white)}.action-button.primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1e3a8a4d}.action-button.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--bg-tertiary)}.dashboard-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid var(--bg-tertiary)}.footer-left{display:flex;align-items:center;gap:12px;padding:6px 10px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-secondary);height:36px}.footer-right{display:flex;align-items:center;padding:6px 10px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-secondary);height:36px}.refresh-button{padding:4px 8px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--bg-tertiary);border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.refresh-button:hover{background:var(--bg-tertiary)}.last-updated{color:var(--text-secondary);font-size:12px}.no-data{text-align:center;padding:48px 24px}.no-data h2{color:var(--text-primary);margin:0 0 16px}.no-data p{color:var(--text-secondary);margin:0 0 24px}.retry-button{padding:12px 24px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1e3a8a4d}@media (max-width: 768px){.admin-dashboard{padding:16px}.admin-header h1{font-size:24px}.stats-grid{grid-template-columns:1fr;gap:16px}.stat-card{padding:16px}.stat-icon{font-size:28px;padding:8px}.stat-number{font-size:24px}.action-buttons{grid-template-columns:1fr}.dashboard-footer{flex-direction:column;gap:12px;text-align:center}}@media (prefers-color-scheme: dark){.stat-card,.role-breakdown-card,.quick-actions{background:var(--bg-dark);border-color:var(--bg-tertiary);box-shadow:0 4px 16px #0003}.role-item{background:var(--bg-primary)}}.admin-users{padding:24px;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.users-title{color:var(--text-primary);font-size:28px;font-weight:700;margin:0;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.users-subtitle{color:var(--text-secondary);font-size:14px;margin:4px 0 0}.create-user-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;border:none;border-radius:12px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.create-user-button:hover{box-shadow:0 8px 24px #3b82f64d;transform:translateY(-2px)}.users-controls{display:grid;grid-template-columns:1fr auto auto;gap:16px;margin-bottom:24px;align-items:center}.search-box{position:relative;min-width:0;max-width:100%;overflow:hidden}.search-input{width:100%;padding:12px 16px 12px 44px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;transition:all .2s ease;box-sizing:border-box;min-width:0}.search-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:16px}.role-filter{padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.role-filter:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.sort-select{padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.sort-select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.users-table-container{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #00000014;margin-bottom:24px}.users-table{width:100%;border-collapse:collapse}.users-table th{background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:16px;text-align:left;border-bottom:1px solid var(--bg-tertiary)}.users-table td{padding:16px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-size:14px}.users-table tbody tr:hover{background:var(--bg-secondary)}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:12px}.user-info{display:flex;align-items:center;gap:12px}.user-details h4{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--text-primary)}.user-details p{margin:0;font-size:12px;color:var(--text-secondary)}.role-badge{padding:4px 8px;border-radius:8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px;width:fit-content}.status-badge.active{background:#22c55e1a;color:#16a34a}.status-badge.inactive{background:#ef44441a;color:#dc2626}.last-login{color:var(--text-secondary);font-size:12px}.last-login.recent{color:var(--accent-green)}.user-actions{display:flex;gap:8px;align-items:center}.action-button{padding:6px 12px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.action-button.view{background:#3b82f61a;color:var(--primary-blue)}.action-button.view:hover{background:#3b82f633;transform:translateY(-1px)}.action-button.enable{background:#22c55e1a;color:#16a34a}.action-button.enable:hover{background:#22c55e33;transform:translateY(-1px)}.action-button.disable{background:#ef44441a;color:#dc2626}.action-button.disable:hover{background:#ef444433;transform:translateY(-1px)}.pagination{display:flex;justify-content:space-between;align-items:center;padding:16px 0;flex-wrap:wrap;gap:16px}.pagination-info{color:var(--text-secondary);font-size:14px}.pagination-controls{display:flex;gap:8px;align-items:center}.page-button{padding:8px 12px;border:1px solid var(--bg-tertiary);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease}.page-button:hover:not(:disabled){background:var(--bg-tertiary);transform:translateY(-1px)}.page-button:disabled{opacity:.5;cursor:not-allowed}.page-button.active{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.page-size-selector{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}.page-size-select{padding:6px 8px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer}.no-users{text-align:center;padding:48px 24px;color:var(--text-secondary)}.no-users-icon{font-size:48px;margin-bottom:16px}.no-users h3{margin:0 0 8px;color:var(--text-primary)}.no-users p{margin:0;font-size:14px}@media (max-width: 768px){.users-controls{grid-template-columns:1fr;gap:12px}.search-box{order:1}.role-filter{order:2}.sort-select{order:3}}@media (max-width: 768px){.admin-users{padding:16px}.users-header{flex-direction:column;align-items:stretch}.users-table-container{overflow-x:auto}.users-table{min-width:800px}.pagination{flex-direction:column;align-items:stretch}.pagination-controls{justify-content:center}}@media (prefers-color-scheme: dark){.users-table-container{border-color:var(--bg-tertiary)}.users-table th{background:var(--bg-tertiary)}}.admin-create-user{padding:2rem;max-width:800px;margin:0 auto;background:var(--bg-secondary);border-radius:8px;box-shadow:0 2px 8px #0000001a}.create-user-header{margin-bottom:2rem;text-align:center}.create-user-header h1{color:var(--text-primary);margin-bottom:.5rem;font-size:2rem;font-weight:600}.create-user-header p{color:var(--text-secondary);font-size:1.1rem}.result-message{margin-bottom:2rem;padding:1rem;border-radius:6px;border:1px solid;animation:slideIn .3s ease-out}.result-content{display:flex;align-items:flex-start;gap:.75rem}.result-icon{font-size:1.2rem;flex-shrink:0}.result-text p{margin:0 0 .5rem;font-weight:500}.temporary-password{margin-top:1rem;padding:1rem;background:#ffc1071a;border:1px solid #ffc107;border-radius:4px}.temporary-password code{display:block;margin:.5rem 0;padding:.5rem;background:#fff;border:1px solid #ddd;border-radius:4px;font-family:Courier New,monospace;font-size:1.1rem;font-weight:700;letter-spacing:.5px;-webkit-user-select:all;user-select:all}.password-note{margin:.5rem 0 0;font-size:.9rem;font-style:italic}.create-user-form{margin-bottom:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{color:var(--text-primary);font-weight:500;margin-bottom:.5rem;font-size:.95rem}.required{color:#dc3545;margin-left:2px}.form-group input{padding:.75rem;border:2px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}.form-group input.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.error-message{color:#dc3545;font-size:.85rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.error-message:before{content:"⚠️";font-size:.8rem}.form-options{margin-bottom:2rem;padding:1.5rem;background:var(--bg-tertiary);border-radius:6px;border:1px solid var(--border-color)}.checkbox-group{margin-bottom:1rem}.checkbox-group:last-child{margin-bottom:0}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;color:var(--text-primary);font-weight:500}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.checkmark{position:relative;width:20px;height:20px;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:4px;flex-shrink:0;transition:all .2s ease;margin-top:1px}.checkbox-label input[type=checkbox]:checked+.checkmark{background:var(--primary-color);border-color:var(--primary-color)}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.checkbox-description{color:var(--text-secondary);font-size:.9rem;margin:.25rem 0 0 2.75rem;font-weight:400}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-color)}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;min-width:140px;justify-content:center}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);transform:translateY(-1px)}.btn-icon{font-size:1.1rem}.form-info{padding:1.5rem;background:var(--bg-tertiary);border-radius:6px;border:1px solid var(--border-color)}.form-info h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.1rem}.form-info ul{list-style:none;padding:0;margin:0}.form-info li{color:var(--text-secondary);padding:.5rem 0;border-bottom:1px solid var(--border-light);font-size:.95rem;display:flex;align-items:center;gap:.5rem}.form-info li:last-child{border-bottom:none}.form-info li:before{content:"ℹ️";font-size:.9rem}@media (max-width: 768px){.admin-create-user{padding:1rem;margin:1rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-actions{flex-direction:column}.btn{width:100%}.create-user-header h1{font-size:1.5rem}.temporary-password code{font-size:1rem;word-break:break-all}}@media (max-width: 480px){.admin-create-user{margin:.5rem}.result-content{flex-direction:column;gap:.5rem}.checkbox-description{margin-left:0;margin-top:.5rem}}.admin-user-details{padding:2rem;max-width:1200px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.user-details-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.back-button:hover{background:var(--bg-tertiary);transform:translateY(-1px)}.user-details-header h1{color:var(--text-primary);font-size:2rem;font-weight:600;margin:0;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.warning-banner{background:#ffc1071a;border:1px solid #ffc107;border-radius:8px;padding:1rem;margin-bottom:1.5rem;animation:slideIn .3s ease-out}.warning-content{display:flex;align-items:center;gap:.75rem}.warning-retry{background:#ffc107;color:#000;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.status-message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease-out}.status-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status-icon{font-size:1.2rem;flex-shrink:0}.dismiss-button{background:none;border:none;color:currentColor;font-size:1.2rem;cursor:pointer;padding:0;margin-left:auto;opacity:.7;transition:opacity .2s ease}.dismiss-button:hover{opacity:1}.user-not-found{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.not-found-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.user-not-found h2{color:var(--text-primary);margin-bottom:.5rem}.user-not-found p{margin-bottom:2rem}.user-details-content{display:flex;flex-direction:column;gap:2rem}.user-profile-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem;box-shadow:0 4px 16px #00000014}.profile-header{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;margin-bottom:2rem}.user-avatar.large{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.8rem;box-shadow:0 4px 12px #00000026}.profile-info h2{color:var(--text-primary);font-size:1.8rem;font-weight:600;margin:0 0 .5rem}.profile-info .username{color:var(--text-secondary);font-size:1rem;margin:0 0 .25rem;font-weight:500}.profile-info .email{color:var(--text-secondary);font-size:.95rem;margin:0 0 1rem}.user-roles{display:flex;gap:.5rem;flex-wrap:wrap}.role-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff}.role-badge.user{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff}.role-badge.readonly{background:linear-gradient(135deg,#64748b,#475569);color:#fff}.profile-status{text-align:right}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.5rem;width:fit-content;margin-left:auto}.status-badge.active{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.status-badge.inactive{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.profile-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-color)}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;min-width:140px;justify-content:center}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-success{background:#16a34a;color:#fff}.btn-success:hover:not(:disabled){background:#15803d;transform:translateY(-1px)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.user-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.info-card h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.info-list{display:flex;flex-direction:column;gap:.75rem}.info-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.info-label{color:var(--text-secondary);font-size:.9rem;font-weight:500;flex-shrink:0;min-width:120px}.info-value{color:var(--text-primary);font-size:.9rem;text-align:right;flex:1;word-break:break-word}.info-value.status.enabled{color:#16a34a;font-weight:600}.info-value.status.disabled{color:#dc2626;font-weight:600}.info-value.last-login.recent{color:#16a34a;font-weight:500}.info-value.last-login.this-week{color:#0ea5e9;font-weight:500}.info-value.last-login.this-month{color:#f59e0b;font-weight:500}.info-value.last-login.old{color:var(--text-secondary)}.info-value.last-login.never{color:#6b7280;font-style:italic}.roles-list{display:flex;gap:.25rem;flex-wrap:wrap;justify-content:flex-end}.role-tag{padding:.2rem .6rem;border-radius:8px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.role-tag.admin{background:#dc26261a;color:#dc2626;border:1px solid rgba(220,38,38,.2)}.role-tag.user{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.role-tag.readonly{background:#64748b1a;color:#64748b;border:1px solid rgba(100,116,139,.2)}.progress-indicator{display:flex;align-items:center;gap:.5rem}.progress-bar{width:80px;height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-blue),var(--accent-green));border-radius:3px;transition:width .3s ease}.progress-indicator span{font-size:.8rem;font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.admin-user-details{padding:1rem}.user-details-header{flex-direction:column;align-items:flex-start;gap:.5rem}.user-details-header h1{font-size:1.5rem}.profile-header{grid-template-columns:1fr;text-align:center;gap:1rem}.profile-status{text-align:center}.user-info-grid{grid-template-columns:1fr}.info-item{flex-direction:column;align-items:flex-start;gap:.25rem}.info-label{min-width:auto}.info-value{text-align:left}.roles-list{justify-content:flex-start}.profile-actions{justify-content:center}.btn{width:100%}}@media (max-width: 480px){.user-avatar.large{width:60px;height:60px;font-size:1.4rem}.profile-info h2{font-size:1.4rem}.info-card{padding:1rem}.progress-bar{width:60px}}@media (prefers-color-scheme: dark){.status-message.success{background:#22c55e1a;color:#4ade80;border-color:#22c55e33}.status-message.error{background:#ef44441a;color:#f87171;border-color:#ef444433}.warning-banner{background:#ffc1071a}.warning-retry{background:#fbbf24;color:#000}.warning-retry:hover{background:#f59e0b}}.admin-analytics{padding:2rem;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-content h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content p{color:var(--text-secondary);font-size:1.1rem;margin:0}.header-controls{display:flex;gap:1rem;align-items:center}.period-selector{display:flex;background:var(--bg-secondary);border-radius:12px;padding:4px;border:1px solid var(--border-color)}.period-selector button{padding:.5rem 1rem;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:8px;font-size:.9rem;font-weight:500;transition:all .2s ease}.period-selector button.active{background:var(--primary-color);color:#fff;box-shadow:0 2px 4px #0000001a}.period-selector button:hover:not(.active){background:var(--bg-tertiary);color:var(--text-primary)}.refresh-button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:12px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.refresh-button:hover:not(:disabled){background:var(--bg-tertiary);transform:translateY(-1px)}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.warning-banner{background:#ffc1071a;border:1px solid #ffc107;border-radius:12px;padding:1rem;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease-out}.warning-icon{font-size:1.2rem;flex-shrink:0}.warning-text{color:var(--text-primary);flex:1;font-weight:500}.warning-retry{background:#ffc107;color:#000;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.warning-retry:hover{background:#e0a800;transform:translateY(-1px)}.analytics-content{display:flex;flex-direction:column;gap:2rem}.metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:1rem}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 4px 16px #00000014;transition:all .2s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.metric-card.primary{border-left:4px solid var(--primary-blue)}.metric-card.success{border-left:4px solid #16a34a}.metric-card.warning{border-left:4px solid #f59e0b}.metric-card.danger{border-left:4px solid #dc2626}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.metric-header h3{color:var(--text-secondary);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0}.metric-icon{font-size:1.5rem;opacity:.7}.metric-value{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:.5rem;line-height:1}.metric-trend{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:500}.metric-trend span:first-child{font-size:1rem}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.analytics-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.analytics-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.analytics-card.large{grid-column:span 2}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.card-header h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0}.card-icon,.chart-icon{font-size:1.3rem;opacity:.7}.status-indicator{color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.chart-container{height:200px;overflow:hidden}.simple-chart{display:flex;align-items:end;justify-content:space-between;height:150px;gap:2px;padding:0 .5rem}.chart-day{flex:1;display:flex;flex-direction:column;align-items:center;max-width:20px}.chart-bars{display:flex;align-items:end;justify-content:center;gap:1px;height:120px;margin-bottom:.5rem}.chart-bar{width:6px;border-radius:2px 2px 0 0;min-height:2px;transition:all .2s ease}.chart-bar:hover{opacity:.8;transform:scaleY(1.1)}.chart-bar.new-users{background:linear-gradient(to top,#3b82f6,#60a5fa)}.chart-bar.active-users{background:linear-gradient(to top,#16a34a,#4ade80)}.chart-label{font-size:.7rem;color:var(--text-secondary);text-align:center;transform:rotate(-45deg);white-space:nowrap;margin-top:.25rem}.health-metrics{display:flex;flex-direction:column;gap:1rem}.health-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-light)}.health-item:last-child{border-bottom:none}.health-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.health-value{color:var(--text-primary);font-size:.9rem;font-weight:600}.user-list{display:flex;flex-direction:column;gap:.75rem}.user-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:12px;transition:all .2s ease}.user-item:hover{background:var(--bg-primary);transform:translate(2px)}.user-rank{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;font-weight:600;font-size:.8rem;padding:.25rem .5rem;border-radius:8px;min-width:2rem;text-align:center}.user-info{flex:1;min-width:0}.user-name{color:var(--text-primary);font-weight:500;font-size:.9rem;margin-bottom:.1rem}.user-username{color:var(--text-secondary);font-size:.8rem}.user-stats{text-align:right;flex-shrink:0}.login-count{color:var(--text-primary);font-weight:500;font-size:.85rem}.security-metrics{display:flex;flex-direction:column;gap:1rem}.security-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-tertiary);border-radius:8px}.security-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.security-value{font-weight:600;font-size:1rem;padding:.25rem .5rem;border-radius:6px}.security-value.warning{background:#f59e0b1a;color:#f59e0b}.security-value.danger{background:#dc26261a;color:#dc2626}.endpoints-list{display:flex;flex-direction:column;gap:.75rem}.endpoint-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:8px;transition:all .2s ease;min-width:0}.endpoint-item:hover{background:var(--bg-primary);transform:translate(2px)}.endpoint-method{font-family:JetBrains Mono,Monaco,Consolas,monospace;font-weight:600;font-size:.8rem;padding:.25rem .5rem;border-radius:4px;min-width:4rem;text-align:center;color:#fff;background:#6b7280}.endpoint-method.method-get{background:#10b981}.endpoint-method.method-post{background:#3b82f6}.endpoint-method.method-put{background:#f59e0b}.endpoint-method.method-delete{background:#ef4444}.endpoint-path{font-family:JetBrains Mono,Monaco,Consolas,monospace;color:var(--text-primary);font-size:.9rem;font-weight:500;flex:1;min-width:0;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:none;hyphens:none}.quick-actions{margin-top:1rem}.quick-actions h3{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin-bottom:1rem}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.action-button{padding:.75rem 1.5rem;border:none;border-radius:12px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.action-button.primary{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff}.action-button.primary:hover{box-shadow:0 8px 24px #3b82f64d;transform:translateY(-2px)}.action-button.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.action-button.secondary:hover{background:var(--bg-tertiary);transform:translateY(-1px)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1200px){.analytics-card.large{grid-column:span 1}}@media (max-width: 768px){.admin-analytics{padding:1rem}.analytics-header{flex-direction:column;align-items:stretch;gap:1rem}.header-controls{flex-direction:column;gap:.75rem}.period-selector{width:100%}.period-selector button{flex:1}.header-content h1{font-size:2rem}.metrics-row,.analytics-grid{grid-template-columns:1fr}.simple-chart{height:120px}.chart-bars{height:80px}.action-buttons{flex-direction:column}.action-button{width:100%;justify-content:center}.endpoint-item{flex-direction:column;align-items:flex-start;gap:.5rem}.endpoint-method{align-self:flex-start}.endpoint-path{font-size:.8rem;line-height:1.3}.user-item{flex-direction:column;align-items:flex-start;gap:.5rem}.user-stats{text-align:left;width:100%}}@media (max-width: 480px){.metric-value{font-size:2rem}.chart-label{font-size:.6rem}.security-item{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (prefers-color-scheme: dark){.metric-card:hover{box-shadow:0 8px 24px #0000004d}.analytics-card:hover{box-shadow:0 4px 16px #0003}.chart-bar.new-users{background:linear-gradient(to top,#2563eb,#3b82f6)}.chart-bar.active-users{background:linear-gradient(to top,#059669,#10b981)}}.admin-placeholder{padding:48px 24px;max-width:800px;margin:0 auto;min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center}.placeholder-content{text-align:center;background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:20px;padding:48px 32px;box-shadow:0 8px 32px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.placeholder-icon{font-size:64px;margin-bottom:24px;display:block}.placeholder-content h1{color:var(--text-primary);font-size:28px;font-weight:700;margin:0 0 16px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.placeholder-content>p{color:var(--text-secondary);font-size:16px;margin:0 0 32px}.upcoming-features{background:var(--bg-secondary);border-radius:16px;padding:24px;margin:32px 0;text-align:left}.upcoming-features h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px;text-align:center}.upcoming-features ul{list-style:none;padding:0;margin:0}.upcoming-features li{color:var(--text-primary);font-size:14px;padding:8px 0;border-bottom:1px solid var(--bg-tertiary);display:flex;align-items:center;gap:8px}.upcoming-features li:last-child{border-bottom:none}.placeholder-note{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:var(--text-white);border-radius:12px;padding:20px;margin-top:24px}.placeholder-note p{margin:0;font-size:14px;line-height:1.5}@media (max-width: 768px){.admin-placeholder{padding:24px 16px}.placeholder-content{padding:32px 20px}.placeholder-icon{font-size:48px}.placeholder-content h1{font-size:24px}.upcoming-features{padding:16px}}@media (prefers-color-scheme: dark){.placeholder-content{background:var(--bg-dark);box-shadow:0 8px 32px #0000004d}.upcoming-features{background:var(--bg-primary)}}.admin-audit-logs{padding:2rem;max-width:1400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.audit-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:2rem}.header-content h1{color:#2c3e50;margin:0 0 .5rem;font-size:2rem;font-weight:600}.header-content p{color:#64748b;margin:0;font-size:1rem}.header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.view-btn,.action-btn,.danger-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.view-btn{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}.view-btn:hover{background:#e2e8f0;color:#334155}.view-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.action-btn{background:#10b981;color:#fff}.action-btn:hover:not(:disabled){background:#059669}.action-btn:disabled{background:#9ca3af;cursor:not-allowed}.danger-btn{background:#ef4444;color:#fff}.danger-btn:hover{background:#dc2626}.error-banner{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.error-icon{font-size:1.25rem}.error-text{color:#dc2626;font-weight:500}.error-note{color:#7f1d1d;font-style:italic}.statistics-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.statistics-panel h3{margin:0 0 1rem;color:#1f2937;font-size:1.25rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;text-align:center;transition:all .2s ease}.stat-card:hover{border-color:#cbd5e1;box-shadow:0 2px 4px #0000000d}.stat-card.success{border-left:4px solid #10b981}.stat-card.failed{border-left:4px solid #ef4444}.stat-value{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.stat-label{color:#64748b;font-size:.875rem}.additional-stats{border-top:1px solid #e2e8f0;padding-top:1rem;display:flex;gap:2rem;flex-wrap:wrap}.additional-stats p{margin:0;color:#475569}.filters-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.filters-panel h3{margin:0 0 1rem;color:#1f2937;font-size:1.25rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:500;color:#374151;font-size:.875rem}.filter-group select,.filter-group input{padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:#fff}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-inputs{display:flex;gap:.5rem;align-items:center}.apply-btn{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:.875rem;cursor:pointer;transition:background .2s ease}.apply-btn:hover{background:#2563eb}.view-tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.tab-btn{padding:.75rem 1rem;background:none;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-btn:hover{color:#475569;background:#f8fafc}.tab-btn.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#f8fafc}.logs-container{position:relative;background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay)}.loading-spinner{font-size:1.125rem;color:#64748b;font-weight:500}.logs-table-container{overflow-x:auto}.logs-table{width:100%;border-collapse:collapse;font-size:.875rem}.logs-table th{background:#f8fafc;padding:.75rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:var(--z-sticky)}.logs-table td{padding:.75rem;border-bottom:1px solid #f1f5f9;vertical-align:top}.log-row:hover{background:#f8fafc}.log-row.failed-log{background:#fef2f2}.log-row.failed-log:hover{background:#fecaca}.action-cell{min-width:140px}.action-icon{font-size:1rem;margin-right:.5rem}.action-label{font-weight:500;color:#374151}.user-cell,.target-cell{min-width:150px}.user-info{display:flex;flex-direction:column;gap:.125rem}.user-info strong{color:#1f2937}.user-info small{color:#64748b;font-size:.75rem}.no-target{color:#9ca3af;font-style:italic}.description-cell{max-width:300px}.description{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#374151}.error-message{color:#dc2626;font-size:.75rem;margin-top:.25rem;font-weight:500}.success-cell{text-align:center;width:60px}.success-indicator{font-size:1rem}.time-cell{min-width:150px}.timestamp{color:#64748b;font-size:.8125rem}.actions-cell{width:80px;text-align:center}.view-details-btn{background:none;border:1px solid #e2e8f0;border-radius:4px;padding:.25rem .5rem;cursor:pointer;font-size:.875rem;transition:all .2s ease}.view-details-btn:hover{background:#f8fafc;border-color:#cbd5e1}.no-data{text-align:center;color:#64748b;font-style:italic;padding:2rem!important}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;padding:1rem;border-top:1px solid #e2e8f0;background:#f8fafc}.nav-btn,.page-btn{padding:.5rem .75rem;border:1px solid #e2e8f0;background:#fff;color:#64748b;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.nav-btn:hover:not(:disabled),.page-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.nav-btn:disabled{background:#f1f5f9;color:#9ca3af;cursor:not-allowed}.page-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:1rem}.modal-content{background:#fff;border-radius:8px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;color:#1f2937;font-size:1.25rem}.close-btn{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:.25rem;line-height:1}.close-btn:hover{color:#374151}.modal-body{padding:1.5rem}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 .75rem;color:#374151;font-size:1rem;font-weight:600}.detail-section.error h4{color:#dc2626}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.75rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.detail-item span{color:#374151;font-weight:500}.detail-item span.success{color:#059669}.detail-item span.failed{color:#dc2626}.user-details p{margin:0 0 .5rem;color:#374151}.description-text{color:#374151;line-height:1.5;margin:0}.error-text{color:#dc2626;font-weight:500;background:#fef2f2;padding:.75rem;border-radius:4px;border-left:4px solid #dc2626;margin:0}@media (max-width: 768px){.admin-audit-logs{padding:1rem}.audit-header{flex-direction:column;gap:1rem}.header-actions{justify-content:flex-start}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.filters-grid{grid-template-columns:1fr}.view-tabs{flex-wrap:wrap}.logs-table{font-size:.8125rem}.logs-table th,.logs-table td{padding:.5rem}.description-cell{max-width:200px}.modal-content{margin:1rem;max-width:none}.detail-grid{grid-template-columns:1fr}}@media (max-width: 480px){.date-inputs{flex-direction:column;align-items:stretch}.additional-stats{flex-direction:column;gap:.5rem}.pagination{flex-wrap:wrap;gap:.25rem}}.upload-health-dashboard{background:#f8f9fa;border-radius:8px;padding:24px;min-height:600px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.header-title h2{margin:0 0 8px;color:#212529;font-size:28px;font-weight:600}.monitoring-status{display:inline-flex;align-items:center;gap:6px}.status-active{color:#28a745;font-weight:500;font-size:14px}.status-inactive{color:#dc3545;font-weight:500;font-size:14px}.refresh-btn,.start-btn,.stop-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.start-btn{background:#28a745;color:#fff}.start-btn:hover{background:#1e7e34}.stop-btn{background:#dc3545;color:#fff}.stop-btn:hover{background:#c82333}.error-banner{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;padding:12px 16px;margin-bottom:20px;display:flex;align-items:center;gap:8px}.error-icon{font-size:18px}.error-message{color:#721c24;font-weight:500}.overall-status{border-radius:8px;padding:20px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;border-left:5px solid}.overall-status.status-healthy{background:#d4edda;border-left-color:#28a745}.overall-status.status-degraded{background:#fff3cd;border-left-color:#ffc107}.overall-status.status-critical{background:#f8d7da;border-left-color:#dc3545}.status-main{display:flex;align-items:center;gap:12px}.status-icon{font-size:24px}.status-text{font-size:20px;font-weight:600;color:#212529}.status-details{display:flex;gap:24px}.status-stat{text-align:center}.stat-label{display:block;font-size:12px;color:#6c757d;margin-bottom:4px;text-transform:uppercase;font-weight:500}.stat-value{display:block;font-size:16px;font-weight:600;color:#212529}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:#fff;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 4px #0000001a;border-top:4px solid}.stat-card.healthy{border-top-color:#28a745}.stat-card.degraded{border-top-color:#ffc107}.stat-card.critical{border-top-color:#dc3545}.stat-card.total{border-top-color:#007bff}.stat-number{font-size:32px;font-weight:700;margin-bottom:8px;color:#212529}.stat-card .stat-label{font-size:14px;color:#6c757d;margin:0}.service-checks{margin-bottom:32px}.service-checks h3{margin:0 0 16px;color:#212529;font-size:20px;font-weight:600}.checks-list{display:flex;flex-direction:column;gap:12px}.service-check{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;border-left:4px solid}.service-check.status-healthy{border-left-color:#28a745}.service-check.status-degraded{border-left-color:#ffc107}.service-check.status-critical{border-left-color:#dc3545}.service-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;transition:background-color .2s ease}.service-header:hover{background:#f8f9fa}.service-info{display:flex;align-items:center;gap:12px}.service-icon{font-size:18px}.service-name{font-size:16px;font-weight:600;color:#212529;text-transform:capitalize}.service-status{font-size:12px;font-weight:500;padding:4px 8px;border-radius:4px;background:#e9ecef;color:#495057}.service-meta{display:flex;align-items:center;gap:16px}.response-time{font-size:14px;color:#6c757d;font-weight:500}.expand-icon{font-size:12px;color:#6c757d;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.service-details{padding:0 20px 20px;background:#f8f9fa;border-top:1px solid #e9ecef}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e9ecef}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:500;color:#495057}.detail-value{color:#212529;max-width:60%;text-align:right}.service-metrics{margin-top:16px;padding-top:16px;border-top:1px solid #e9ecef}.service-metrics h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#495057}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.metric-item{display:flex;justify-content:space-between;padding:6px 0}.metric-key{font-size:13px;color:#6c757d;text-transform:capitalize}.metric-value{font-size:13px;font-weight:500;color:#212529}.health-history{margin-bottom:24px}.health-history h3{margin:0 0 16px;color:#212529;font-size:20px;font-weight:600}.history-list{display:flex;flex-direction:column;gap:8px}.history-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;border-left:3px solid}.history-item.status-healthy{border-left-color:#28a745}.history-item.status-degraded{border-left-color:#ffc107}.history-item.status-critical{border-left-color:#dc3545}.history-icon{font-size:16px}.history-status{font-weight:600;font-size:14px;color:#212529;min-width:80px}.history-time{flex:1;font-size:14px;color:#6c757d}.history-summary{font-size:12px;font-weight:500;color:#495057;background:#f8f9fa;padding:4px 8px;border-radius:4px}.no-data-icon{font-size:64px;margin-bottom:16px}@media (max-width: 768px){.upload-health-dashboard{padding:16px}.dashboard-header{flex-direction:column;align-items:stretch;gap:16px}.header-actions{justify-content:flex-start}.overall-status{flex-direction:column;align-items:flex-start;gap:16px}.status-details{align-self:stretch;justify-content:space-around}.summary-stats{grid-template-columns:repeat(2,1fr)}.service-header{flex-direction:column;align-items:flex-start;gap:12px}.service-meta{align-self:stretch;justify-content:space-between}.detail-row{flex-direction:column;gap:4px}.detail-value{text-align:left;max-width:100%}.metrics-grid{grid-template-columns:1fr}.history-item{flex-wrap:wrap;gap:8px}.history-summary{order:1;width:100%;text-align:center}}.service-header:focus,.refresh-btn:focus,.start-btn:focus,.stop-btn:focus{outline:2px solid #007bff;outline-offset:2px}@media print{.upload-health-dashboard{background:#fff;box-shadow:none}.header-actions{display:none}.service-header{cursor:default}}.upload-metrics-dashboard{background:#f8f9fa;border-radius:8px;padding:24px;min-height:600px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.header-title h2{margin:0 0 4px;color:#212529;font-size:28px;font-weight:600}.metrics-subtitle{color:#6c757d;font-size:14px;font-weight:500}.header-actions{display:flex;gap:12px;align-items:center}.timeframe-select{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;background:#fff;font-size:14px;color:#495057;cursor:pointer}.timeframe-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.refresh-btn,.export-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.refresh-btn{background:#007bff;color:#fff}.refresh-btn:hover{background:#0056b3}.refresh-btn:disabled{background:#6c757d;cursor:not-allowed}.export-btn{background:#28a745;color:#fff}.export-btn:hover{background:#1e7e34}.metrics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.metric-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #0000001a;border-top:4px solid;display:flex;align-items:center;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.metric-card.primary{border-top-color:#007bff}.metric-card.success{border-top-color:#28a745}.metric-card.info{border-top-color:#17a2b8}.metric-card.warning{border-top-color:#ffc107}.metric-card.secondary{border-top-color:#6c757d}.metric-icon{font-size:32px;opacity:.8}.metric-content{flex:1}.metric-value{font-size:28px;font-weight:700;color:#212529;margin-bottom:4px;line-height:1}.metric-label{font-size:14px;color:#6c757d;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-bottom:32px}.chart-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #0000001a}.chart-header{margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.chart-header h3{margin:0 0 4px;color:#212529;font-size:18px;font-weight:600}.chart-subtitle{color:#6c757d;font-size:13px;font-weight:500}.chart-content{min-height:250px;display:flex;align-items:center;justify-content:center}.chart-no-data{text-align:center;color:#6c757d;padding:40px 20px}.chart-no-data .no-data-icon{font-size:48px;margin-bottom:12px;opacity:.6}.chart-no-data .no-data-text{font-size:16px;font-weight:500}.pie-chart{display:flex;gap:24px;align-items:center;width:100%}.chart-legend{flex:1;display:flex;flex-direction:column;gap:8px}.legend-item{display:flex;align-items:center;gap:8px;padding:6px 0}.legend-color{width:16px;height:16px;border-radius:3px;flex-shrink:0}.legend-label{font-weight:500;color:#212529;min-width:40px}.legend-value{color:#6c757d;font-size:13px;margin-left:auto}.chart-visual{width:200px;height:200px}.pie-svg{width:100%;height:100%}.bar-chart{display:flex;flex-direction:column;gap:16px;width:100%}.bar-item{display:flex;align-items:center;gap:16px}.bar-label{font-weight:500;color:#212529;min-width:80px;font-size:14px}.bar-container{flex:1;height:24px;background:#e9ecef;border-radius:12px;position:relative;overflow:hidden}.bar-fill{height:100%;border-radius:12px;transition:width .3s ease;position:relative}.bar-value{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#fff;font-size:12px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.bar-percentage{font-size:13px;color:#6c757d;font-weight:500;min-width:50px;text-align:right}.performance-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:32px;box-shadow:0 4px 6px #0000001a}.performance-section h3{margin:0 0 20px;color:#212529;font-size:20px;font-weight:600;padding-bottom:12px;border-bottom:1px solid #e9ecef}.performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.performance-item{padding:16px;background:#f8f9fa;border-radius:8px;text-align:center}.performance-label{font-size:13px;color:#6c757d;margin-bottom:8px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.performance-value{font-size:20px;font-weight:600;color:#212529}.performance-value.trend-increasing{color:#dc3545}.performance-value.trend-stable{color:#007bff}.performance-value.trend-decreasing{color:#28a745}.trends-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 4px 6px #0000001a}.trends-section h3{margin:0 0 20px;color:#212529;font-size:20px;font-weight:600;padding-bottom:12px;border-bottom:1px solid #e9ecef}.trends-chart{display:flex;align-items:end;gap:8px;height:120px;padding:16px 0}.trend-bar{display:flex;flex-direction:column;align-items:center;flex:1;height:100%}.trend-value{border-radius:4px 4px 0 0;transition:all .3s ease;cursor:pointer;min-height:20px;margin-top:auto}.trend-value:hover{opacity:.8}.trend-label{font-size:10px;color:#6c757d;margin-top:8px;writing-mode:vertical-rl;text-orientation:mixed;max-height:60px;overflow:hidden}.no-data{text-align:center;padding:80px 20px;color:#6c757d}.no-data-icon{font-size:64px;margin-bottom:16px;opacity:.6}.no-data-message{font-size:18px;font-weight:500}@media (max-width: 1200px){.charts-section{grid-template-columns:1fr}.pie-chart{flex-direction:column;text-align:center}.chart-visual{order:-1}}@media (max-width: 768px){.upload-metrics-dashboard{padding:16px}.dashboard-header{flex-direction:column;align-items:stretch;gap:16px}.header-actions{justify-content:flex-start;flex-wrap:wrap}.metrics-cards{grid-template-columns:repeat(2,1fr);gap:12px}.metric-card{flex-direction:column;text-align:center;padding:16px}.metric-icon,.metric-value{font-size:24px}.charts-section{gap:16px}.chart-container{padding:16px}.performance-grid{grid-template-columns:repeat(2,1fr);gap:12px}.performance-item{padding:12px}.performance-value{font-size:16px}.bar-item{flex-direction:column;align-items:stretch;gap:8px}.bar-label{text-align:center;min-width:auto}.trends-chart{height:100px}.trend-label{writing-mode:horizontal-tb;text-orientation:unset;max-height:none;max-width:40px}}@media (max-width: 480px){.metrics-cards,.performance-grid{grid-template-columns:1fr}.header-actions{flex-direction:column;align-items:stretch}.timeframe-select,.refresh-btn,.export-btn{width:100%;justify-content:center}}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.refresh-btn:disabled{animation:pulse 1.5s infinite}.legend-item:hover{background:#00000005;border-radius:4px}.bar-item:hover .bar-fill{filter:brightness(1.1)}.performance-item:hover{background:#e9ecef;transform:translateY(-1px);transition:all .2s ease}.timeframe-select:focus,.refresh-btn:focus,.export-btn:focus{outline:2px solid #007bff;outline-offset:2px}@media print{.upload-metrics-dashboard{background:#fff;box-shadow:none}.header-actions{display:none}.metric-card,.chart-container{break-inside:avoid}}.admin-upload-dashboard{min-height:100vh;background:#f1f3f4;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-navigation{background:#fff;box-shadow:0 2px 4px #0000001a;padding:24px 32px;margin-bottom:24px}.nav-header{margin-bottom:24px}.nav-header h1{margin:0 0 8px;color:#1a73e8;font-size:32px;font-weight:600;letter-spacing:-.5px}.nav-subtitle{color:#5f6368;font-size:16px;font-weight:400}.nav-tabs{display:flex;gap:4px;background:#f8f9fa;padding:4px;border-radius:8px;max-width:600px}.nav-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 20px;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .2s ease;text-align:center;position:relative}.nav-tab:hover{background:#1a73e814}.nav-tab.active{background:#1a73e8;color:#fff;box-shadow:0 2px 8px #1a73e84d}.tab-icon{font-size:24px;margin-bottom:4px}.tab-label{font-size:16px;font-weight:600;margin-bottom:2px}.tab-description{font-size:12px;opacity:.8;font-weight:400}.nav-tab:not(.active) .tab-description{color:#5f6368}.dashboard-content{padding:0 32px;margin-bottom:24px}.dashboard-panel{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dashboard-footer{background:#fff;border-top:1px solid #e8eaed;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;margin-top:auto}.footer-info{display:flex;align-items:center;gap:8px}.footer-text{color:#5f6368;font-size:14px}.footer-separator{color:#dadce0;font-weight:300}.footer-btn{padding:8px 16px;border:1px solid #dadce0;border-radius:6px;background:#fff;color:#1a73e8;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.footer-btn:hover{background:#f8f9fa;border-color:#1a73e8}.footer-btn:active{background:#e8f0fe}@media (max-width: 1024px){.dashboard-navigation,.dashboard-content,.dashboard-footer{padding-left:24px;padding-right:24px}.nav-header h1{font-size:28px}.nav-tabs{max-width:100%}}@media (max-width: 768px){.dashboard-navigation,.dashboard-content,.dashboard-footer{padding-left:16px;padding-right:16px}.nav-header{text-align:center;margin-bottom:20px}.nav-header h1{font-size:24px}.nav-subtitle{font-size:14px}.nav-tabs{flex-direction:column;gap:8px;padding:8px}.nav-tab{flex-direction:row;justify-content:flex-start;text-align:left;padding:12px 16px}.tab-icon{font-size:20px;margin-bottom:0;margin-right:12px}.tab-content{display:flex;flex-direction:column;align-items:flex-start}.tab-label{font-size:15px;margin-bottom:2px}.tab-description{font-size:11px}.dashboard-footer{flex-direction:column;gap:12px;align-items:center;text-align:center}.footer-info{flex-direction:column;gap:4px}.footer-separator{display:none}}@media (max-width: 480px){.dashboard-navigation{padding:16px}.dashboard-content{padding:0 16px}.dashboard-footer{padding:16px}.nav-header h1{font-size:20px}.nav-header{margin-bottom:16px}.nav-tab{padding:10px 12px}.tab-icon{font-size:18px;margin-right:10px}.tab-label{font-size:14px}.tab-description{font-size:10px}.footer-btn{width:100%;justify-content:center}}@media (prefers-contrast: high){.nav-tab.active{background:#000;color:#fff}.nav-tab:hover{background:#0000001a}.footer-btn{border-width:2px}}@media (prefers-reduced-motion: reduce){.nav-tab,.footer-btn,.dashboard-panel{transition:none}@keyframes fadeIn{0%,to{opacity:1;transform:translateY(0)}}}.nav-tab:focus,.footer-btn:focus{outline:2px solid #1a73e8;outline-offset:2px}.nav-tab.active:focus{outline-color:#fff}@media print{.dashboard-navigation{box-shadow:none;border-bottom:2px solid #000}.dashboard-footer,.nav-tabs{display:none}.nav-header h1{color:#000}}@media (prefers-color-scheme: dark){.admin-upload-dashboard{background:#1a1a1a}.dashboard-navigation,.dashboard-footer{background:#2d2d2d;color:#e8eaed}.nav-header h1{color:#8ab4f8}.nav-subtitle,.footer-text{color:#9aa0a6}.nav-tabs{background:#3c4043}.nav-tab:hover{background:#8ab4f814}.footer-btn{background:#3c4043;border-color:#5f6368;color:#8ab4f8}.footer-btn:hover{background:#48494a}}.stored-holidays-tab{height:100%;display:flex;flex-direction:column}.stored-holidays-tab>.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--bg-tertiary)}.stored-holidays-tab>.tab-header h3{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.refresh-button{padding:6px 12px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;padding:40px}.empty-state h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.empty-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}.table-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary);border-radius:8px 8px 0 0}.selection-controls{display:flex;align-items:center;gap:8px}.bulk-edit-action{display:flex;align-items:center}.goto-bulk-edit-button{background:var(--primary-blue);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.goto-bulk-edit-button:hover{background:var(--primary-blue-dark)}.select-all-checkbox{width:18px;height:18px;cursor:pointer}.selection-label{font-size:14px;font-weight:500;color:var(--text-primary)}.holidays-table-container{border:1px solid var(--bg-tertiary);border-radius:8px;overflow:hidden}.holidays-table{width:100%;border-collapse:collapse;background:var(--bg-primary)}.holidays-table th{background:var(--bg-secondary);padding:12px 16px;text-align:left;font-weight:600;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--bg-tertiary)}.holidays-table td{padding:12px 16px;border-bottom:1px solid var(--bg-tertiary);font-size:14px;color:var(--text-secondary)}.holidays-table tr:hover{background:var(--bg-secondary)}.holidays-table tr.selected-row{background:var(--accent-color-light);border-left:3px solid var(--accent-color)}.holidays-table tr.selected-row:hover{background:var(--accent-color-light)}.holiday-checkbox{width:16px;height:16px;cursor:pointer}@media (max-width: 768px){.content-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:space-between}.empty-state{padding:20px;height:300px}.holidays-table{font-size:12px}.holidays-table th,.holidays-table td{padding:8px 12px}.checkbox-column{width:40px}}.api-data-tab{height:100%;display:flex;flex-direction:column}.api-initial-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;padding:40px}.api-initial-state h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.api-initial-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}.api-data-content{height:100%;display:flex;flex-direction:column}.holiday-count{font-size:14px;color:var(--text-secondary);font-weight:500}.last-fetched{font-size:12px;color:var(--text-secondary);font-style:italic}.fetch-button{padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:120px}.fetch-button:hover:not(:disabled){background:var(--primary-blue-dark);transform:translateY(-1px)}.fetch-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.fetch-button.primary{background:var(--accent-green);font-size:16px;padding:12px 24px;min-width:160px}.fetch-button.primary:hover:not(:disabled){background:var(--accent-green-dark)}.table-container{flex:1;overflow:auto;border:1px solid var(--bg-tertiary);border-radius:8px}.holidays-table{width:100%;border-collapse:collapse;font-size:14px}.holidays-table thead{background:var(--bg-secondary);position:sticky;top:0;z-index:10}.holidays-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--bg-tertiary);white-space:nowrap}.holidays-table td{padding:12px 16px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary)}.holidays-table tbody tr:hover{background:var(--bg-secondary)}.holidays-table tbody tr:last-child td{border-bottom:none}.api-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;padding:40px}.api-empty-state h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.api-empty-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}@media (max-width: 768px){.content-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.holidays-table{font-size:12px}.holidays-table th,.holidays-table td{padding:8px 12px}.api-initial-state,.api-empty-state{padding:20px;height:300px}.fetch-button.primary{font-size:14px;padding:10px 20px;min-width:140px}}.comparison-tab{height:100%;display:flex;flex-direction:column}.error-banner{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #d97706;border-radius:8px;margin-bottom:16px;padding:12px;box-shadow:0 2px 8px #f59e0b33}.error-content{display:flex;align-items:center;gap:12px;color:#fff}.error-icon{font-size:16px}.error-text{flex:1;font-size:14px;font-weight:500}.error-retry{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.error-retry:hover{background:#ffffff4d;transform:translateY(-1px)}.comparison-initial-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;padding:40px}.initial-icon{font-size:48px;margin-bottom:16px;opacity:.6}.comparison-initial-state h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.comparison-initial-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}.initial-actions{display:flex;flex-direction:column;align-items:center;gap:16px}.initial-hint{margin:0;font-size:12px;color:var(--text-secondary);font-style:italic}.comparison-content{height:100%;display:flex;flex-direction:column}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--bg-tertiary)}.content-header h3{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.compare-button{padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:120px}.compare-button:hover:not(:disabled){background:var(--primary-blue-dark);transform:translateY(-1px)}.compare-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.compare-button.primary{background:var(--accent-green);font-size:16px;padding:12px 24px;min-width:160px}.compare-button.primary:hover:not(:disabled){background:var(--accent-green-dark)}.comparison-summary{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:16px;margin-bottom:20px}.stat-label{font-size:12px;color:var(--text-secondary);font-weight:500}.stat-value{font-size:18px;font-weight:700;color:var(--text-primary)}.stat-value.added{color:var(--accent-green)}.stat-value.removed{color:#ef4444}.stat-value.modified{color:#f59e0b}.differences-list{flex:1;overflow:auto}.differences-list h3{margin:0 0 16px;color:var(--text-primary);font-size:16px;font-weight:600}.differences-container{display:flex;flex-direction:column;gap:16px}.difference-item{border:1px solid var(--bg-tertiary);border-radius:8px;overflow:hidden;transition:all .2s ease}.difference-item:hover{box-shadow:0 4px 12px #0000001a}.difference-item.difference-added{border-left:4px solid var(--accent-green)}.difference-item.difference-removed{border-left:4px solid #ef4444}.difference-item.difference-modified{border-left:4px solid #f59e0b}.difference-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary)}.difference-type{font-size:12px;font-weight:600;text-transform:uppercase;padding:4px 8px;border-radius:4px;background:var(--bg-tertiary);color:var(--text-primary)}.difference-action{font-size:12px;font-weight:600;color:var(--text-secondary);margin-left:auto}.difference-description{padding:12px 16px;background:var(--bg-primary);border-bottom:1px solid var(--bg-tertiary)}.difference-description p{margin:0;font-size:14px;color:var(--text-primary);line-height:1.4}.difference-notes{margin-top:8px!important;font-size:13px!important;color:var(--text-secondary)!important;font-style:italic}.debug-section{margin-top:12px;border:1px solid var(--bg-tertiary);border-radius:6px;overflow:hidden}.debug-section summary{padding:8px 12px;background:var(--bg-secondary);cursor:pointer;font-size:12px;font-weight:600;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.debug-section summary:hover{background:var(--bg-tertiary)}.debug-data{margin:0;padding:12px;background:var(--bg-primary);font-size:11px;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow:auto;border-top:1px solid var(--bg-tertiary)}.difference-details{display:grid;grid-template-columns:1fr 1fr;gap:0}.detail-section{padding:16px;border-right:1px solid var(--bg-tertiary)}.detail-section:last-child{border-right:none}.detail-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary)}.detail-section.stored h4{color:var(--primary-blue)}.detail-section.api h4{color:var(--accent-green)}.detail-content p{margin:0 0 8px;font-size:13px;color:var(--text-primary)}.detail-content p:last-child{margin-bottom:0}.detail-content strong{color:var(--text-secondary);font-weight:600}.no-differences{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;text-align:center;padding:40px}.no-diff-icon{font-size:48px;margin-bottom:16px;opacity:.6}.no-differences h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.no-differences p{margin:0;color:var(--text-secondary);font-size:14px}.comparison-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;padding:40px}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.6}.comparison-empty-state h3{margin:0 0 12px;color:var(--text-primary);font-size:20px;font-weight:600}.comparison-empty-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}.empty-actions{display:flex;flex-direction:column;align-items:center;gap:16px}.empty-hint{margin:0;font-size:12px;color:var(--text-secondary);font-style:italic}.arrays-summary{margin-top:16px;border:1px solid var(--bg-tertiary);border-radius:8px;overflow:hidden}.arrays-summary summary{padding:12px 16px;background:var(--bg-secondary);cursor:pointer;font-size:14px;font-weight:600;color:var(--text-primary);-webkit-user-select:none;user-select:none}.arrays-summary summary:hover{background:var(--bg-tertiary)}.arrays-content{padding:16px;background:var(--bg-primary);display:grid;grid-template-columns:1fr 1fr;gap:20px}.array-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary)}.array-section ul{margin:0;padding-left:20px;list-style:none}.array-section li{font-size:13px;color:var(--text-secondary);margin-bottom:4px;padding:4px 0}.array-section p{margin:0;font-size:13px;color:var(--text-secondary);font-style:italic}@media (max-width: 768px){.content-header{flex-direction:column;align-items:flex-start;gap:12px}.summary-stats{gap:16px}.difference-details{grid-template-columns:1fr}.detail-section{border-right:none;border-bottom:1px solid var(--bg-tertiary)}.detail-section:last-child{border-bottom:none}.comparison-initial-state,.comparison-empty-state{padding:20px;height:300px}.compare-button.primary{font-size:14px;padding:10px 20px;min-width:140px}}.empty-database-notice{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:12px;padding:20px;margin-bottom:24px;display:flex;align-items:flex-start;gap:16px}.notice-icon{font-size:24px;flex-shrink:0;margin-top:2px}.notice-content h4{margin:0 0 8px;color:#0c4a6e;font-size:16px;font-weight:600}.notice-content p{margin:0;color:#0c4a6e;font-size:14px;line-height:1.5}.bulk-operations-tab{height:100%;display:flex;flex-direction:column}.operations-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--bg-tertiary)}.operations-header h3{margin:0 0 8px;color:var(--text-primary);font-size:20px;font-weight:600}.operations-header p{margin:0;color:var(--text-secondary);font-size:14px}.operations-content{flex:1;display:flex;flex-direction:column;gap:24px}.operation-section{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:12px;padding:24px}.section-header{margin-bottom:20px}.section-header h3{margin:0 0 8px;color:var(--text-primary);font-size:18px;font-weight:600}.section-header p{margin:0;color:var(--text-secondary);font-size:14px}.sync-options{display:flex;flex-direction:column;gap:20px}.option-group{display:flex;flex-direction:column;gap:8px}.sync-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-primary);padding:8px 0}.sync-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary-blue)}.option-description{margin:0 0 0 32px;font-size:13px;color:var(--text-secondary);line-height:1.4}.sync-info{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:16px}.sync-info p{margin:0 0 8px;font-size:14px;color:var(--text-primary)}.sync-info p:last-child{margin-bottom:0}.sync-info strong{color:var(--text-secondary);font-weight:600}.date-range-status{font-size:14px;font-weight:500}.date-range-status.valid{color:var(--accent-green)}.date-range-status.invalid{color:#ef4444}.validation-error{margin:0;font-size:13px;color:#ef4444;font-weight:500;padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px}.sync-button{padding:12px 24px;background:var(--accent-green);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;align-self:flex-start}.sync-button:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-1px)}.sync-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.sync-result{margin-top:20px;padding:16px;border-radius:8px;border:1px solid}.sync-result.success{background:#22c55e1a;border-color:var(--accent-green)}.sync-result.error{background:#ef44441a;border-color:#ef4444}.result-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.result-icon{font-size:18px}.result-title{font-size:16px;font-weight:600;color:var(--text-primary)}.result-details p{margin:0;font-size:14px;color:var(--text-primary)}.result-errors{margin-top:12px}.result-errors p{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--text-primary)}.result-errors ul{margin:0;padding-left:20px}.result-errors li{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.bulk-update-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center;background:var(--bg-primary);border:2px dashed var(--bg-tertiary);border-radius:8px}.placeholder-icon{font-size:48px;margin-bottom:16px;opacity:.6}.bulk-update-placeholder h4{margin:0 0 12px;color:var(--text-primary);font-size:18px;font-weight:600}.bulk-update-placeholder p{margin:0 0 24px;color:var(--text-secondary);font-size:14px;max-width:400px;line-height:1.5}.placeholder-features{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:300px}.feature-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.feature-icon{color:var(--accent-green);font-weight:700}@media (max-width: 768px){.operation-section{padding:16px}.sync-options{gap:16px}.sync-info{padding:12px}.sync-button{width:100%;text-align:center}.bulk-update-placeholder{padding:24px}.placeholder-features{grid-template-columns:1fr;gap:8px}}.bulk-update-form{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:20px;margin-top:16px}.selection-summary{margin-bottom:20px}.selection-summary h4{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--text-primary)}.selected-holidays-list{max-height:150px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:6px;padding:12px;margin:0}.selected-holidays-list li{padding:4px 8px;font-size:14px;color:var(--text-secondary);border-bottom:1px solid var(--bg-tertiary);margin:0 -8px;border-left:none}.selected-holidays-list li:last-child{border-bottom:none}.update-fields{margin-bottom:20px}.update-fields h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.field-group{margin-bottom:16px}.field-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--text-primary)}.field-group input{width:100%;padding:10px 12px;border:1px solid var(--bg-tertiary);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s ease}.field-group input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #3b82f61a}.field-group input::placeholder{color:var(--text-tertiary)}.update-button{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%;text-shadow:0 1px 2px rgba(0,0,0,.2)}.update-button:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.no-selection{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:20px;text-align:center;margin-top:16px}.no-selection p{margin:0 0 8px;color:var(--text-secondary)}.no-selection p:last-child{margin-bottom:0;font-size:13px;color:var(--text-tertiary)}.result-message{margin-top:16px;padding:16px;border-radius:8px;border:1px solid}.result-message.success{background:#22c55e1a;border-color:#22c55e4d;color:var(--success-color)}.result-message.error{background:#ef44441a;border-color:#ef44444d;color:var(--error-color)}.result-message h4{margin:0 0 8px;font-size:16px;font-weight:600}.result-message p{margin:0 0 8px;font-size:14px}.result-message li{font-size:13px;margin-bottom:4px}.sync-checkbox{width:16px;height:16px;margin-right:8px;cursor:pointer}.sync-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;padding:16px;margin-bottom:16px}.sync-warning h4{margin:0 0 8px;color:#d97706;font-size:16px;font-weight:600}.sync-warning p{margin:0;color:var(--text-primary);font-size:14px;line-height:1.5}.sync-warning strong{color:#d97706}.bulk-update-info{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;padding:16px;margin-bottom:20px}.bulk-update-info h4{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--text-primary)}.bulk-update-info p{margin:0 0 12px;font-size:14px;color:var(--text-primary);line-height:1.5}.bulk-update-info ul{margin:0 0 12px;padding-left:20px}.bulk-update-info li{font-size:14px;color:var(--text-secondary);margin-bottom:6px;line-height:1.4}.bulk-update-info strong{color:var(--text-primary);font-weight:600}.bulk-update-info em{color:var(--text-tertiary);font-style:italic}.holidays-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin:20px 0}.holiday-card{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;padding:20px;transition:all .2s ease}.holiday-card:hover{border-color:var(--primary-blue);box-shadow:0 4px 12px #0000001a}.holiday-card.has-changes{border-color:var(--accent-green);background:#22c55e05}.holiday-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--bg-tertiary)}.holiday-header h5{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.holiday-name{font-size:14px;color:var(--text-secondary);font-weight:500}.change-badge{background:var(--accent-green);color:#fff;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600}.holiday-fields{display:flex;flex-direction:column;gap:16px}.field-row{display:flex;flex-direction:column;gap:8px}.field-row label{font-size:13px;font-weight:600;color:var(--text-primary);margin:0}.field-comparison{display:flex;flex-direction:column;gap:6px}.current-value{background:var(--bg-secondary);color:var(--text-secondary);font-style:italic;padding:6px 10px;border-radius:6px;font-size:12px;border-left:3px solid var(--bg-tertiary)}.edit-input{width:100%;padding:8px 12px;border:1px solid var(--bg-tertiary);border-radius:6px;font-size:13px;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease;box-sizing:border-box}.edit-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #3b82f61a}.edit-input::placeholder{color:var(--text-tertiary);font-style:italic}.update-button{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:14px 28px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%;margin-top:20px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.update-button:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 16px #00000026}.update-button:disabled{background:#9ca3af;color:#f9fafb;cursor:not-allowed;transform:none;text-shadow:none}@media (max-width: 768px){.holidays-grid{grid-template-columns:1fr;gap:16px}.holiday-card{padding:16px}.holiday-header{flex-direction:column;align-items:flex-start;gap:8px}.update-button{padding:12px 24px;font-size:14px}}.admin-market-holidays{padding:24px;max-width:1200px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.market-holidays-header{text-align:center;margin-bottom:32px}.market-holidays-header h1{color:var(--text-primary);font-size:32px;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.market-holidays-header p{color:var(--text-secondary);font-size:16px;margin:0}.filters-section{display:flex;gap:24px;margin-bottom:24px;padding:20px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--bg-tertiary);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:150px}.filter-group label{font-size:14px;font-weight:600;color:var(--text-primary)}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #3b82f61a}.tab-navigation{display:flex;gap:4px;margin-bottom:24px;background:var(--bg-secondary);padding:4px;border-radius:8px;border:1px solid var(--bg-tertiary)}.tab-button{flex:1;padding:12px 16px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center}.tab-button:hover{background:#3b82f61a;color:var(--text-primary)}.tab-button.active{background:var(--primary-blue);color:#fff;box-shadow:0 2px 8px #3b82f64d}.selection-badge{background:var(--accent-color);color:#fff;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600;margin-left:8px;min-width:20px;text-align:center}.tab-container{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:12px;min-height:400px;margin-bottom:24px}.tab-content{padding:24px}.tab-content h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 8px}.tab-content p{color:var(--text-secondary);font-size:14px;margin:0 0 24px}.placeholder-content{display:flex;align-items:center;justify-content:center;height:300px;background:var(--bg-secondary);border-radius:8px;border:2px dashed var(--bg-tertiary)}.placeholder-content p{color:var(--text-secondary);font-size:16px;font-weight:500;margin:0}.market-holidays-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--bg-tertiary)}.footer-info{display:flex;gap:24px;font-size:14px;color:var(--text-secondary)}.footer-info span{font-weight:500}.refresh-button{padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.refresh-button:hover{background:var(--primary-blue-dark);transform:translateY(-1px)}@media (max-width: 768px){.admin-market-holidays{padding:16px}.filters-section{flex-direction:column;gap:16px}.filter-group{min-width:auto}.tab-navigation{flex-direction:column}.tab-button{text-align:left}.market-holidays-footer{flex-direction:column;gap:16px;align-items:stretch}.footer-info{flex-direction:column;gap:8px}}.stored-earnings-tab{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.refresh-button{background:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.loading-message{text-align:center;padding:40px;color:#666;font-size:1.1rem}.error-message{text-align:center;padding:40px;color:#dc3545;font-size:1.1rem;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-icon{font-size:4rem;margin-bottom:20px}.empty-state h4{margin:0 0 15px;color:#333;font-size:1.3rem}.empty-state p{margin:0 0 10px;font-size:1rem;line-height:1.5}.hint{color:#007bff;font-style:italic}.table-controls{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.selection-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.select-all-label{display:flex;align-items:center;gap:8px;font-weight:500;color:#495057;cursor:pointer}.select-all-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.bulk-edit-button{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.bulk-edit-button:hover{background:#218838}.table-container{overflow-x:auto;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px}.earnings-table th{background:#f8f9fa;padding:12px 8px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;font-size:.9rem}.earnings-table td{padding:10px 8px;border-bottom:1px solid #dee2e6;font-size:.9rem}.earnings-table tr.selected{background:#e3f2fd}.earnings-table tr.selected:hover{background:#bbdefb}.table-summary{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;font-size:.9rem;color:#495057}.selected-count{color:#007bff;font-weight:600}@media (max-width: 768px){.stored-earnings-tab{padding:15px}.tab-header{flex-direction:column;gap:15px;align-items:flex-start}.selection-controls{flex-direction:column;align-items:flex-start}.table-container{font-size:.8rem}.earnings-table th,.earnings-table td{padding:8px 4px;font-size:.8rem}}.api-data-tab{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.fetch-button{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.fetch-button:hover:not(:disabled){background:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.fetch-button:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.last-fetched{background:#e7f3ff;color:#0056b3;padding:10px 15px;border-radius:6px;margin-bottom:20px;font-size:.9rem;border-left:4px solid #007bff}.empty-state{text-align:center;padding:80px 20px;color:#666}.empty-icon{font-size:4rem;margin-bottom:25px;opacity:.7}.empty-state h4{margin:0 0 20px;color:#333;font-size:1.4rem;font-weight:600}.empty-state p{font-size:1.1rem;line-height:1.6;max-width:500px;margin:0 auto 15px}.data-section{margin-top:20px}.data-summary{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:25px;border:1px solid #e9ecef}.data-summary h4{margin:0 0 10px;color:#333;font-size:1.3rem;font-weight:600}.data-summary p{margin:0;color:#666;font-size:1rem}.table-container{overflow-x:auto;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.earnings-table{width:100%;border-collapse:collapse;background:#fff}.earnings-table th{background:#f8f9fa;padding:12px 10px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;font-size:.9rem;white-space:nowrap}.earnings-table td{padding:12px 10px;border-bottom:1px solid #dee2e6;font-size:.9rem;vertical-align:middle}.earnings-table tr:hover{background:#f8f9fa}.data-note{background:#fff3cd;color:#856404;padding:15px;border-radius:6px;border:1px solid #ffeaa7;text-align:center;font-size:.9rem}.data-note p{margin:0}@media (max-width: 768px){.api-data-tab{padding:15px}.tab-header{flex-direction:column;gap:15px;align-items:flex-start}.fetch-button{width:100%;padding:12px}.initial-state,.loading-state,.error-state,.empty-state{padding:40px 15px}.initial-icon,.loading-icon,.error-icon,.empty-icon{font-size:3rem}.table-container{font-size:.8rem}.earnings-table th,.earnings-table td{padding:8px 6px;font-size:.8rem}}.comparison-tab{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.compare-button{background:#17a2b8;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.compare-button:hover:not(:disabled){background:#138496;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.compare-button:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.last-compared{background:#e7f3ff;color:#0056b3;padding:10px 15px;border-radius:6px;margin-bottom:20px;font-size:.9rem;border-left:4px solid #007bff}.initial-state{text-align:center;padding:80px 20px;color:#666}.initial-icon{font-size:5rem;margin-bottom:25px;opacity:.7}.initial-state h4{margin:0 0 20px;color:#333;font-size:1.5rem;font-weight:600}.initial-state p{font-size:1.1rem;line-height:1.6;max-width:600px;margin:0 auto 15px}.hint{color:#007bff;font-style:italic;font-size:1rem}.loading-state{text-align:center;padding:80px 20px;color:#666}.loading-icon{font-size:4rem;margin-bottom:25px;animation:spin 2s linear infinite}.loading-state h4{margin:0 0 20px;color:#333;font-size:1.4rem;font-weight:600}.loading-state p{margin:0;font-size:1.1rem;line-height:1.6}.error-state{text-align:center;padding:60px 20px;color:#dc3545}.error-icon{font-size:4rem;margin-bottom:25px}.error-state h4{margin:0 0 20px;color:#dc3545;font-size:1.4rem;font-weight:600}.error-state p{margin:0 0 15px;font-size:1.1rem;line-height:1.6}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;padding:15px;font-family:monospace;font-size:.9rem;text-align:left;max-width:600px;margin:20px auto}.retry-button{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .2s}.comparison-section{margin-top:20px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.summary-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.card-icon{font-size:2.5rem;margin-bottom:15px}.card-content h4{margin:0 0 10px;color:#333;font-size:1.1rem;font-weight:600}.card-value{font-size:2rem;font-weight:700;margin-bottom:5px;color:#333}.card-value.added{color:#28a745}.card-value.removed{color:#dc3545}.card-value.modified{color:#ffc107}.card-value.unchanged{color:#6c757d}.card-label{font-size:.9rem;color:#666;font-weight:500}.differences-section{margin-top:30px}.differences-section h4{margin:0 0 20px;color:#333;font-size:1.3rem;font-weight:600;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.differences-list{display:flex;flex-direction:column;gap:15px}.difference-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:20px;transition:box-shadow .2s ease}.difference-item:hover{box-shadow:0 2px 8px #0000001a}.difference-item.added{border-left:4px solid #28a745}.difference-item.removed{border-left:4px solid #dc3545}.difference-item.modified{border-left:4px solid #ffc107}.difference-header{display:flex;align-items:center;gap:15px;margin-bottom:15px}.difference-type{padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.difference-type.added{background:#d4edda;color:#155724}.difference-type.removed{background:#f8d7da;color:#721c24}.difference-type.modified{background:#fff3cd;color:#856404}.difference-description{font-size:1rem;color:#333;font-weight:500}.difference-notes{background:#f8f9fa;padding:10px 15px;border-radius:6px;margin-bottom:15px;font-size:.9rem;color:#666;border-left:3px solid #007bff}.difference-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:15px}.detail-section{background:#f8f9fa;padding:15px;border-radius:6px;border:1px solid #e9ecef}.detail-section h5{margin:0 0 10px;color:#333;font-size:1rem;font-weight:600;padding-bottom:5px;border-bottom:1px solid #dee2e6}.detail-content{display:flex;flex-direction:column;gap:8px;font-size:.9rem}.detail-content span{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.detail-content strong{color:#495057;min-width:120px}.no-differences{text-align:center;padding:80px 20px;color:#666}.no-differences-icon{font-size:4rem;margin-bottom:25px;color:#28a745}.no-differences h4{margin:0 0 20px;color:#333;font-size:1.4rem;font-weight:600}.no-differences p{font-size:1.1rem;line-height:1.6;max-width:500px;margin:0 auto}@media (max-width: 768px){.comparison-tab{padding:15px}.tab-header{flex-direction:column;gap:15px;align-items:flex-start}.compare-button{width:100%;padding:12px}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.summary-card{padding:15px}.card-icon{font-size:2rem}.card-value{font-size:1.5rem}.difference-header{flex-direction:column;align-items:flex-start;gap:10px}.difference-details{grid-template-columns:1fr;gap:15px}.detail-content span{flex-direction:column;align-items:flex-start;gap:2px}.detail-content strong{min-width:auto}}.bulk-operations-tab{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.tab-header h3{margin:0;color:#333;font-size:1.5rem;font-weight:600}.header-actions{display:flex;align-items:center;gap:15px}.selected-count{background:#007bff;color:#fff;padding:6px 12px;border-radius:20px;font-size:.9rem;font-weight:500}.operations-section{display:flex;flex-direction:column;gap:30px}.sync-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:25px}.sync-section h4{margin:0 0 10px;color:#333;font-size:1.3rem;font-weight:600}.sync-section p{margin:0 0 20px;color:#666;font-size:1rem;line-height:1.5}.sync-controls{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.overwrite-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:1rem;color:#495057;font-weight:500}.overwrite-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.sync-button{background:#28a745;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.sync-button:hover:not(:disabled){background:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.sync-button:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.sync-warning{background:#fff3cd;color:#856404;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #ffeaa7}.sync-warning h4{margin:0 0 10px;color:#856404;font-size:1rem;font-weight:600}.sync-warning p{margin:0;font-size:.9rem;line-height:1.5}.sync-warning strong{color:#856404;font-weight:600}.bulk-update-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:25px}.bulk-update-section h4{margin:0 0 10px;color:#333;font-size:1.3rem;font-weight:600}.bulk-update-section p{margin:0 0 20px;color:#666;font-size:1rem;line-height:1.5}.no-selection{text-align:center;padding:60px 20px;color:#666}.no-selection-icon{font-size:4rem;margin-bottom:20px;opacity:.7}.no-selection h5{margin:0 0 15px;color:#333;font-size:1.2rem;font-weight:600}.no-selection p{margin:0;font-size:1rem;line-height:1.5}.bulk-update-controls{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap}.update-button{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.update-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.update-button:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.clear-button{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.clear-button:hover{background:#5a6268;transform:translateY(-1px)}.earnings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.earning-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:20px;transition:all .2s ease;width:100%;box-sizing:border-box;overflow:hidden}.earning-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.earning-card.modified{border-color:#ffc107;border-width:2px;background:#fffbf0}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e9ecef}.card-header h5{margin:0;color:#333;font-size:1.2rem;font-weight:600}.date{color:#666;font-size:.9rem;font-weight:500}.modified-badge{background:#ffc107;color:#856404;padding:4px 8px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.card-content{padding:15px;overflow:hidden;width:100%;box-sizing:border-box}.field-group{margin-bottom:15px}.field-group label{display:block;margin-bottom:5px;font-weight:500;color:#333;font-size:.9rem}.field-group input,.field-group select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;box-sizing:border-box;max-width:100%;overflow:hidden;text-overflow:ellipsis}.field-group input:focus,.field-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.field-group input::placeholder{color:#999;font-style:italic}@media (max-width: 768px){.bulk-operations-tab{padding:15px}.tab-header{flex-direction:column;gap:15px;align-items:flex-start}.sync-controls{flex-direction:column;align-items:flex-start;gap:15px}.sync-button{width:100%;padding:15px}.bulk-update-controls{flex-direction:column}.update-button,.clear-button{width:100%;padding:15px}.earnings-grid{grid-template-columns:1fr;gap:15px}.earning-card{padding:15px}.card-header{flex-direction:column;align-items:flex-start;gap:10px}.field-group input,.field-group select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}}.result-message{margin-top:20px;padding:15px;border-radius:8px;border:1px solid}.result-message.success{background:#d4edda;color:#155724;border-color:#c3e6cb}.result-message.error{background:#f8d7da;color:#721c24;border-color:#f5c6cb}.result-message h4{margin:0 0 10px;font-size:1rem;font-weight:600}.result-message p{margin:0 0 10px;font-size:.9rem}.result-message ul{margin:0;padding-left:20px}.result-message li{margin-bottom:5px;font-size:.9rem}.earnings-calendar-admin{padding:20px;max-width:1400px;margin:0 auto;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.date-filters{display:flex;gap:20px;align-items:center}.filter-group input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;min-width:150px}.filter-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.tab-navigation{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e9ecef;padding-bottom:0}.tab-button{padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#6c757d;transition:all .2s ease;border-radius:6px 6px 0 0}.footer{display:flex;justify-content:space-between;align-items:center;padding:16px 0;margin-top:24px;border-top:1px solid #e9ecef;font-size:14px;color:#6c757d}.footer-left{display:flex;gap:16px;align-items:center}.selection-badge{background:#007bff;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.footer-right{display:flex;gap:16px;align-items:center}@media (max-width: 768px){.earnings-calendar-admin{padding:16px}.date-filters{flex-direction:column;gap:12px}.tab-navigation{flex-wrap:wrap;gap:4px}.tab-button{padding:8px 12px;font-size:12px}.footer{flex-direction:column;gap:8px;align-items:flex-start}}.stored-expiries-tab{display:flex;flex-direction:column;height:100%}.last-refreshed{font-size:12px;color:#6c757d;font-style:italic}.refresh-button{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.refresh-button:hover:not(:disabled){background:#0056b3}.refresh-button:disabled{background:#6c757d;cursor:not-allowed}.selection-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.selection-info{font-size:14px;color:#495057;font-weight:500}.selection-actions{display:flex;gap:8px}.select-all-button,.deselect-all-button,.bulk-edit-button{padding:6px 12px;border:1px solid #ced4da;border-radius:4px;background:#fff;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease}.select-all-button:hover:not(:disabled),.deselect-all-button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.bulk-edit-button{background:#28a745;color:#fff;border-color:#28a745}.bulk-edit-button:hover{background:#218838;border-color:#1e7e34}.select-all-button:disabled,.deselect-all-button:disabled{opacity:.5;cursor:not-allowed}.expiries-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.4}.expiries-table th{background:#f8f9fa;padding:12px 8px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;position:sticky;top:0;z-index:10;vertical-align:middle;line-height:1.4}.expiries-table td{padding:10px 8px;border-bottom:1px solid #e9ecef;vertical-align:middle;line-height:1.4}.expiries-table tbody tr.selected{background:#e3f2fd}.expiries-table tbody tr.selected:hover{background:#bbdefb}.checkbox-column{width:40px;text-align:center;vertical-align:middle;padding:10px 4px}.checkbox-column input[type=checkbox]{width:16px;height:16px;cursor:pointer;margin:0;position:relative;top:2px}.expiries-table th.checkbox-column,.expiries-table td.checkbox-column{text-align:center;vertical-align:middle}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin-top:16px;border-top:1px solid #e9ecef;font-size:14px;color:#6c757d}.footer-info{display:flex;gap:16px;align-items:center}.selected-count{background:#007bff;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}@media (max-width: 768px){.tab-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:space-between}.selection-controls{flex-direction:column;align-items:stretch;gap:12px}.selection-actions{justify-content:center;flex-wrap:wrap}.expiries-table{font-size:12px}.expiries-table th,.expiries-table td{padding:6px 4px}.table-footer{flex-direction:column;gap:8px;text-align:center}}.calculated-expiries-tab{display:flex;flex-direction:column;height:100%}.last-fetched{font-size:12px;color:#6c757d;font-style:italic}.fetch-button{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.fetch-button:hover:not(:disabled){background:#218838}.fetch-button:disabled{background:#6c757d;cursor:not-allowed}.results-section{display:flex;flex-direction:column;height:100%}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;background:#d4edda;border-radius:6px;border:1px solid #c3e6cb}.results-header h4{margin:0;color:#155724;font-size:16px;font-weight:600}.results-summary{font-size:14px;color:#155724;font-weight:500}.empty-state{text-align:center;padding:40px;color:#6c757d}.empty-state p{margin:8px 0;font-size:16px}.expiries-table-container{flex:1;overflow-x:auto;border:1px solid #e9ecef;border-radius:6px}.expiries-table{width:100%;border-collapse:collapse;font-size:14px}.expiries-table th{background:#f8f9fa;padding:12px 8px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;position:sticky;top:0;z-index:10}.expiries-table td{padding:10px 8px;border-bottom:1px solid #e9ecef;vertical-align:middle}.expiries-table tbody tr:hover{background:#f8f9fa}.status-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;display:inline-block}.status-badge.adjusted{background:#d4edda;color:#155724}.status-badge.calculated{background:#d1ecf1;color:#0c5460}.results-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin-top:16px;border-top:1px solid #e9ecef;font-size:14px;color:#6c757d}@media (max-width: 768px){.tab-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:space-between}.results-header{flex-direction:column;align-items:flex-start;gap:8px}.expiries-table{font-size:12px}.expiries-table th,.expiries-table td{padding:6px 4px}.results-footer{flex-direction:column;gap:8px;text-align:center}.footer-info{justify-content:center}}.comparison-tab{display:flex;flex-direction:column;height:100%}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e9ecef}.tab-header h3{margin:0;color:#2c3e50;font-size:20px;font-weight:600}.header-actions{display:flex;align-items:center;gap:16px}.last-compared{font-size:12px;color:#6c757d;font-style:italic}.compare-button{padding:8px 16px;background:#17a2b8;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.compare-button:hover:not(:disabled){background:#138496}.compare-button:disabled{background:#6c757d;cursor:not-allowed}.initial-state{display:flex;justify-content:center;align-items:center;min-height:300px;padding:40px}.initial-content{text-align:center;max-width:500px;color:#6c757d}.initial-content h4{color:#2c3e50;margin-bottom:16px;font-size:18px}.initial-content p{margin:8px 0;font-size:16px;line-height:1.5}.filter-info{margin-top:24px;padding:16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;text-align:left}.filter-info p{margin:4px 0;font-size:14px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#6c757d}.loading-container p{margin-top:16px;font-size:16px}.error-container{padding:20px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.error-container p{margin:0 0 8px}.error-message{font-family:monospace;background:#f8f9fa;padding:8px;border-radius:4px;margin:8px 0}.retry-button{padding:8px 16px;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.retry-button:hover{background:#c82333}.comparison-results{display:flex;flex-direction:column;height:100%}.comparison-summary{margin-bottom:24px;padding:16px;background:#e3f2fd;border-radius:6px;border:1px solid #bbdefb}.comparison-summary h4{margin:0 0 16px;color:#1565c0;font-size:16px;font-weight:600}.summary-stats{display:flex;gap:24px;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-label{font-size:12px;color:#6c757d;font-weight:500}.stat-value{font-size:18px;font-weight:600;color:#2c3e50}.stat-value.added{color:#28a745}.stat-value.removed{color:#dc3545}.stat-value.modified{color:#ffc107}.no-differences{text-align:center;padding:40px;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}.no-differences p{margin:8px 0;font-size:16px}.differences-section{flex:1;overflow-y:auto}.differences-section h4{margin:0 0 16px;color:#2c3e50;font-size:16px;font-weight:600}.differences-list{display:flex;flex-direction:column;gap:12px}.difference-item{padding:16px;border-radius:6px;border:1px solid #e9ecef;background:#fff}.difference-item.added{border-left:4px solid #28a745;background:#f8fff9}.difference-item.removed{border-left:4px solid #dc3545;background:#fff8f8}.difference-item.modified{border-left:4px solid #ffc107;background:#fffef8}.difference-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.difference-icon{font-size:16px}.difference-type{font-weight:600;color:#2c3e50;font-size:14px}.difference-description{color:#6c757d;font-size:14px;flex:1}.difference-details{margin-top:8px}.detail-group{display:flex;gap:8px;margin-bottom:4px}.detail-label{font-weight:500;color:#495057;font-size:12px;min-width:80px}.detail-value{color:#2c3e50;font-size:12px;font-family:monospace}.comparison-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin-top:16px;border-top:1px solid #e9ecef;font-size:14px;color:#6c757d}.footer-info{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.footer-actions{display:flex;gap:8px}.refresh-button{padding:6px 12px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:background-color .2s ease}.refresh-button:hover{background:#0056b3}@media (max-width: 768px){.tab-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:space-between}.summary-stats{justify-content:center;gap:16px}.difference-header{flex-direction:column;align-items:flex-start;gap:4px}.detail-group{flex-direction:column;gap:2px}.comparison-footer{flex-direction:column;gap:8px;text-align:center}.footer-info{justify-content:center}}.bulk-operations-tab{padding:20px;max-width:1200px;margin:0 auto}.tab-header{margin-bottom:30px;text-align:center}.tab-header h3{margin:0 0 10px;color:#333;font-size:24px}.tab-header p{margin:0 0 15px;color:#666;font-size:16px}.selected-count{background:#e3f2fd;color:#1976d2;padding:8px 16px;border-radius:20px;font-weight:500;display:inline-block;margin-bottom:15px}.clear-results-btn{background:#f5f5f5;border:1px solid #ddd;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;color:#666}.clear-results-btn:hover{background:#e0e0e0}.operations-container{display:flex;flex-direction:column;gap:30px}.operation-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.operation-section h4{margin:0 0 10px;color:#333;font-size:18px}.operation-section p{margin:0 0 15px;color:#666;font-size:14px}.sync-controls{display:flex;flex-direction:column;gap:15px;align-items:flex-start}.checkbox-group{display:flex;align-items:center;gap:8px}.checkbox-group input[type=checkbox]{margin:0}.checkbox-group label{font-size:14px;color:#333;cursor:pointer}.sync-button{background:#2196f3;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.sync-button:hover:not(:disabled){background:#1976d2}.sync-button:disabled{background:#ccc;cursor:not-allowed}.sync-stats{display:flex;gap:20px;margin-top:10px;font-size:14px;color:#666}.sync-stats span{background:#f5f5f5;padding:4px 8px;border-radius:4px}.bulk-update-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:15px;margin-bottom:20px}.bulk-update-info h5{margin:0 0 10px;color:#495057;font-size:16px}.bulk-update-info p{margin:0 0 10px;color:#6c757d;font-size:14px}.bulk-update-info ul{margin:0 0 10px;padding-left:20px;color:#6c757d;font-size:14px}.bulk-update-info li{margin-bottom:5px}.bulk-update-info em{color:#495057;font-style:italic}.no-selection{text-align:center;padding:40px 20px;color:#666}.no-selection p{margin:0 0 10px;font-size:16px}.no-selection p:last-child{font-size:14px;color:#999}.bulk-update-form{margin-top:20px}.selection-summary{margin-bottom:20px;text-align:center}.selection-summary h5{margin:0 0 10px;color:#333;font-size:16px}.selection-summary p{margin:0;color:#666;font-size:14px}.expiries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:20px}.expiry-card{border:1px solid #e0e0e0;border-radius:8px;padding:15px;background:#fff;transition:all .2s ease}.expiry-card.has-changes{border-color:#ff9800;background:#fff8e1}.expiry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #f0f0f0}.expiry-header h6{margin:0;color:#333;font-size:16px;font-weight:600}.exchange{background:#e3f2fd;color:#1976d2;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.change-badge{background:#ff9800;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.expiry-fields{display:flex;flex-direction:column;gap:12px}.field-row{display:flex;flex-direction:column;gap:5px}.field-row label{font-size:12px;color:#666;font-weight:500}.field-comparison{display:flex;flex-direction:column;gap:5px}.current-value{font-size:12px;color:#999;background:#f5f5f5;padding:4px 8px;border-radius:4px;font-family:monospace}.edit-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:100%;box-sizing:border-box}.edit-input:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.update-button{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;margin:0 auto}.update-button:hover:not(:disabled){background:#45a049}.update-button:disabled{background:#ccc;cursor:not-allowed}.delete-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:15px;margin-bottom:20px}.delete-warning p{margin:0 0 10px;color:#856404;font-size:14px}.delete-warning p:last-child{margin-bottom:0;font-weight:500}.delete-button{background:#f44336;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.delete-button:hover:not(:disabled){background:#d32f2f}.delete-button:disabled{background:#ccc;cursor:not-allowed}.result-message{margin-top:15px;padding:15px;border-radius:6px;border-left:4px solid}.result-message.success{background:#d4edda;border-color:#28a745;color:#155724}.result-message.error{background:#f8d7da;border-color:#dc3545;color:#721c24}.result-message h5{margin:0 0 10px;font-size:16px;font-weight:600}.result-message p{margin:0 0 10px;font-size:14px}.result-message ul{margin:0;padding-left:20px;font-size:14px}.result-message li{margin-bottom:5px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop)}.delete-confirmation-modal{background:#fff;border-radius:8px;padding:30px;max-width:500px;width:90%;box-shadow:0 4px 20px #0000004d}.delete-confirmation-modal h4{margin:0 0 15px;color:#333;font-size:18px}.delete-confirmation-modal p{margin:0 0 15px;color:#666;font-size:14px;line-height:1.5}.delete-confirmation-modal p:last-of-type{margin-bottom:25px;color:#d32f2f;font-weight:500}.modal-actions{display:flex;gap:15px;justify-content:flex-end}.cancel-button{background:#f5f5f5;color:#333;border:1px solid #ddd;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-button:hover{background:#e0e0e0}.confirm-delete-button{background:#f44336;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.confirm-delete-button:hover{background:#d32f2f}@media (max-width: 768px){.bulk-operations-tab{padding:15px}.expiries-grid{grid-template-columns:1fr}.sync-stats{flex-direction:column;gap:10px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.option-expiry-admin{padding:20px;max-width:1400px;margin:0 auto;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.page-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.page-header h1{margin:0 0 8px;color:#2c3e50;font-size:28px;font-weight:600}.page-header p{margin:0;color:#6c757d;font-size:16px}.filters-section{margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.date-filters{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-weight:500;color:#495057;font-size:14px}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;min-width:150px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.tab-navigation{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e9ecef;padding-bottom:0;flex-wrap:wrap}.tab-button{padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#6c757d;transition:all .2s ease;border-radius:6px 6px 0 0;position:relative;white-space:nowrap}.tab-button:hover{background:#f8f9fa;color:#495057}.tab-button.active{color:#007bff;border-bottom-color:#007bff;background:#f8f9fa}.tab-button .selection-badge{position:absolute;top:-8px;right:-8px;background:#dc3545;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.tab-content{min-height:400px;padding:20px 0}.footer{display:flex;justify-content:space-between;align-items:center;padding:16px 0;margin-top:24px;border-top:1px solid #e9ecef;font-size:14px;color:#6c757d;flex-wrap:wrap;gap:16px}.footer-left,.footer-right{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.footer .selection-badge{background:#007bff;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}@media (max-width: 768px){.option-expiry-admin{padding:16px}.date-filters{flex-direction:column;align-items:stretch}.filter-group input,.filter-group select{min-width:auto}.tab-navigation{flex-direction:column}.tab-button{border-radius:6px;border-bottom:none;border-left:3px solid transparent}.tab-button.active{border-left-color:#007bff;border-bottom-color:transparent}.footer{flex-direction:column;align-items:flex-start}}.portfolio-admin-user-selection{padding:24px;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.portfolio-admin-step-header{margin-bottom:24px}.portfolio-admin-step-header h2{color:var(--text-primary);font-size:28px;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portfolio-admin-step-header p{color:var(--text-secondary);font-size:14px;margin:0}.portfolio-admin-users-controls{display:grid;grid-template-columns:1fr auto auto;gap:16px;margin-bottom:24px;align-items:center}.portfolio-admin-search-box{position:relative;min-width:0;max-width:100%;overflow:hidden}.portfolio-admin-search-input{width:100%;padding:12px 16px 12px 44px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;transition:all .2s ease;box-sizing:border-box;min-width:0}.portfolio-admin-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:16px}.portfolio-admin-role-filter{padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease;min-width:120px}.portfolio-admin-role-filter:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.portfolio-admin-sort-select{padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease;min-width:140px}.portfolio-admin-sort-select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.portfolio-admin-users-table-container{background:var(--bg-secondary);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.portfolio-admin-users-table{width:100%;border-collapse:collapse}.portfolio-admin-users-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:14px;text-align:left;padding:16px;border-bottom:1px solid var(--bg-tertiary)}.portfolio-admin-users-table td{padding:16px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-size:14px}.portfolio-admin-users-table tbody tr:hover{background:var(--bg-tertiary)}.portfolio-admin-user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;margin-right:12px}.portfolio-admin-user-info{display:flex;align-items:center}.portfolio-admin-user-details h4{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text-primary)}.portfolio-admin-user-details p{margin:0;font-size:12px;color:var(--text-secondary)}.portfolio-admin-role-badge{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;text-transform:uppercase}.portfolio-admin-role-badge.admin{background:#ef44441a;color:#ef4444}.portfolio-admin-role-badge.user{background:#3b82f61a;color:#3b82f6}.portfolio-admin-role-badge.readonly{background:#6b72801a;color:#6b7280}.portfolio-admin-status-badge{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.portfolio-admin-status-badge.active{background:#22c55e1a;color:#22c55e}.portfolio-admin-status-badge.inactive{background:#ef44441a;color:#ef4444}.portfolio-admin-last-login{color:var(--text-secondary);font-size:12px}.portfolio-admin-select-user-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.portfolio-admin-select-user-button:hover:not(:disabled){box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.portfolio-admin-select-user-button:disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed;transform:none;box-shadow:none}.portfolio-admin-no-users{text-align:center;padding:48px 24px;color:var(--text-secondary)}.portfolio-admin-no-users-icon{font-size:48px;margin-bottom:16px}.portfolio-admin-no-users h3{margin:0 0 8px;font-size:18px;color:var(--text-primary)}.portfolio-admin-no-users p{margin:0;font-size:14px}.portfolio-admin-pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:24px}.portfolio-admin-pagination-info{color:var(--text-secondary);font-size:14px}.portfolio-admin-pagination-controls{display:flex;gap:8px;align-items:center}.portfolio-admin-page-button{padding:8px 12px;border:1px solid var(--bg-tertiary);background:var(--bg-secondary);color:var(--text-primary);border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;min-width:40px}.portfolio-admin-page-button:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--primary-blue)}.portfolio-admin-page-button:disabled{opacity:.5;cursor:not-allowed}.portfolio-admin-page-button.active{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.portfolio-admin-page-size-selector{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}.portfolio-admin-page-size-select{padding:6px 8px;border:1px solid var(--bg-tertiary);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;cursor:pointer}@media (max-width: 768px){.portfolio-admin-users-controls{grid-template-columns:1fr;gap:12px}.portfolio-admin-search-box{order:1}.portfolio-admin-role-filter{order:2;min-width:auto}.portfolio-admin-sort-select{order:3;min-width:auto}.portfolio-admin-user-selection{padding:16px}.portfolio-admin-users-table-container{overflow-x:auto}.portfolio-admin-users-table{min-width:600px}.portfolio-admin-pagination{flex-direction:column;align-items:stretch}.portfolio-admin-pagination-controls{justify-content:center}}.copy-positions-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.copy-positions-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:1px solid #e1e5e9}.modal-header h3{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.close-button{background:none;border:none;font-size:28px;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-button:hover{background:#f8f9fa;color:#495057}.modal-content{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:24px}.search-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.search-box{flex:1;min-width:250px}.search-input{width:100%;padding:12px 16px;border:1px solid #ced4da;border-radius:8px;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.filter-controls{display:flex;gap:12px}.filter-select{padding:12px 16px;border:1px solid #ced4da;border-radius:8px;font-size:14px;background:#fff;min-width:150px;transition:border-color .2s ease,box-shadow .2s ease}.filter-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.selection-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #e1e5e9}.summary-info{display:flex;gap:16px;align-items:center}.total-positions{font-weight:500;color:#495057}.selected-count{background:#007bff;color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.positions-table-container{flex:1;overflow:auto;border:1px solid #e1e5e9;border-radius:8px;background:#fff}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6c757d}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.empty-state p{margin:8px 0}.positions-table{width:100%;border-collapse:collapse;font-size:14px}.positions-table th{background:#f8f9fa;padding:16px 12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e1e5e9;position:sticky;top:0;z-index:10}.positions-table td{padding:16px 12px;border-bottom:1px solid #e1e5e9;vertical-align:middle}.positions-table tbody tr:hover{background:#f8f9fa}.checkbox-column{width:50px;text-align:center}.symbol-cell{font-weight:600;color:#007bff}.quantity-cell{text-align:right;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.account-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-cell{text-align:center;white-space:nowrap}.value-cell{text-align:right;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.select-all-checkbox,.position-checkbox{width:18px;height:18px;cursor:pointer}.type-badge{background:#e9ecef;color:#495057;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-top:1px solid #e1e5e9;background:#f8f9fa}.footer-info{display:flex;align-items:center}.copy-info{background:#28a745;color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.footer-actions{display:flex;gap:12px}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:80px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.btn-secondary:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.btn-outline:hover:not(:disabled){background:#007bff;color:#fff}.btn-sm{padding:6px 12px;font-size:12px;min-width:60px}@media (max-width: 1024px){.copy-positions-modal{max-width:95vw;max-height:95vh}.search-filters{flex-direction:column}.search-box{min-width:auto}.filter-controls{justify-content:stretch}.filter-select{flex:1;min-width:auto}}@media (max-width: 768px){.copy-positions-modal-overlay{padding:10px}.copy-positions-modal{max-height:98vh}.modal-header,.modal-content,.modal-footer{padding:16px}.modal-header h3{font-size:20px}.selection-summary{flex-direction:column;gap:12px;align-items:stretch}.summary-info{justify-content:center}.footer-actions{flex-direction:column;width:100%}.btn{width:100%}.positions-table-container{overflow-x:auto}.positions-table{min-width:800px}}@media (max-width: 480px){.copy-positions-modal-overlay{padding:5px}.modal-header,.modal-content,.modal-footer{padding:12px}.search-filters{gap:12px}.filter-controls{flex-direction:column;gap:8px}.positions-table th,.positions-table td{padding:12px 8px;font-size:12px}.type-badge{font-size:10px;padding:2px 6px}}.search-input:focus-visible,.filter-select:focus-visible,.btn:focus-visible{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.copy-positions-modal{border:2px solid #000000}.positions-table th,.positions-table td{border:1px solid #000000}.btn{border:2px solid #000000}}.add-position-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;min-width:120px;position:relative;overflow:hidden}.add-position-button:disabled{opacity:.6;cursor:not-allowed}.add-position-button:not(:disabled):hover{transform:translateY(-1px)}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3;box-shadow:0 4px 8px #007bff4d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#545b62;box-shadow:0 4px 8px #6c757d4d}.btn-outline{background:transparent;color:#007bff;border:1px solid #007bff}.btn-outline:hover:not(:disabled){background:#007bff;color:#fff;box-shadow:0 4px 8px #007bff4d}.btn-sm{padding:6px 12px;font-size:12px;min-width:80px}.btn-md{padding:10px 16px;font-size:14px;min-width:120px}.btn-lg{padding:14px 20px;font-size:16px;min-width:140px}.button-icon{font-size:18px;font-weight:700;line-height:1}.loading{pointer-events:none}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.add-position-button:focus-visible{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.add-position-button{border:2px solid #000000}}@media (max-width: 480px){.add-position-button{width:100%;min-width:auto}}.portfolio-admin-account-selection{padding:24px;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.portfolio-admin-error-state{text-align:center;padding:48px 24px;color:var(--text-secondary)}.portfolio-admin-error-state h3{margin:0 0 16px;font-size:20px;color:var(--text-primary)}.portfolio-admin-error-state p{margin:0 0 24px;font-size:14px}.portfolio-admin-accounts-container{background:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.portfolio-admin-accounts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.portfolio-admin-select-all-section{display:flex;align-items:center}.portfolio-admin-selection-info{display:flex;align-items:center}.portfolio-admin-accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.portfolio-admin-account-card{background:var(--bg-primary);border:2px solid var(--bg-tertiary);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s ease;position:relative}.portfolio-admin-account-card:hover{border-color:var(--primary-blue);box-shadow:0 4px 12px #3b82f61a}.portfolio-admin-account-card.selected{border-color:var(--primary-blue);background:#3b82f60d;box-shadow:0 4px 12px #3b82f633}.portfolio-admin-account-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.portfolio-admin-account-name{font-weight:600;font-size:16px;color:var(--text-primary);margin-left:8px}.portfolio-admin-retirement-badge{background:#22c55e1a;color:#22c55e;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:500;text-transform:uppercase}.portfolio-admin-account-details{display:flex;flex-direction:column;gap:8px}.portfolio-admin-account-info{display:flex;justify-content:space-between;align-items:center;font-size:14px}.portfolio-admin-account-label{color:var(--text-secondary);font-weight:500}.portfolio-admin-account-value{color:var(--text-primary);font-weight:600}.portfolio-admin-no-accounts{text-align:center;padding:48px 24px;color:var(--text-secondary)}.portfolio-admin-no-accounts-icon{font-size:48px;margin-bottom:16px}.portfolio-admin-no-accounts h3{margin:0 0 8px;font-size:18px;color:var(--text-primary)}.portfolio-admin-no-accounts p{margin:0;font-size:14px}.portfolio-admin-no-accounts-actions{display:flex;gap:12px;margin-top:20px;justify-content:center}.portfolio-admin-step-actions{display:flex;justify-content:flex-end;margin-top:24px}.portfolio-admin-continue-button{background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));color:#fff;border:none;border-radius:12px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-continue-button:hover:not(:disabled){box-shadow:0 8px 24px #3b82f64d;transform:translateY(-2px)}.portfolio-admin-continue-button:disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.portfolio-admin-account-selection,.portfolio-admin-accounts-container{padding:16px}.portfolio-admin-accounts-header{flex-direction:column;align-items:stretch}.portfolio-admin-accounts-grid{grid-template-columns:1fr}.portfolio-admin-account-card{padding:16px}.portfolio-admin-step-actions{justify-content:stretch}.portfolio-admin-continue-button{width:100%;justify-content:center}}.portfolio-admin-date-selection{padding:24px;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.portfolio-admin-back-section{margin-bottom:24px}.portfolio-admin-actions{display:flex;gap:12px;align-items:center}.portfolio-admin-date-selection-container{background:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.portfolio-admin-date-range-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--bg-tertiary)}.portfolio-admin-date-range-section h3{margin:0 0 8px;font-size:18px;color:var(--text-primary);font-weight:600}.portfolio-admin-date-range-section p{margin:0 0 16px;font-size:14px;color:var(--text-secondary)}.portfolio-admin-date-range-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.portfolio-admin-date-input-group{display:flex;flex-direction:column;gap:8px}.portfolio-admin-date-input-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.portfolio-admin-date-input{padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s ease}.portfolio-admin-date-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.portfolio-admin-date-range-info{display:flex;justify-content:flex-end}.portfolio-admin-date-range-count{background:var(--primary-blue);color:#fff;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.portfolio-admin-individual-dates-section{margin-bottom:24px}.portfolio-admin-individual-dates-header{margin-bottom:20px}.portfolio-admin-individual-dates-header h3{margin:0 0 8px;font-size:18px;color:var(--text-primary);font-weight:600}.portfolio-admin-individual-dates-header p{margin:0 0 16px;font-size:14px;color:var(--text-secondary)}.portfolio-admin-select-all-dates{display:flex;align-items:center;margin-bottom:16px}.portfolio-admin-dates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:16px}.portfolio-admin-date-card{background:var(--bg-primary);border:2px solid var(--bg-tertiary);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease}.portfolio-admin-date-card:hover{border-color:var(--primary-blue);box-shadow:0 2px 8px #3b82f61a}.portfolio-admin-date-card.selected{border-color:var(--primary-blue);background:#3b82f60d;box-shadow:0 2px 8px #3b82f633}.portfolio-admin-date-text{font-size:14px;font-weight:500;color:var(--text-primary);margin-left:8px}.portfolio-admin-individual-dates-info{display:flex;justify-content:flex-end}.portfolio-admin-individual-dates-count{background:var(--primary-blue);color:#fff;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.portfolio-admin-no-dates{text-align:center;padding:48px 24px;color:var(--text-secondary)}.portfolio-admin-no-dates-icon{font-size:48px;margin-bottom:16px}.portfolio-admin-no-dates h3{margin:0 0 8px;font-size:18px;color:var(--text-primary)}.portfolio-admin-no-dates p{margin:0;font-size:14px}.portfolio-admin-no-dates-actions{display:flex;gap:12px;margin-top:20px;justify-content:center}@media (max-width: 768px){.portfolio-admin-date-selection,.portfolio-admin-date-selection-container{padding:16px}.portfolio-admin-date-range-inputs{grid-template-columns:1fr}.portfolio-admin-dates-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.portfolio-admin-date-card{padding:10px 12px}}.ap-portfolio-edit-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--z-modal);display:none}.ap-portfolio-edit-modal.open{display:flex;align-items:center;justify-content:center}.ap-portfolio-edit-modal .ap-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-modal-backdrop)}.ap-portfolio-edit-modal .ap-modal-content{position:relative;background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;z-index:var(--z-modal)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ap-portfolio-edit-modal .ap-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;border-radius:8px 8px 0 0}.ap-portfolio-edit-modal .ap-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.ap-portfolio-edit-modal .ap-close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:all .2s}.ap-portfolio-edit-modal .ap-close-button:hover{background-color:#e5e7eb;color:#374151}.ap-portfolio-edit-modal .ap-close-button:disabled{opacity:.5;cursor:not-allowed}.ap-portfolio-edit-modal .ap-modal-body{padding:24px}.ap-portfolio-info{background:#f3f4f6;border-radius:6px;padding:16px;margin-bottom:24px;border-left:4px solid #3b82f6}.ap-info-row{display:flex;justify-content:space-between;margin-bottom:8px}.ap-info-row:last-child{margin-bottom:0}.ap-info-row .ap-label{font-weight:500;color:#374151;min-width:80px}.ap-info-row .ap-value{color:#111827;font-weight:600}.ap-edit-form{display:flex;flex-direction:column;gap:20px}.ap-form-group{display:flex;flex-direction:column;gap:6px}.ap-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ap-form-group label{font-weight:500;color:#374151;font-size:.875rem}.ap-form-group input{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.ap-form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.ap-form-group input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.ap-form-group input::placeholder{color:#9ca3af}.ap-error-messages{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;margin-top:8px}.ap-error-message{color:#dc2626;font-size:.875rem;margin-bottom:4px}.ap-error-message:last-child{margin-bottom:0}.ap-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:20px;border-top:1px solid #e5e7eb}.ap-btn{padding:10px 20px;border:none;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;min-width:100px}.ap-btn:disabled{opacity:.5;cursor:not-allowed}.ap-btn-primary{background-color:#3b82f6;color:#fff}.ap-btn-primary:hover:not(:disabled){background-color:#2563eb}.ap-btn-secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}@media (max-width: 640px){.ap-portfolio-edit-modal .ap-modal-content{width:95%;margin:20px}.ap-portfolio-edit-modal .ap-form-row{grid-template-columns:1fr;gap:12px}.ap-portfolio-edit-modal .ap-form-actions{flex-direction:column-reverse}.ap-portfolio-edit-modal .ap-btn{width:100%}}.portfolio-admin-portfolio-management{padding:24px;max-width:1400px;margin:0 auto;background:var(--bg-primary);min-height:calc(100vh - 200px)}.portfolio-admin-back-section{display:flex;gap:12px;margin-bottom:24px}.portfolio-admin-back-button{background:none;border:1px solid var(--bg-tertiary);color:var(--text-primary);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-back-button:hover{background:var(--bg-secondary);border-color:var(--primary-blue)}.portfolio-admin-reset-button{background:var(--bg-tertiary);border:1px solid var(--bg-tertiary);color:var(--text-primary);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease}.portfolio-admin-reset-button:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.portfolio-admin-portfolio-container{background:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.portfolio-admin-portfolio-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.portfolio-admin-search-section{flex:1;max-width:400px}.portfolio-admin-search-input{width:100%;padding:12px 16px;border:1px solid var(--bg-tertiary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:all .2s ease}.portfolio-admin-search-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.portfolio-admin-selection-section{display:flex;align-items:center;gap:16px}.portfolio-admin-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary)}.portfolio-admin-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-blue)}.portfolio-admin-checkbox-text{font-weight:500}.portfolio-admin-selection-count{background:var(--primary-blue);color:#fff;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.portfolio-admin-delete-button{background:#ef4444;border:1px solid #ef4444;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-delete-button:hover:not(:disabled){background:#dc2626;border-color:#dc2626;transform:translateY(-1px)}.portfolio-admin-delete-button:disabled{opacity:.6;cursor:not-allowed}.portfolio-admin-bulk-edit-button{background:var(--primary-blue);border:1px solid var(--primary-blue);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-bulk-edit-button:hover{background:var(--primary-blue-dark);border-color:var(--primary-blue-dark)}.portfolio-admin-actions-cell{white-space:nowrap}.portfolio-admin-actions-container{display:flex;gap:8px;align-items:center}.portfolio-admin-edit-button{background:var(--bg-tertiary);border:1px solid var(--bg-tertiary);color:var(--text-primary);padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.portfolio-admin-edit-button:hover{background:var(--bg-secondary);border-color:var(--primary-blue);color:var(--primary-blue)}.portfolio-admin-copy-button{background:var(--bg-tertiary);border:1px solid var(--bg-tertiary);color:var(--text-primary);padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.portfolio-admin-copy-button:hover{background:#28a745;border-color:#28a745;color:#fff}.portfolio-admin-portfolio-table-container{overflow-x:auto;margin-bottom:24px}.portfolio-admin-portfolio-table{width:100%;border-collapse:collapse;min-width:1200px}.portfolio-admin-portfolio-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:14px;text-align:left;padding:12px 16px;border-bottom:1px solid var(--bg-tertiary);white-space:nowrap}.portfolio-admin-portfolio-table td{padding:12px 16px;border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary);font-size:14px;white-space:nowrap}.portfolio-admin-portfolio-table tbody tr:hover{background:var(--bg-tertiary)}.portfolio-admin-sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.portfolio-admin-sortable-header:hover{background:var(--bg-secondary)}.portfolio-admin-symbol{font-weight:600;color:var(--primary-blue)}.portfolio-admin-description{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-admin-gain-loss{font-weight:600}.portfolio-admin-gain-loss.positive{color:#22c55e}.portfolio-admin-gain-loss.negative{color:#ef4444}.portfolio-admin-type-badge{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;text-transform:uppercase}.portfolio-admin-type-badge.stock{background:#3b82f61a;color:#3b82f6}.portfolio-admin-type-badge.option{background:#a855f71a;color:#a855f7}.portfolio-admin-type-badge.etf{background:#22c55e1a;color:#22c55e}.portfolio-admin-type-badge.mutual-fund{background:#f59e0b1a;color:#f59e0b}.portfolio-admin-no-positions{text-align:center;padding:48px 24px;color:var(--text-secondary)}.portfolio-admin-no-positions-icon{font-size:48px;margin-bottom:16px}.portfolio-admin-no-positions h3{margin:0 0 8px;font-size:18px;color:var(--text-primary)}.portfolio-admin-no-positions p{margin:0;font-size:14px}.portfolio-admin-no-positions-actions{display:flex;gap:12px;margin-top:20px;justify-content:center}.portfolio-admin-refresh-button{background:var(--primary-blue);border:1px solid var(--primary-blue);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-refresh-button:hover{background:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.portfolio-admin-summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:20px;background:var(--bg-primary);border-radius:8px;border:1px solid var(--bg-tertiary)}.portfolio-admin-stat{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary);border-radius:6px}.portfolio-admin-stat-label{font-size:14px;color:var(--text-secondary);font-weight:500}.portfolio-admin-stat-value{font-size:16px;font-weight:600;color:var(--text-primary)}.portfolio-admin-stat-value.positive{color:#22c55e}.portfolio-admin-stat-value.negative{color:#ef4444}@media (max-width: 768px){.portfolio-admin-portfolio-management,.portfolio-admin-portfolio-container{padding:16px}.portfolio-admin-portfolio-controls{flex-direction:column;align-items:stretch}.portfolio-admin-search-section{max-width:none}.portfolio-admin-selection-section{justify-content:space-between}.portfolio-admin-portfolio-table-container{margin:0 -16px}.portfolio-admin-portfolio-table{min-width:800px}.portfolio-admin-summary-stats{grid-template-columns:1fr}}.portfolio-admin-dashboard{padding:24px;background:var(--bg-primary);min-height:100vh;max-width:1400px;margin:0 auto}.portfolio-admin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 8px #0000001a}.portfolio-admin-header-content h1{margin:0 0 8px;font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portfolio-admin-header-content p{margin:0;color:var(--text-secondary);font-size:14px}.portfolio-admin-header-actions{display:flex;gap:12px}.portfolio-admin-reset-workflow-button{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--bg-tertiary);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.portfolio-admin-reset-workflow-button:hover{background:var(--bg-primary);border-color:var(--primary-blue);color:var(--primary-blue)}.portfolio-admin-progress{margin-bottom:32px;padding:24px;background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 8px #0000001a}.portfolio-admin-progress-steps{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.portfolio-admin-progress-step{display:flex;align-items:flex-start;gap:12px;flex:1;position:relative}.portfolio-admin-progress-step:not(:last-child):after{content:"";position:absolute;top:20px;left:32px;right:-16px;height:2px;background:var(--bg-tertiary);z-index:1}.portfolio-admin-progress-step.completed:not(:last-child):after{background:var(--primary-blue)}.portfolio-admin-progress-step-number{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;background:var(--bg-tertiary);color:var(--text-secondary);border:2px solid var(--bg-tertiary);z-index:2;transition:all .3s ease}.portfolio-admin-progress-step.active .portfolio-admin-progress-step-number{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue);box-shadow:0 0 0 4px #3b82f633}.portfolio-admin-progress-step.completed .portfolio-admin-progress-step-number{background:var(--accent-green);color:#fff;border-color:var(--accent-green)}.portfolio-admin-progress-step.disabled .portfolio-admin-progress-step-number{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--bg-tertiary);opacity:.5}.portfolio-admin-progress-step-content{flex:1;min-width:0}.portfolio-admin-progress-step-title{display:block;font-weight:600;font-size:14px;color:var(--text-primary);margin-bottom:4px}.portfolio-admin-progress-step-description{display:block;font-size:12px;color:var(--text-secondary);line-height:1.4}.portfolio-admin-progress-step.disabled .portfolio-admin-progress-step-title,.portfolio-admin-progress-step.disabled .portfolio-admin-progress-step-description{color:var(--text-secondary);opacity:.5}.portfolio-admin-step-content{margin-bottom:32px}.portfolio-admin-workflow-summary{padding:20px;background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 8px #0000001a;border-left:4px solid var(--primary-blue)}.portfolio-admin-workflow-summary h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary)}.portfolio-admin-summary-items{display:flex;flex-direction:column;gap:12px}.portfolio-admin-summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--bg-tertiary)}.portfolio-admin-summary-item:last-child{border-bottom:none}.portfolio-admin-summary-label{font-weight:500;color:var(--text-secondary);font-size:14px}.portfolio-admin-summary-value{font-weight:600;color:var(--text-primary);font-size:14px}@media (max-width: 768px){.portfolio-admin-dashboard{padding:16px}.portfolio-admin-header{flex-direction:column;gap:16px;padding:16px}.portfolio-admin-header-content h1{font-size:24px}.portfolio-admin-progress{padding:16px}.portfolio-admin-progress-steps{flex-direction:column;gap:24px}.portfolio-admin-progress-step{flex-direction:row}.portfolio-admin-progress-step:not(:last-child):after{display:none}.portfolio-admin-progress-step-number{width:32px;height:32px;font-size:14px}.portfolio-admin-workflow-summary{padding:16px}.portfolio-admin-summary-item{flex-direction:column;align-items:flex-start;gap:4px}}@media (max-width: 480px){.portfolio-admin-dashboard,.portfolio-admin-header{padding:12px}.portfolio-admin-header-content h1{font-size:20px}.portfolio-admin-progress,.portfolio-admin-workflow-summary{padding:12px}}.ap-add-portfolio-position{max-width:1200px;margin:0 auto;padding:20px}.ap-breadcrumb{margin-bottom:20px}.ap-breadcrumb nav ol{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:8px;font-size:.9rem;color:#6c757d}.ap-breadcrumb li:not(:last-child):after{content:"/";margin-left:8px;color:#adb5bd}.ap-breadcrumb-link{background:none;border:none;color:#667eea;text-decoration:none;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;font-size:.9rem}.ap-breadcrumb-link:hover{background:#e3f2fd;color:#5a6fd8}.ap-breadcrumb-current{color:#6c757d;font-weight:500}.ap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#495057,#6c757d);border-radius:12px;color:#fff;box-shadow:0 4px 6px #0000001a}.ap-header-content h2{margin:0 0 8px;font-size:1.8rem;font-weight:600}.ap-header-content p{margin:0;opacity:.9;font-size:1rem}.ap-form-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.ap-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e9ecef}.ap-form-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#333}.ap-form-actions{display:flex;gap:12px}.ap-btn{padding:10px 20px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.ap-btn-primary:hover:not(:disabled){background:#343a40;transform:translateY(-1px)}.ap-btn-primary:disabled{background:#adb5bd;cursor:not-allowed;transform:none}.ap-btn-secondary:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.ap-btn-secondary:disabled{background:#f8f9fa;color:#adb5bd;cursor:not-allowed}.ap-btn-danger:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.ap-validation-errors{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:16px;margin-bottom:20px}.ap-validation-errors h4{margin:0 0 12px;color:#721c24;font-size:1rem}.ap-validation-error{color:#721c24;margin-bottom:8px;padding:8px;background:#dc35451a;border-radius:4px}.ap-validation-error:last-child{margin-bottom:0}.ap-form-rows{margin-bottom:30px}.ap-form-row{background:#fff;border:1px solid #e9ecef;border-radius:12px;margin-bottom:20px;overflow:visible;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;width:100%;box-sizing:border-box}.ap-row-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#495057,#6c757d);color:#fff;border-bottom:1px solid #e9ecef;width:100%;min-height:48px;box-sizing:border-box}.ap-row-number{font-size:14px;font-weight:600;color:#fff;background:none;padding:0;margin:0}.ap-row-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;padding:20px;background:#fff;width:100%;box-sizing:border-box}.ap-field-group{display:flex;flex-direction:column;gap:6px}.ap-field-group label{font-size:.9rem;font-weight:600;color:#495057;margin:0}.ap-field-group input,.ap-field-group select{padding:10px 12px;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;transition:all .2s ease;background:#fff;width:100%;min-width:0;box-sizing:border-box}.ap-field-group input:focus,.ap-field-group select:focus{outline:none;border-color:#495057;box-shadow:0 0 0 3px #4950571a}.ap-field-group input::placeholder{color:#adb5bd}.ap-btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.ap-btn:hover{transform:translateY(-1px)}.ap-btn-primary{background:#495057;color:#fff}.ap-btn-primary:hover{background:#343a40;box-shadow:0 4px 8px #4950574d}.ap-btn-primary:disabled{background:#adb5bd;color:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.ap-btn-secondary{background:#f8f9fa;color:#495057;border:1px solid #dee2e6}.ap-btn-secondary:hover{background:#e9ecef;border-color:#adb5bd}.ap-btn-secondary:disabled{background:#e9ecef;color:#adb5bd;cursor:not-allowed;transform:none}.ap-btn-danger{background:#dc3545;color:#fff}.ap-btn-danger:hover{background:#c82333;box-shadow:0 4px 8px #dc35454d}.ap-btn-sm{padding:6px 12px;font-size:.8rem}.ap-no-rows-message{text-align:center;padding:40px 20px;color:#6c757d;background:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6}.ap-no-rows-message p{margin:0;font-size:1rem}.ap-form-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid #e9ecef}.ap-form-summary{color:#6c757d;font-size:.9rem}.ap-preview-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.ap-preview-positions{margin-bottom:30px}.ap-preview-position{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;margin-bottom:16px}.ap-preview-position-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #dee2e6}.ap-preview-position-number{font-weight:600;color:#495057;font-size:1rem}.ap-preview-position-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.ap-preview-detail{display:flex;flex-direction:column}.ap-preview-label{font-weight:500;color:#6c757d;font-size:.8rem;margin-bottom:4px}.ap-preview-value{color:#495057;font-size:.9rem}.ap-preview-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e9ecef}@media (max-width: 768px){.ap-add-portfolio-position{padding:16px}.ap-form-container{padding:20px}.ap-row-fields{grid-template-columns:1fr}.ap-form-footer{flex-direction:column;gap:16px;align-items:stretch}.ap-form-actions{justify-content:stretch}.ap-btn{flex:1}}@media (max-width: 480px){.ap-add-portfolio-position{padding:12px}.ap-form-container,.ap-header{padding:16px}.ap-header-content h2{font-size:1.5rem}}.ap-loading{text-align:center;padding:40px;color:#666}.ap-loading p{font-size:16px;margin:0}.statistics-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:all .2s ease-in-out;position:relative;overflow:hidden;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.statistics-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.statistics-card--interactive{cursor:pointer;-webkit-user-select:none;user-select:none}.statistics-card--interactive:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #3b82f61a,0 2px 4px -1px #3b82f60f}.statistics-card--interactive:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.statistics-card--loading{opacity:.7;pointer-events:none}.statistics-card__header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.statistics-card__icon{width:40px;height:40px;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;flex-shrink:0}.statistics-card__title{margin:0;font-size:14px;font-weight:500;color:#6b7280;line-height:1.4;flex:1}.statistics-card__content{flex:1;display:flex;flex-direction:column;justify-content:flex-end}.statistics-card__value{font-size:28px;font-weight:700;color:#111827;line-height:1.2;margin-bottom:8px;word-break:break-word}.statistics-card__value--loading{width:60%;height:28px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite;border-radius:4px}.statistics-card__trend{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500}.statistics-card__trend--positive{color:#059669}.statistics-card__trend--negative{color:#dc2626}.statistics-card__trend-icon{font-size:14px;font-weight:700}.statistics-card__trend-text{line-height:1}.statistics-card__loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;border-radius:12px}.statistics-card__loading-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes loading-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width: 768px){.statistics-card{padding:20px;min-height:120px}.statistics-card__header{margin-bottom:12px}.statistics-card__icon{width:32px;height:32px;font-size:16px}.statistics-card__title{font-size:13px}.statistics-card__value{font-size:24px}}@media (max-width: 480px){.statistics-card{padding:16px;min-height:100px}.statistics-card__value{font-size:20px}.statistics-card__title{font-size:12px}}@media (prefers-color-scheme: dark){.statistics-card{background:#1f2937;border-color:#374151;color:#f9fafb}.statistics-card__title{color:#9ca3af}.statistics-card__value{color:#f9fafb}.statistics-card__value--loading{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%)}.statistics-card__loading-overlay{background:#1f2937cc}.statistics-card__loading-spinner{border-color:#4b5563;border-top-color:#3b82f6}}.statistics-dashboard{padding:24px;max-width:1400px;margin:0 auto}.statistics-dashboard__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;gap:24px}.statistics-dashboard__title-section{flex:1}.statistics-dashboard__title{margin:0 0 8px;font-size:32px;font-weight:700;color:#111827;line-height:1.2}.statistics-dashboard__subtitle{margin:0;font-size:16px;color:#6b7280;line-height:1.5}.statistics-dashboard__actions{display:flex;gap:12px;align-items:center}.statistics-dashboard__refresh-button{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#3b82f6;border:1px solid #3b82f6;color:#fff;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;min-width:120px;justify-content:center}.statistics-dashboard__refresh-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px #3b82f61a}.statistics-dashboard__refresh-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.statistics-dashboard__refresh-icon{font-size:16px;animation:spin 2s linear infinite}.statistics-dashboard__refresh-button:disabled .statistics-dashboard__refresh-icon{animation:none}.statistics-dashboard__content{display:flex;flex-direction:column;gap:32px}.statistics-dashboard__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:24px}.statistics-dashboard__metadata{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#6b7280}.statistics-dashboard__metadata-item{display:flex;align-items:center;gap:8px}.statistics-dashboard__metadata-label{font-weight:500;color:#374151}.statistics-dashboard__metadata-value{font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:#111827}.statistics-card--portfolios .statistics-card__icon{background:linear-gradient(135deg,#667eea,#764ba2)}.statistics-card--users .statistics-card__icon{background:linear-gradient(135deg,#f093fb,#f5576c)}.statistics-card--symbols .statistics-card__icon{background:linear-gradient(135deg,#4facfe,#00f2fe)}.statistics-card--types .statistics-card__icon{background:linear-gradient(135deg,#43e97b,#38f9d7)}.statistics-card--value .statistics-card__icon{background:linear-gradient(135deg,#fa709a,#fee140)}.statistics-card--dates .statistics-card__icon{background:linear-gradient(135deg,#a8edea,#fed6e3)}@media (max-width: 1024px){.statistics-dashboard{padding:20px}.statistics-dashboard__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.statistics-dashboard__title{font-size:28px}}@media (max-width: 768px){.statistics-dashboard{padding:16px}.statistics-dashboard__header{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:24px}.statistics-dashboard__title{font-size:24px}.statistics-dashboard__subtitle{font-size:14px}.statistics-dashboard__actions{justify-content:flex-end}.statistics-dashboard__grid{grid-template-columns:1fr;gap:16px}.statistics-dashboard__metadata{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 16px}}@media (max-width: 480px){.statistics-dashboard{padding:12px}.statistics-dashboard__title{font-size:20px}.statistics-dashboard__refresh-button{padding:10px 16px;font-size:13px;min-width:100px}.statistics-dashboard__metadata{font-size:12px;padding:10px 12px}}@media (prefers-color-scheme: dark){.statistics-dashboard{background:#111827}.statistics-dashboard__title{color:#f9fafb}.statistics-dashboard__subtitle{color:#9ca3af}.statistics-dashboard__metadata{background:#1f2937;border-color:#374151;color:#9ca3af}.statistics-dashboard__metadata-label{color:#d1d5db}.statistics-dashboard__metadata-value{color:#f9fafb}.statistics-dashboard__refresh-button{background:#3b82f6;border-color:#3b82f6}.statistics-dashboard__refresh-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb}}@media print{.statistics-dashboard{padding:0}.statistics-dashboard__header{margin-bottom:20px}.statistics-dashboard__actions{display:none}.statistics-dashboard__grid{grid-template-columns:repeat(2,1fr);gap:16px}.statistics-dashboard__metadata{background:none;border:1px solid #000;color:#000}}.date-selection{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;max-width:600px;margin:0 auto}.date-selection__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.date-selection__title{margin:0;font-size:20px;font-weight:600;color:#111827}.date-selection__current-date{display:flex;align-items:center;gap:8px;font-size:14px}.date-selection__current-label{color:#6b7280;font-weight:500}.date-selection__current-value{color:#111827;font-weight:600;background:#f3f4f6;padding:4px 8px;border-radius:6px}.date-selection__content{display:flex;flex-direction:column;gap:24px}.date-selection__section-title{margin:0 0 12px;font-size:16px;font-weight:600;color:#374151}.date-selection__quick-buttons{display:flex;flex-wrap:wrap;gap:8px}.date-selection__quick-button{padding:8px 16px;background:#f9fafb;border:1px solid #e5e7eb;color:#374151;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;min-width:80px;text-align:center}.date-selection__quick-button:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db;transform:translateY(-1px)}.date-selection__quick-button--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.date-selection__quick-button--active:hover{background:#2563eb;border-color:#2563eb}.date-selection__quick-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.date-selection__date-list{display:flex;flex-wrap:wrap;gap:8px;max-height:200px;overflow-y:auto;padding:8px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.date-selection__date-button{padding:6px 12px;background:#fff;border:1px solid #d1d5db;color:#374151;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;white-space:nowrap}.date-selection__date-button:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.date-selection__date-button--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.date-selection__date-button--active:hover{background:#2563eb;border-color:#2563eb}.date-selection__date-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.date-selection__more-dates{color:#6b7280;font-size:12px;font-style:italic;padding:8px;text-align:center;width:100%}.date-selection__input-group{display:flex;gap:12px;align-items:center}.date-selection__date-input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#111827;background:#fff;transition:border-color .2s ease-in-out}.date-selection__date-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-selection__date-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.date-selection__submit-button{padding:10px 20px;background:#3b82f6;border:1px solid #3b82f6;color:#fff;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;white-space:nowrap}.date-selection__submit-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.date-selection__submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.date-selection__loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;color:#6b7280;font-size:14px}.date-selection__loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.date-selection{padding:20px;margin:0 16px}.date-selection__header{flex-direction:column;align-items:flex-start;gap:12px}.date-selection__title{font-size:18px}.date-selection__current-date{font-size:13px}.date-selection__input-group{flex-direction:column;align-items:stretch}.date-selection__submit-button{width:100%}.date-selection__quick-buttons,.date-selection__date-list{justify-content:center}}@media (max-width: 480px){.date-selection{padding:16px;margin:0 12px}.date-selection__title{font-size:16px}.date-selection__section-title{font-size:14px}.date-selection__quick-button{padding:6px 12px;font-size:13px;min-width:70px}.date-selection__date-button{padding:4px 8px;font-size:12px}.date-selection__date-input{padding:8px 10px;font-size:13px}.date-selection__submit-button{padding:8px 16px;font-size:13px}}@media (prefers-color-scheme: dark){.date-selection{background:#1f2937;border-color:#374151;color:#f9fafb}.date-selection__title{color:#f9fafb}.date-selection__current-label{color:#9ca3af}.date-selection__current-value{color:#f9fafb;background:#374151}.date-selection__section-title{color:#d1d5db}.date-selection__quick-button{background:#374151;border-color:#4b5563;color:#d1d5db}.date-selection__quick-button:hover:not(:disabled){background:#4b5563;border-color:#6b7280}.date-selection__date-list{background:#374151;border-color:#4b5563}.date-selection__date-button{background:#4b5563;border-color:#6b7280;color:#d1d5db}.date-selection__date-button:hover:not(:disabled){background:#6b7280;border-color:#9ca3af}.date-selection__date-input{background:#374151;border-color:#4b5563;color:#f9fafb}.date-selection__date-input:focus{border-color:#3b82f6}.date-selection__date-input:disabled{background:#374151;color:#6b7280}.date-selection__loading{color:#9ca3af}.date-selection__loading-spinner{border-color:#4b5563;border-top-color:#3b82f6}}.statistics-comparison{padding:24px;max-width:1400px;margin:0 auto}.statistics-comparison__header{text-align:center;margin-bottom:32px}.statistics-comparison__title{margin:0 0 8px;font-size:32px;font-weight:700;color:#111827;line-height:1.2}.statistics-comparison__subtitle{margin:0;font-size:16px;color:#6b7280;line-height:1.5}.statistics-comparison__date-selectors{display:flex;align-items:center;justify-content:center;gap:32px;margin-bottom:40px;flex-wrap:wrap}.statistics-comparison__date-selector{flex:1;min-width:280px;max-width:400px}.statistics-comparison__date-title{margin:0 0 16px;font-size:18px;font-weight:600;color:#374151;text-align:center}.statistics-comparison__vs-indicator{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-weight:700;font-size:18px;box-shadow:0 4px 6px -1px #0000001a;flex-shrink:0}.statistics-comparison__vs-text{margin:0}.statistics-comparison__summary{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:32px;box-shadow:0 1px 3px #0000001a}.statistics-comparison__summary-title{margin:0 0 16px;font-size:20px;font-weight:600;color:#111827}.statistics-comparison__summary-content{display:flex;gap:32px;flex-wrap:wrap}.statistics-comparison__summary-item{display:flex;align-items:center;gap:12px;flex:1;min-width:200px}.statistics-comparison__summary-label{font-size:14px;color:#6b7280;font-weight:500}.statistics-comparison__summary-value{font-size:16px;font-weight:600;padding:4px 8px;border-radius:6px;background:#f3f4f6}.statistics-comparison__summary-value--positive{color:#059669;background:#d1fae5}.statistics-comparison__summary-value--negative{color:#dc2626;background:#fee2e2}.statistics-comparison__summary-value--neutral{color:#6b7280;background:#f3f4f6}.statistics-comparison__cards{display:flex;flex-direction:column;gap:24px}.statistics-comparison__card-group{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.statistics-comparison__card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.statistics-comparison__card-title{margin:0;font-size:18px;font-weight:600;color:#111827}.statistics-comparison__change{font-size:14px;font-weight:600;padding:6px 12px;border-radius:6px;display:flex;align-items:center;gap:4px}.statistics-comparison__change--positive{color:#059669;background:#d1fae5}.statistics-comparison__change--negative{color:#dc2626;background:#fee2e2}.statistics-comparison__change--neutral{color:#6b7280;background:#f3f4f6}.statistics-comparison__card-content{display:flex;align-items:center;gap:20px;justify-content:center}.statistics-comparison__base-card,.statistics-comparison__compare-card{flex:1;max-width:300px}.statistics-comparison__arrow{font-size:24px;color:#6b7280;font-weight:700;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f9fafb;border-radius:50%;border:2px solid #e5e7eb;flex-shrink:0}.statistics-comparison__empty-state{text-align:center;padding:60px 24px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a}.statistics-comparison__empty-icon{font-size:48px;margin-bottom:16px;display:block}.statistics-comparison__empty-title{margin:0 0 8px;font-size:20px;font-weight:600;color:#111827}.statistics-comparison__empty-description{margin:0;font-size:14px;color:#6b7280;line-height:1.5}@media (max-width: 1024px){.statistics-comparison{padding:20px}.statistics-comparison__date-selectors{gap:24px}.statistics-comparison__vs-indicator{width:50px;height:50px;font-size:16px}.statistics-comparison__card-content{flex-direction:column;gap:16px}.statistics-comparison__arrow{transform:rotate(90deg)}}@media (max-width: 768px){.statistics-comparison{padding:16px}.statistics-comparison__title{font-size:24px}.statistics-comparison__subtitle{font-size:14px}.statistics-comparison__date-selectors{flex-direction:column;gap:20px}.statistics-comparison__date-selector{min-width:100%;max-width:none}.statistics-comparison__vs-indicator{order:-1;margin-bottom:8px}.statistics-comparison__summary-content{flex-direction:column;gap:16px}.statistics-comparison__summary-item{min-width:auto}.statistics-comparison__card-header{flex-direction:column;align-items:flex-start;gap:8px}.statistics-comparison__base-card,.statistics-comparison__compare-card{max-width:none}}@media (max-width: 480px){.statistics-comparison{padding:12px}.statistics-comparison__title{font-size:20px}.statistics-comparison__card-group{padding:16px}.statistics-comparison__card-title{font-size:16px}.statistics-comparison__change{font-size:12px;padding:4px 8px}.statistics-comparison__summary{padding:16px}.statistics-comparison__summary-title{font-size:18px}}@media (prefers-color-scheme: dark){.statistics-comparison{background:#111827}.statistics-comparison__title{color:#f9fafb}.statistics-comparison__subtitle{color:#9ca3af}.statistics-comparison__date-title{color:#d1d5db}.statistics-comparison__summary{background:#1f2937;border-color:#374151}.statistics-comparison__summary-title{color:#f9fafb}.statistics-comparison__summary-label{color:#9ca3af}.statistics-comparison__summary-value{background:#374151}.statistics-comparison__summary-value--positive{background:#065f46}.statistics-comparison__summary-value--negative{background:#7f1d1d}.statistics-comparison__summary-value--neutral{background:#374151;color:#9ca3af}.statistics-comparison__card-group{background:#1f2937;border-color:#374151}.statistics-comparison__card-title{color:#f9fafb}.statistics-comparison__change--positive{background:#065f46}.statistics-comparison__change--negative{background:#7f1d1d}.statistics-comparison__change--neutral{background:#374151;color:#9ca3af}.statistics-comparison__arrow{background:#374151;border-color:#4b5563;color:#9ca3af}.statistics-comparison__empty-state{background:#1f2937;border-color:#374151}.statistics-comparison__empty-title{color:#f9fafb}.statistics-comparison__empty-description{color:#9ca3af}}.statistics-error-boundary{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;margin:1rem}.statistics-error-boundary__content{text-align:center;max-width:500px;background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;border:1px solid #e1e5e9}.statistics-error-boundary__icon{font-size:3rem;margin-bottom:1rem;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.statistics-error-boundary__title{font-size:1.5rem;font-weight:600;color:#2c3e50;margin:0 0 1rem}.statistics-error-boundary__message{color:#5a6c7d;line-height:1.6;margin:0 0 1.5rem;font-size:1rem}.statistics-error-boundary__details{margin:1rem 0;text-align:left}.statistics-error-boundary__details summary{cursor:pointer;color:#3498db;font-weight:500;margin-bottom:.5rem}.statistics-error-boundary__details summary:hover{color:#2980b9}.statistics-error-boundary__error-stack{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;color:#dc3545;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.statistics-error-boundary__actions{display:flex;gap:1rem;justify-content:center;margin:1.5rem 0;flex-wrap:wrap}.statistics-error-boundary__button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;min-width:120px;justify-content:center}.statistics-error-boundary__button--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.statistics-error-boundary__button--primary:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.statistics-error-boundary__button--secondary{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.statistics-error-boundary__button--secondary:hover{background:#e9ecef;color:#495057;border-color:#adb5bd}.statistics-error-boundary__button:disabled{opacity:.6;cursor:not-allowed;transform:none}.statistics-error-boundary__help{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e9ecef}.statistics-error-boundary__help p{color:#6c757d;font-size:.9rem;margin:0}@media (prefers-color-scheme: dark){.statistics-error-boundary{background:linear-gradient(135deg,#2c3e50,#34495e)}.statistics-error-boundary__content{background:#34495e;border-color:#4a5568;color:#e2e8f0}.statistics-error-boundary__title{color:#f7fafc}.statistics-error-boundary__message{color:#cbd5e0}.statistics-error-boundary__error-stack{background:#2d3748;border-color:#4a5568;color:#fc8181}.statistics-error-boundary__button--secondary{background:#4a5568;color:#e2e8f0;border-color:#718096}.statistics-error-boundary__button--secondary:hover{background:#718096;color:#f7fafc;border-color:#a0aec0}.statistics-error-boundary__help{border-top-color:#4a5568}.statistics-error-boundary__help p{color:#a0aec0}}@media (max-width: 768px){.statistics-error-boundary{padding:1rem;margin:.5rem}.statistics-error-boundary__content{padding:1.5rem}.statistics-error-boundary__actions{flex-direction:column;align-items:center}.statistics-error-boundary__button{width:100%;max-width:200px}.statistics-error-boundary__title{font-size:1.25rem}.statistics-error-boundary__icon{font-size:2.5rem}}@media (max-width: 480px){.statistics-error-boundary__content{padding:1rem}.statistics-error-boundary__title{font-size:1.1rem}.statistics-error-boundary__message{font-size:.9rem}}.admin-statistics{min-height:100vh;background:#f9fafb;display:flex;flex-direction:column}.admin-statistics__header{background:#fff;border-bottom:1px solid #e5e7eb;padding:24px;box-shadow:0 1px 3px #0000001a}.admin-statistics__title-section{max-width:1400px;margin:0 auto}.admin-statistics__title{margin:0 0 8px;font-size:32px;font-weight:700;color:#111827;line-height:1.2}.admin-statistics__subtitle{margin:0;font-size:16px;color:#6b7280;line-height:1.5}.admin-statistics__navigation{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;box-shadow:0 1px 2px #0000000d}.admin-statistics__tabs{display:flex;gap:0;max-width:1400px;margin:0 auto}.admin-statistics__tab{display:flex;align-items:center;gap:8px;padding:16px 24px;background:transparent;border:none;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;border-bottom:2px solid transparent;position:relative;min-width:120px;justify-content:center}.admin-statistics__tab:hover{color:#374151;background:#f9fafb}.admin-statistics__tab--active{color:#3b82f6;border-bottom-color:#3b82f6;background:#f0f9ff}.admin-statistics__tab--active:hover{color:#2563eb;background:#e0f2fe}.admin-statistics__tab-icon{font-size:16px;line-height:1}.admin-statistics__tab-label{font-weight:600;white-space:nowrap}.admin-statistics__content{flex:1;padding:0;background:#f9fafb}@media (max-width: 1024px){.admin-statistics__header{padding:20px}.admin-statistics__title{font-size:28px}.admin-statistics__navigation{padding:0 20px}.admin-statistics__tab{padding:14px 20px;min-width:100px}}@media (max-width: 768px){.admin-statistics__header{padding:16px}.admin-statistics__title{font-size:24px}.admin-statistics__subtitle{font-size:14px}.admin-statistics__navigation{padding:0 16px}.admin-statistics__tabs{gap:0}.admin-statistics__tab{padding:12px 16px;min-width:80px;font-size:13px}.admin-statistics__tab-icon{font-size:14px}}@media (max-width: 480px){.admin-statistics__header{padding:12px}.admin-statistics__title{font-size:20px}.admin-statistics__navigation{padding:0 12px}.admin-statistics__tab{padding:10px 12px;min-width:70px;font-size:12px}.admin-statistics__tab-icon{font-size:12px}.admin-statistics__tab-label{display:none}}@media (prefers-color-scheme: dark){.admin-statistics{background:#111827}.admin-statistics__header{background:#1f2937;border-color:#374151}.admin-statistics__title{color:#f9fafb}.admin-statistics__subtitle{color:#9ca3af}.admin-statistics__navigation{background:#1f2937;border-color:#374151}.admin-statistics__tab{color:#9ca3af}.admin-statistics__tab:hover{color:#d1d5db;background:#374151}.admin-statistics__tab--active{color:#60a5fa;border-bottom-color:#60a5fa;background:#1e3a8a}.admin-statistics__tab--active:hover{color:#93c5fd;background:#1e40af}.admin-statistics__content{background:#111827}}@media print{.admin-statistics__navigation{display:none}.admin-statistics__header{background:none;border:none;box-shadow:none;padding:0 0 20px}.admin-statistics__content{background:none}}.user-account-selection-step{max-width:800px;margin:0 auto}.user-account-selection-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.user-account-selection-header-content{text-align:left}.user-account-selection-header-content h2{margin:0 0 10px;color:#495057;font-size:1.8rem;font-weight:600}.user-account-selection-header-content p{margin:0;color:#6c757d;font-size:1rem}.user-account-selection-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.user-account-selection-empty{text-align:center;padding:40px 20px;color:#6c757d}.user-account-selection-actions{display:flex;gap:10px;margin-bottom:20px;justify-content:center}.user-account-selection-action-button{background:#f8f9fa;border:1px solid #dee2e6;color:#495057;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.user-account-selection-action-button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.user-account-selection-action-button:disabled{opacity:.5;cursor:not-allowed}.user-account-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px;margin-bottom:30px}.user-account-card{border:2px solid #e9ecef;border-radius:8px;padding:20px;cursor:pointer;transition:all .2s ease;background:#fff}.user-account-card:hover{border-color:#667eea;box-shadow:0 4px 8px #667eea1a;transform:translateY(-2px)}.user-account-card.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.user-account-card-content{display:flex;flex-direction:column;gap:10px}.user-account-card-header{display:flex;align-items:center;gap:12px}.user-account-checkbox{width:18px;height:18px;accent-color:#667eea;cursor:pointer}.user-account-card.selected .user-account-checkbox{accent-color:white}.user-account-name{margin:0;font-size:1.1rem;font-weight:600;flex:1}.user-account-card.selected .user-account-name{color:#fff}.user-account-card-details{display:flex;justify-content:space-between;align-items:center}.user-account-type{font-size:.9rem;color:#6c757d;background:#f8f9fa;padding:4px 8px;border-radius:4px}.user-account-card.selected .user-account-type{color:#fff;background:#fff3}.user-account-selection-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid #e9ecef}.user-account-selection-summary{color:#6c757d;font-size:.9rem}.user-account-selection-continue-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease}.user-account-selection-continue-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.user-account-selection-continue-button:disabled{background:#adb5bd;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.user-account-selection-step{padding:0 10px}.user-account-selection-content{padding:20px}.user-account-selection-header h2{font-size:1.5rem}.user-account-selection-grid{grid-template-columns:1fr}.user-account-selection-actions{flex-direction:column}.user-account-selection-footer{flex-direction:column;gap:15px;text-align:center}}.user-date-selection-step{max-width:800px;margin:0 auto}.user-date-selection-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.user-date-selection-header-content{text-align:left}.user-date-selection-header-content h2{margin:0 0 10px;color:#495057;font-size:1.8rem;font-weight:600}.user-date-selection-header-content p{margin:0;color:#6c757d;font-size:1rem}.user-date-selection-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.user-date-selection-empty{text-align:center;padding:40px 20px;color:#6c757d}.user-date-selection-actions{display:flex;gap:10px;margin-bottom:20px;justify-content:center}.user-date-selection-action-button{background:#f8f9fa;border:1px solid #dee2e6;color:#495057;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.user-date-selection-action-button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.user-date-selection-action-button:disabled{opacity:.5;cursor:not-allowed}.user-date-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px;margin-bottom:30px}.user-date-card{border:2px solid #e9ecef;border-radius:8px;padding:20px;cursor:pointer;transition:all .2s ease;background:#fff}.user-date-card:hover{border-color:#667eea;box-shadow:0 4px 8px #667eea1a;transform:translateY(-2px)}.user-date-card.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.user-date-card-content{display:flex;flex-direction:column;gap:10px}.user-date-card-header{display:flex;align-items:center;gap:12px}.user-date-checkbox{width:18px;height:18px;accent-color:#667eea;cursor:pointer}.user-date-card.selected .user-date-checkbox{accent-color:white}.user-date-value{margin:0;font-size:1.1rem;font-weight:600;flex:1}.user-date-card.selected .user-date-value{color:#fff}.user-date-card-details{display:flex;justify-content:space-between;align-items:center}.user-date-raw{font-size:.9rem;color:#6c757d;background:#f8f9fa;padding:4px 8px;border-radius:4px;font-family:monospace}.user-date-card.selected .user-date-raw{color:#fff;background:#fff3}.user-date-selection-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid #e9ecef}.user-date-selection-back-button{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.user-date-selection-back-button:hover{background:#5a6268;transform:translateY(-1px)}.user-date-selection-summary{color:#6c757d;font-size:.9rem}.user-date-selection-continue-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease}.user-date-selection-continue-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.user-date-selection-continue-button:disabled{background:#adb5bd;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.user-date-selection-step{padding:0 10px}.user-date-selection-content{padding:20px}.user-date-selection-header h2{font-size:1.5rem}.user-date-selection-grid{grid-template-columns:1fr}.user-date-selection-actions{flex-direction:column}.user-date-selection-footer{flex-direction:column;gap:15px;text-align:center}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#495057}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:4px;border-radius:4px;transition:all .2s ease}.modal-close:hover{background-color:#f8f9fa;color:#495057}.modal-body{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#495057;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:12px 16px;border:1px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .2s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group input:disabled,.form-group select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.error-message{background-color:#f8d7da;color:#721c24;padding:12px 16px;border-radius:6px;margin-bottom:20px;border:1px solid #f5c6cb;font-size:.9rem}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e9ecef;background-color:#f8f9fa}.modal-button{padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.modal-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{background-color:#6c757d;color:#fff}.cancel-button:hover:not(:disabled){background-color:#5a6268}.confirm-button{background-color:#007bff;color:#fff}.confirm-button:hover:not(:disabled){background-color:#0056b3}@media (max-width: 768px){.modal-content{width:95%;margin:20px}.modal-header,.modal-body,.modal-footer{padding:16px 20px}.modal-footer{flex-direction:column}.modal-button{width:100%}}.user-portfolio-management-step{max-width:1200px;margin:0 auto}.user-portfolio-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 6px #0000001a}.user-portfolio-management-header-content h2{margin:0 0 8px;font-size:1.8rem;font-weight:600}.user-portfolio-management-header-content p{margin:0;opacity:.9;font-size:1rem}.user-portfolio-management-back-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.user-portfolio-management-back-button:hover{background:#ffffff4d;transform:translateY(-1px)}.user-portfolio-management-actions{display:flex;gap:12px;align-items:center}.user-portfolio-management-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.user-portfolio-management-empty{text-align:center;padding:40px 20px;color:#6c757d}.user-portfolio-management-summary{margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.user-portfolio-summary-stats{display:flex;gap:30px;flex-wrap:wrap}.user-portfolio-summary-stat{display:flex;flex-direction:column;gap:5px}.user-portfolio-summary-label{font-size:.9rem;color:#6c757d;font-weight:500}.user-portfolio-summary-value{font-size:1.2rem;font-weight:600;color:#495057}.user-portfolio-table-container{overflow-x:auto;border-radius:8px;border:1px solid #e9ecef}.user-portfolio-table{width:100%;border-collapse:collapse;background:#fff}.user-portfolio-table th{background:#f8f9fa;padding:12px 16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;font-size:.9rem}.user-portfolio-table td{padding:12px 16px;border-bottom:1px solid #e9ecef;vertical-align:middle}.user-portfolio-table tbody tr:hover{background:#f8f9fa}.symbol-cell{font-weight:600;color:#495057}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quantity-cell,.price-cell{text-align:right;font-family:monospace}.value-cell{text-align:right;font-family:monospace;font-weight:600;color:#28a745}.type-cell{text-align:center}.position-type{padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.position-type.stock{background:#d4edda;color:#155724}.position-type.option{background:#fff3cd;color:#856404}.position-type.cash{background:#d1ecf1;color:#0c5460}.position-type.bond{background:#e2e3e5;color:#383d41}.position-type.etf{background:#f8d7da;color:#721c24}.position-type.mutual_fund{background:#d1ecf1;color:#0c5460}.position-type.other{background:#e2e3e5;color:#383d41}.date-cell{font-family:monospace;color:#6c757d}.account-cell{font-weight:500;color:#495057}.actions-cell{text-align:center;white-space:nowrap}.user-portfolio-action-button{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;margin:0 2px;transition:all .2s ease}.user-portfolio-action-button.edit{background:#007bff;color:#fff}.user-portfolio-action-button.edit:hover{background:#0056b3}.user-portfolio-action-button.delete{background:#dc3545;color:#fff}.user-portfolio-action-button.delete:hover{background:#c82333}.user-portfolio-action-button.copy{background:#28a745;color:#fff}.user-portfolio-action-button.copy:hover{background:#218838}.user-portfolio-pagination{margin-top:20px;padding:15px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.user-portfolio-pagination-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:14px;color:#6c757d}.user-portfolio-pagination-controls{display:flex;justify-content:center;align-items:center;gap:5px}.user-portfolio-pagination-button{padding:8px 12px;border:1px solid #dee2e6;background-color:#fff;color:#495057;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease;min-width:40px}.user-portfolio-pagination-button:hover:not(:disabled){background-color:#e9ecef;border-color:#adb5bd}.user-portfolio-pagination-button:disabled{opacity:.5;cursor:not-allowed}.user-portfolio-pagination-button.active{background-color:#007bff;border-color:#007bff;color:#fff}.user-portfolio-pagination-button.active:hover{background-color:#0056b3;border-color:#0056b3}.user-portfolio-pagination-ellipsis{padding:8px 4px;color:#6c757d;font-weight:700}@media (max-width: 768px){.user-portfolio-management-step{padding:0 10px}.user-portfolio-management-header{flex-direction:column;gap:15px;text-align:center}.user-portfolio-management-header-content h2{font-size:1.5rem}.user-portfolio-management-content{padding:20px}.user-portfolio-summary-stats{flex-direction:column;gap:15px}.user-portfolio-table-container{font-size:.8rem}.user-portfolio-table th,.user-portfolio-table td{padding:8px 12px}.description-cell{max-width:150px}}.user-portfolio-dashboard{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.user-portfolio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 6px #0000001a}.user-portfolio-header-content h1{margin:0 0 8px;font-size:2rem;font-weight:600}.user-portfolio-header-content p{margin:0;opacity:.9;font-size:1rem}.user-portfolio-reset-workflow-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.user-portfolio-reset-workflow-button:hover{background:#ffffff4d;transform:translateY(-1px)}.user-portfolio-progress{margin-bottom:30px}.user-portfolio-progress-steps{display:flex;justify-content:space-between;align-items:center;position:relative}.user-portfolio-progress-steps:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background:#e1e5e9;z-index:1}.user-portfolio-progress-step{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;flex:1;cursor:pointer;transition:all .3s ease}.user-portfolio-progress-step-number{width:40px;height:40px;border-radius:50%;background:#e1e5e9;color:#6c757d;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;margin-bottom:8px;transition:all .3s ease}.user-portfolio-progress-step.active .user-portfolio-progress-step-number{background:#667eea;color:#fff;box-shadow:0 4px 8px #667eea4d}.user-portfolio-progress-step.completed .user-portfolio-progress-step-number{background:#28a745;color:#fff}.user-portfolio-progress-step.disabled{opacity:.5;cursor:not-allowed}.user-portfolio-progress-step-content{text-align:center;max-width:120px}.user-portfolio-progress-step-title{display:block;font-weight:600;font-size:.9rem;color:#495057;margin-bottom:4px}.user-portfolio-progress-step.active .user-portfolio-progress-step-title{color:#667eea}.user-portfolio-progress-step.completed .user-portfolio-progress-step-title{color:#28a745}.user-portfolio-progress-step-description{display:block;font-size:.8rem;color:#6c757d;line-height:1.3}.user-portfolio-step-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a;min-height:400px}.user-portfolio-workflow-summary{margin-top:30px;background:#f8f9fa;border-radius:12px;padding:20px;border-left:4px solid #667eea}.user-portfolio-workflow-summary h3{margin:0 0 15px;color:#495057;font-size:1.1rem;font-weight:600}.user-portfolio-summary-items{display:flex;flex-wrap:wrap;gap:15px}.user-portfolio-summary-item{display:flex;align-items:center;gap:8px;background:#fff;padding:8px 12px;border-radius:6px;box-shadow:0 1px 3px #0000001a}.user-portfolio-summary-label{font-weight:600;color:#6c757d;font-size:.9rem}.user-portfolio-summary-value{color:#495057;font-size:.9rem}@media (max-width: 768px){.user-portfolio-dashboard{padding:15px}.user-portfolio-header{flex-direction:column;gap:15px;text-align:center}.user-portfolio-header-content h1{font-size:1.5rem}.user-portfolio-progress-steps{flex-direction:column;gap:20px}.user-portfolio-progress-steps:before{display:none}.user-portfolio-progress-step{flex-direction:row;gap:15px;width:100%}.user-portfolio-progress-step-content{text-align:left;max-width:none}.user-portfolio-step-content{padding:20px}.user-portfolio-summary-items{flex-direction:column}}.up-add-portfolio-position{max-width:1200px;margin:0 auto;padding:20px}.up-breadcrumb{margin-bottom:20px}.up-breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:8px;font-size:.9rem;color:#6c757d}.up-breadcrumb li:not(:last-child):after{content:"/";margin-left:8px;color:#adb5bd}.up-breadcrumb a{color:#667eea;text-decoration:none;transition:color .2s ease}.up-breadcrumb a:hover{color:#5a6fd8}.up-breadcrumb-current{color:#6c757d;font-weight:500}.up-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 6px #0000001a}.up-header-content h2{margin:0 0 8px;font-size:1.8rem;font-weight:600}.up-header-content p{margin:0;opacity:.9;font-size:1rem}.up-back-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.up-back-button:hover{background:#ffffff4d;transform:translateY(-1px)}.up-form-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 4px #0000001a}.up-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.up-form-header h3{margin:0;color:#333;font-size:18px;font-weight:600}.up-form-rows{margin-bottom:30px}.up-form-row{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;overflow:hidden}.up-row-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:1px solid #e9ecef}.up-row-number{font-size:14px;font-weight:600;color:#fff;background:none;padding:0;margin:0}.up-row-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;padding:20px;background:#fff}.up-field-group{display:flex;flex-direction:column;gap:6px}.up-field-group label{font-size:.9rem;font-weight:600;color:#495057;margin:0}.up-field-group input,.up-field-group select{padding:10px 12px;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;transition:all .2s ease;background:#fff}.up-field-group input:focus,.up-field-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.up-field-group input::placeholder{color:#adb5bd}.up-btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.up-add-position-btn{background:#667eea;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.up-add-position-btn:hover{background:#5a6fd8;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.up-btn:hover{transform:translateY(-1px)}.up-btn-primary{background:#667eea;color:#fff}.up-btn-primary:hover{background:#5a6fd8;box-shadow:0 4px 8px #667eea4d}.up-btn-primary:disabled{background:#adb5bd;color:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.up-btn-secondary{background:#f8f9fa;color:#495057;border:1px solid #dee2e6}.up-btn-secondary:hover{background:#e9ecef;border-color:#adb5bd}.up-btn-secondary:disabled{background:#e9ecef;color:#adb5bd;cursor:not-allowed;transform:none}.up-btn-danger{background:#dc3545;color:#fff}.up-btn-danger:hover{background:#c82333;box-shadow:0 4px 8px #dc35454d}.up-btn-sm{padding:6px 12px;font-size:.8rem}.up-form-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:2px solid #f8f9fa}.up-form-summary{color:#6c757d;font-size:.9rem;font-weight:500}.up-form-actions{display:flex;gap:10px;align-items:center}.up-no-rows-message{text-align:center;padding:60px 20px;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:12px;margin:20px 0}.up-no-rows-message p{margin:0;color:#6c757d;font-size:16px;font-style:italic}.up-preview-actions{display:flex;gap:15px;justify-content:center;align-items:center;margin-top:30px;padding-top:20px;border-top:1px solid #e9ecef}.up-preview-positions{margin-bottom:30px}.up-validation-errors{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:15px;margin-bottom:20px;color:#721c24}.up-validation-errors h4{margin:0 0 10px;color:#721c24;font-size:16px}.up-validation-error{margin-bottom:8px;padding:8px;background:#f8d7da;border-radius:4px;border-left:4px solid #dc3545}.up-validation-error:last-child{margin-bottom:0}.up-preview-position{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;overflow:hidden}.up-preview-position-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 16px;border-bottom:1px solid #e9ecef}.up-preview-position-number{font-size:16px;font-weight:600;color:#fff}.up-preview-position-details{padding:20px;background:#fff}.up-preview-detail{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f4}.up-preview-detail:last-child{border-bottom:none}.up-preview-label{font-weight:600;color:#495057;min-width:80px}.up-preview-value{color:#6c757d;text-align:right}@media (max-width: 768px){.up-add-portfolio-position{padding:10px}.up-header{flex-direction:column;gap:15px;text-align:center}.up-header-content h2{font-size:1.5rem}.up-form-container{padding:20px}.up-form-header{flex-direction:column;gap:15px;align-items:flex-start}.up-row-fields{grid-template-columns:1fr;gap:15px;padding:15px}.up-form-footer{flex-direction:column;gap:15px;text-align:center}}.up-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.up-modal{background:#fff;border-radius:12px;padding:0;max-width:400px;width:90%;box-shadow:0 10px 25px #0003;overflow:hidden}.up-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;text-align:center}.up-modal-header h3{margin:0;font-size:1.5rem;font-weight:600}.up-modal-content{padding:30px 20px;text-align:center}.up-modal-content p{margin:0;font-size:1.1rem;color:#495057}.up-modal-actions{padding:20px;text-align:center;border-top:1px solid #e9ecef}.user-account-management-form{padding:0;display:flex;flex-direction:column;align-items:center;width:100%}.user-account-management-form form{width:100%;max-width:500px;padding:0 1rem}.form-errors{margin-bottom:1.5rem;padding:1rem;border-radius:8px;background-color:#fef2f2;border:1px solid #fecaca}.form-errors.general-errors{background-color:#fef2f2;border-color:#fecaca}.error-message{color:#dc2626;font-size:.875rem;margin-bottom:.5rem}.error-message:last-child{margin-bottom:0}.field-error{color:#dc2626;font-size:.75rem;margin-top:.25rem;font-weight:500}.form-row{margin-bottom:1.5rem;display:flex;justify-content:center}.form-row:last-child{margin-bottom:0}.form-row:has(.radio-group){margin-bottom:1rem}.form-field{display:flex;flex-direction:column;width:100%;max-width:400px}.form-label{font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.875rem;text-align:left}.form-input{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s;background-color:#fff;width:100%;height:48px;box-sizing:border-box;min-width:400px}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input.error{border-color:#dc2626;background-color:#fef2f2}.form-input.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.form-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.help-text{color:#6b7280;font-size:.75rem;margin-top:.25rem;line-height:1.4}.radio-group{display:flex;gap:1rem;align-items:stretch;justify-content:flex-start;width:100%;margin-top:.5rem}.radio-option{display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.75rem;border:2px solid #e5e7eb;border-radius:6px;background-color:#f9fafb;transition:all .2s;width:195px;height:80px;justify-content:center;box-sizing:border-box}.radio-option:hover{border-color:#3b82f6;background-color:#f0f9ff}.radio-option input[type=radio]{width:1rem;height:1rem;accent-color:#3b82f6;cursor:pointer;margin-bottom:.5rem;flex-shrink:0}.radio-option input[type=radio]:disabled{cursor:not-allowed;opacity:.6}.radio-label{font-size:.875rem;color:#374151;cursor:pointer;font-weight:600;text-align:center;line-height:1.2;margin-bottom:.25rem;flex-shrink:0}.radio-help{font-size:.7rem;color:#6b7280;text-align:center;line-height:1.2;flex-shrink:0}.radio-option:has(input:disabled) .radio-label{cursor:not-allowed;opacity:.6}.form-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.user-account-management-form .uam-btn-primary:disabled,.user-account-management-form .uam-btn-secondary:disabled{opacity:.6!important;cursor:not-allowed!important}.user-account-management-form .uam-btn-primary{background-color:#3b82f6!important;color:#fff!important;border:none!important;border-radius:6px!important;font-size:.875rem!important;font-weight:500!important;padding:.75rem 1.5rem!important;cursor:pointer!important;transition:all .2s!important;min-width:100px!important}.user-account-management-form .uam-btn-primary:hover:not(:disabled){background-color:#2563eb!important}.user-account-management-form .uam-btn-primary:active:not(:disabled){background-color:#1d4ed8!important}.user-account-management-form .uam-btn-secondary{background-color:#6b7280!important;color:#fff!important;border:none!important;border-radius:6px!important;font-size:.875rem!important;font-weight:500!important;padding:.75rem 1.5rem!important;cursor:pointer!important;transition:all .2s!important;min-width:100px!important}.user-account-management-form .uam-btn-secondary:hover:not(:disabled){background-color:#4b5563!important}.user-account-management-form .uam-btn-secondary:active:not(:disabled){background-color:#374151!important}@media (max-width: 640px){.form-actions{flex-direction:column}.user-account-management-form .uam-btn-primary,.user-account-management-form .uam-btn-secondary{width:100%}.radio-group{flex-direction:column;gap:1rem}}.table-header{padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;display:flex;justify-content:space-between;align-items:center}.table-header h3{margin:0;color:#374151;font-size:1.25rem;font-weight:700}.user-account-management-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.user-account-management-table{width:100%;border-collapse:collapse;font-size:.9rem}.user-account-management-table th{background:#f8f9fa;padding:12px 16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.user-account-management-table td{padding:12px 16px;border-bottom:1px solid #e9ecef;vertical-align:middle}.user-account-management-table td.actions-column{text-align:right}.user-account-management-table tbody tr:hover{background-color:#f8f9fa}.user-account-management-table tbody tr:last-child td{border-bottom:none}.account-name{font-weight:600;color:#1f2937}.account-id{color:#6b7280;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem}.brokerage-name{color:#374151;font-weight:500}.account-type{padding:4px 12px;border-radius:16px;font-size:.85rem;font-weight:500}.account-type.retirement{background:#fff3e0;color:#f57c00}.account-type.individual{background:#e8f5e8;color:#388e3c}.name-column{width:40%}.id-column,.brokerage-column,.type-column{width:15%}.actions-column{width:12%;text-align:right}.action-buttons{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap;flex-wrap:nowrap}.action-buttons .btn{margin:0;min-width:auto;padding:6px 10px;font-size:.8rem}.no-accounts-message{text-align:center;padding:40px 20px;color:#6c757d}.no-accounts-message p{margin:0 0 8px;font-size:1rem}.no-accounts-message p:last-child{margin-bottom:0;font-size:.9rem;opacity:.8}@media (max-width: 768px){.account-table-container{overflow-x:auto}.account-table{min-width:600px}.account-table th,.account-table td{padding:8px 12px;font-size:.85rem}.actions .btn{padding:6px 10px;font-size:.8rem}}.user-account-management-filters{display:flex;align-items:flex-start;margin-bottom:1.5rem;padding:1.5rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.search-filter-container{display:flex;flex-direction:column;gap:1rem;flex:1;margin-right:2rem}.search-filter-inputs{display:flex;gap:2rem;align-items:flex-start}.uam-filter-group{display:flex;flex-direction:column;min-width:320px}.uam-filter-label{font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.875rem}.search-input-container{position:relative;display:flex;align-items:center}.uam-search-input{width:100%;min-width:350px;padding:.75rem 2.5rem .75rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s;background-color:#fff}.uam-search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.clear-search-btn{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;font-size:1.25rem;line-height:1;transition:all .2s}.clear-search-btn:hover{background-color:#f3f4f6;color:#374151}.clear-search-btn:active{background-color:#e5e7eb}.search-help-text{color:#6b7280;font-size:.75rem;margin-top:.25rem;line-height:1.4}.uam-brokerage-select{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background-color:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s}.uam-brokerage-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.uam-brokerage-select:hover{border-color:#9ca3af}.uam-filter-help-text{color:#6b7280;font-size:.75rem;margin-top:.25rem;line-height:1.4;font-style:italic}.uam-filter-actions{display:flex;justify-content:flex-end;align-self:center;margin-top:0;min-width:150px;margin-left:auto}.uam-clear-filters-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;background-color:#6b7280;color:#fff;white-space:nowrap}.uam-clear-filters-btn:hover{background-color:#4b5563}.uam-clear-filters-btn:active{background-color:#374151}.uam-active-filters-container{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:1rem;width:100%}.uam-active-filters-text{color:#374151;font-size:.875rem;font-weight:500;background-color:#f3f4f6;padding:.5rem 1rem;border-radius:6px;border:1px solid #d1d5db;width:100%}.filter-tag{display:inline-flex;align-items:center;gap:.5rem;background-color:#3b82f6;color:#fff;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;margin:.25rem;border:none}.remove-filter-btn{background:none;border:none;color:#fff;cursor:pointer;padding:.125rem;border-radius:3px;font-size:1rem;line-height:1;transition:background-color .2s}.remove-filter-btn:hover{background-color:#fff3}@media (max-width: 768px){.user-account-management-filters,.search-filter-container,.search-filter-inputs{flex-direction:column;gap:1rem}.uam-filter-group{min-width:auto;flex:none}.uam-filter-actions{align-items:stretch;min-width:auto;justify-content:flex-start}.uam-clear-filters-btn{width:100%}}@media (max-width: 480px){.user-account-management-filters{padding:1rem;gap:.75rem}.uam-filter-group{gap:.5rem}}.user-account-management-stats{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.stats-header{margin-bottom:1.5rem;text-align:center}.stats-header h3{margin:0 0 .5rem;color:#111827;font-size:1.25rem;font-weight:600}.stats-header p{margin:0;color:#6b7280;font-size:.875rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:center;transition:all .2s;position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-card.primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#3b82f6}.stat-card.primary .stat-label,.stat-card.primary .stat-percentage{color:#ffffffe6}.stat-card.highlight{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981}.stat-card.highlight .stat-label,.stat-card.highlight .stat-percentage{color:#ffffffe6}.stat-value{font-size:2rem;font-weight:700;color:#111827;margin-bottom:.5rem;line-height:1}.stat-card.primary .stat-value,.stat-card.highlight .stat-value{color:#fff}.stat-label{font-size:.875rem;font-weight:500;color:#6b7280;margin-bottom:.25rem;line-height:1.4}.stat-percentage{font-size:.75rem;color:#059669;font-weight:600}.brokerage-distribution{margin-bottom:2rem;padding:1.5rem;background-color:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.brokerage-distribution h4{margin:0 0 1rem;color:#111827;font-size:1rem;font-weight:600}.distribution-bars{display:flex;flex-direction:column;gap:.75rem}.distribution-bar{display:flex;align-items:center;gap:1rem}.bar-label{display:flex;justify-content:space-between;align-items:center;min-width:200px;font-size:.875rem}.brokerage-name{font-weight:500;color:#374151}.brokerage-count{color:#6b7280;font-size:.75rem}.bar-container{flex:1;height:20px;background-color:#e5e7eb;border-radius:10px;overflow:hidden;position:relative}.bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:10px;transition:width .3s ease;min-width:20px}.bar-percentage{min-width:40px;text-align:right;font-size:.75rem;font-weight:600;color:#374151}.quick-insights{padding:1.5rem;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.quick-insights h4{margin:0 0 1rem;color:#0369a1;font-size:1rem;font-weight:600}.insights-grid{display:flex;flex-direction:column;gap:.75rem}.insight-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;font-size:.875rem;line-height:1.4}.insight-item.positive{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.insight-item.info{background-color:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.insight-item.suggestion{background-color:#fef3c7;border:1px solid #fcd34d;color:#92400e}.insight-icon{font-size:1.25rem;flex-shrink:0}@media (max-width: 768px){.account-stats{padding:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.stat-card{padding:.75rem}.stat-value{font-size:1.5rem}.bar-label{min-width:150px;flex-direction:column;align-items:flex-start;gap:.25rem}.distribution-bar{flex-direction:column;align-items:stretch;gap:.5rem}.bar-container{height:16px}.bar-percentage{text-align:left}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.stat-card,.brokerage-distribution,.quick-insights{padding:1rem}}.user-account-management{max-width:1200px;margin:0 auto;padding:20px}.user-account-management-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 6px #0000001a}.user-account-management-header h1{margin:0 0 8px;font-size:1.8rem;font-weight:600}.user-account-management-header p{margin:0;opacity:.9;font-size:1rem}.user-account-management-content{background:#f8f9fa;border-radius:12px;padding:24px;box-shadow:0 2px 4px #0000000d}.empty-state{text-align:center;padding:60px 20px;color:#6c757d}.empty-state-header{display:flex;flex-direction:column;align-items:center;margin-bottom:20px;text-align:center}.empty-state-header h3{margin:0 0 8px;font-size:1.5rem;color:#374151}.empty-state-header p{margin:0 0 16px;font-size:1.1rem;color:#6b7280}.empty-state p{margin:0 0 20px;font-size:1.1rem}.empty-state .btn{margin:.5rem;min-width:120px}.empty-state .btn-primary{margin-bottom:1rem}.empty-state .btn-secondary{margin-top:.5rem}.search-results-info{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:1rem;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.search-results-message{color:#0369a1;font-weight:500;font-size:.875rem}.search-results-count{color:#0369a1;font-size:.75rem;background-color:#e0f2fe;padding:.25rem .75rem;border-radius:4px;border:1px solid #bae6fd}@media (max-width: 640px){.search-results-info{flex-direction:column;align-items:flex-start;gap:.5rem}.search-results-count{align-self:flex-start}}@media (max-width: 768px){.user-account-management{padding:15px}.user-account-management-header{padding:16px}.user-account-management-header h1{font-size:1.5rem}.user-account-management-content{padding:16px}.filters-and-actions{flex-direction:column;align-items:stretch;gap:16px}.add-account-btn{align-self:flex-end}}:root{--z-base: 0;--z-below: -1;--z-sticky: 10;--z-fixed: 20;--z-content: 100;--z-overlay: 110;--z-backdrop: 120;--z-dropdown: 200;--z-popover: 210;--z-tooltip: 220;--z-navbar: 300;--z-sidebar: 310;--z-tab-bar: 320;--z-modal-backdrop: 400;--z-modal: 410;--z-modal-header: 420;--z-notification: 500;--z-toast: 510;--z-alert: 520;--z-loading: 600;--z-error-boundary: 610;--z-debug: 700;--z-dev-tools: 800;--z-maximum: 999}:root{--primary-dark: #0f1419;--primary-blue: #1e3a8a;--accent-green: #10b981;--accent-red: #ef4444;--accent-gold: #f59e0b;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #e2e8f0;--bg-dark: #1e293b;--text-primary: #1e293b;--text-secondary: #64748b;--text-light: #94a3b8;--text-white: #ffffff;--hello-height: 56px;--navbar-height: 60px;--total-sticky-height: 116px}body{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;color:var(--text-primary);scroll-behavior:smooth;-webkit-overflow-scrolling:touch}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:var(--total-sticky-height)}.main-content{position:relative;min-height:100vh;padding-top:var(--total-sticky-height)}@media (max-width: 768px){:root{--hello-height: 48px;--navbar-height: 52px;--total-sticky-height: 100px}}@media (max-width: 480px){:root{--hello-height: 44px;--navbar-height: 48px;--total-sticky-height: 92px}}
