@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap";.toast-container{position:fixed;top:16px;right:16px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px;max-width:400px}.toast{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius);background-color:var(--surface-raised);border:1px solid var(--border);box-shadow:var(--shadow-lg);cursor:pointer;animation:slideInRight var(--transition-slow);transition:opacity var(--transition),transform var(--transition)}.toast:hover{opacity:.9}.toast-icon{font-size:16px;flex-shrink:0}.toast-message{font-size:14px;color:var(--text)}.toast-success{border-left:3px solid var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-error .toast-icon{color:var(--danger)}.toast-warning{border-left:3px solid var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-info{border-left:3px solid var(--accent-turquoise)}.toast-info .toast-icon{color:var(--accent-turquoise)}.spinner{display:inline-block;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent-turquoise);animation:spin .6s linear infinite}.spinner-small{width:16px;height:16px}.spinner-medium{width:24px;height:24px}.spinner-large{width:36px;height:36px;border-width:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);font-weight:500;transition:all var(--transition);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:6px 12px;font-size:13px}.btn-medium{padding:8px 18px;font-size:14px}.btn-large{padding:12px 24px;font-size:15px}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-light);transform:translateY(-1px)}.btn-secondary{background-color:var(--surface-hover);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background-color:var(--surface-active);border-color:var(--text-muted)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--danger-dark);transform:translateY(-1px)}.btn-ghost{background:none;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){color:var(--text);background-color:var(--surface-hover)}.btn-icon{display:inline-flex;align-items:center;font-size:1.1em}.text-input-wrapper{display:flex;flex-direction:column;gap:6px}.text-input-label{font-size:14px;font-weight:500;color:var(--text-secondary)}.text-input-required{color:var(--danger);margin-left:2px}.text-input{padding:10px 14px;background-color:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.text-input::placeholder{color:var(--text-muted)}.text-input:focus{border-color:var(--accent-turquoise);box-shadow:0 0 0 3px #01d5f81a}.has-error .text-input{border-color:var(--danger)}.has-error .text-input:focus{box-shadow:0 0 0 3px #ef44441a}.text-input-error{font-size:13px;color:var(--danger);animation:slideUp var(--transition)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition)}.modal-container{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);position:relative;max-height:90vh;overflow-y:auto;z-index:var(--z-modal);animation:scaleIn var(--transition-slow)}.modal-small{width:400px;max-width:90vw}.modal-medium{width:600px;max-width:90vw}.modal-large{width:800px;max-width:95vw}.modal-xlarge{width:1000px;max-width:95vw}.modal-full{width:95vw;height:90vh}.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:24px;color:var(--text-muted);line-height:1;padding:4px;z-index:1;transition:color var(--transition)}.modal-close:hover{color:var(--text)}.modal-content{padding:24px}.create-agency-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.create-agency-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--danger)}.create-agency-form{display:flex;flex-direction:column;gap:16px}.create-agency-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.notification-bell{position:relative}.notification-bell-btn{display:flex;align-items:center;justify-content:center;position:relative;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;color:var(--text-secondary);font-size:18px;transition:all var(--transition)}.notification-bell-btn:hover{border-color:var(--text-muted);color:var(--text)}.notification-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;background-color:var(--danger);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;border-radius:8px}.notification-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:360px;max-height:480px;display:flex;flex-direction:column;background-color:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:slideDown var(--transition);z-index:var(--z-dropdown)}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.notification-dropdown-title{font-size:14px;font-weight:600;color:var(--text)}.notification-mark-all-btn{background:none;border:none;padding:0;color:var(--accent-turquoise);font-size:12px;font-weight:500;cursor:pointer;transition:opacity var(--transition)}.notification-mark-all-btn:hover{opacity:.8}.notification-list{overflow-y:auto;flex:1}.notification-empty{padding:32px 16px;text-align:center;color:var(--text-muted);font-size:13px}.notification-item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 16px;background:none;border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;transition:background-color var(--transition)}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--surface-hover)}.notification-item.unread{background-color:var(--surface)}.notification-item.unread:hover{background-color:var(--surface-hover)}.notification-item-icon{font-size:16px;flex-shrink:0;margin-top:2px}.notification-item-content{flex:1;min-width:0}.notification-item-title{font-size:13px;font-weight:500;color:var(--text);line-height:1.3}.notification-item-body{font-size:12px;color:var(--text-muted);line-height:1.3;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-item-time{font-size:11px;color:var(--text-muted);margin-top:4px}.notification-unread-dot{width:8px;height:8px;border-radius:50%;background-color:var(--accent-turquoise);flex-shrink:0;margin-top:6px}.header{background-color:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:var(--z-sticky)}.header:before{content:"";display:block;height:2px;background:var(--gradient-bar)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:var(--header-height)}.header-logo{font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.5px}.header-right{display:flex;align-items:center;gap:12px}.header-dropdown{position:relative}.header-agency-btn,.header-user-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;color:var(--text-secondary);font-size:13px;font-weight:500;transition:all var(--transition)}.header-agency-btn:hover,.header-user-btn:hover{border-color:var(--text-muted);color:var(--text)}.header-chevron{font-size:10px;opacity:.6}.header-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background-color:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:4px;animation:slideDown var(--transition);z-index:var(--z-dropdown)}.header-dropdown-item{display:block;width:100%;padding:8px 12px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:400;text-align:left;transition:all var(--transition)}.header-dropdown-item:hover{background-color:var(--surface-hover);color:var(--text)}.header-dropdown-item.active{color:var(--accent-turquoise)}.header-dropdown-danger:hover{color:var(--danger)}.header-dropdown-create{color:var(--accent-turquoise);font-weight:500}.header-dropdown-create:hover{color:var(--accent-turquoise)}.header-dropdown-theme{display:flex;align-items:center;gap:8px}.header-theme-icon{font-size:15px}.header-dropdown-divider{height:1px;background-color:var(--border);margin:4px 0}.sidebar-nav{display:flex;flex-direction:column;height:100%}.sidebar-nav-items{display:flex;flex-direction:column;gap:2px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 16px;background:none;border:none;border-radius:var(--radius);color:var(--text-secondary);font-size:14px;font-weight:500;text-align:left;transition:all var(--transition);width:100%}.sidebar-nav-item:hover{color:var(--text);background-color:var(--surface-hover)}.sidebar-nav-item.active{color:var(--accent-turquoise);background-color:var(--surface-active)}.sidebar-nav-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.sidebar-nav-label{white-space:nowrap;flex:1}.sidebar-nav-badge{min-width:20px;height:18px;padding:0 6px;background-color:var(--danger);color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center;border-radius:9px;flex-shrink:0}.page-container{display:flex;flex:1;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background-color:var(--surface);border-right:1px solid var(--border);overflow-y:auto;padding:16px 12px}.content-area{flex:1;overflow-y:auto;padding:32px;background-color:var(--background)}.confirm-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition)}.confirm-dialog{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px;width:420px;max-width:90vw;animation:scaleIn var(--transition-slow)}.confirm-title{font-size:18px;font-weight:600;color:var(--text);margin-bottom:12px}.confirm-body{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px}.confirm-actions{display:flex;justify-content:flex-end;gap:12px}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--background);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-bar)}.login-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-glow);padding:48px 40px;width:400px;max-width:90vw;animation:scaleIn var(--transition-slow)}.login-title{text-align:center;font-size:28px;font-weight:700;color:var(--text);margin-bottom:8px;letter-spacing:-.5px}.login-subtitle{text-align:center;font-size:14px;color:var(--text-secondary);margin-bottom:24px}.login-tabs{display:flex;gap:4px;background-color:var(--background-secondary);border-radius:var(--radius);padding:4px;margin-bottom:24px}.login-tab{flex:1;padding:8px 16px;border:none;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background-color var(--transition),color var(--transition)}.login-tab:hover:not(.active){color:var(--text)}.login-tab.active{background-color:#23285d;color:#fff;box-shadow:0 1px 3px #0000004d}.login-form{display:flex;flex-direction:column;gap:20px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.login-field input{padding:10px 14px;background-color:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:15px;color:var(--text);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.login-field input::placeholder{color:var(--text-muted)}.login-field input:focus{border-color:var(--accent-turquoise);box-shadow:0 0 0 3px #01d5f81a}.login-error{color:var(--danger);font-size:14px;text-align:center;animation:slideUp var(--transition)}.login-button{background:var(--gradient-bar);color:#fff;border:none;padding:12px;border-radius:var(--radius);font-size:15px;font-weight:600;transition:opacity var(--transition),transform var(--transition)}.login-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-forgot{text-align:right;font-size:13px;color:var(--text-secondary);text-decoration:none;margin-top:-12px;transition:color var(--transition)}.login-forgot:hover{color:var(--accent-turquoise)}.login-hint{text-align:center;font-size:14px;color:var(--text-secondary);line-height:1.5;margin-bottom:24px}.login-success{background-color:#01d5f814;border:1px solid rgb(1 213 248 / .2);border-radius:var(--radius);padding:14px 16px;font-size:14px;color:var(--text);line-height:1.5;margin-bottom:20px}.login-back{display:block;text-align:center;font-size:14px;color:var(--text-secondary);text-decoration:none;margin-top:16px;transition:color var(--transition)}.login-back:hover{color:var(--text)}.onboarding-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--background)}.onboarding-page:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-bar)}.onboarding-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-glow);padding:48px 40px;width:460px;max-width:90vw;animation:scaleIn var(--transition-slow)}.onboarding-title{text-align:center;font-size:24px;font-weight:700;color:var(--text);margin-bottom:8px}.onboarding-subtitle{text-align:center;font-size:14px;color:var(--text-secondary);margin-bottom:32px}.onboarding-form{display:flex;flex-direction:column;gap:20px}.onboarding-field{display:flex;flex-direction:column;gap:6px}.onboarding-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.onboarding-field input{padding:10px 14px;background-color:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:15px;color:var(--text);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.onboarding-field input::placeholder{color:var(--text-muted)}.onboarding-field input:focus{border-color:var(--accent-turquoise);box-shadow:0 0 0 3px #01d5f81a}.onboarding-error{color:var(--danger);font-size:14px;text-align:center}.onboarding-button{background:var(--gradient-bar);color:#fff;border:none;padding:12px;border-radius:var(--radius);font-size:15px;font-weight:600;transition:opacity var(--transition),transform var(--transition)}.onboarding-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.onboarding-button:disabled{opacity:.5;cursor:not-allowed}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:all var(--transition)}.card-hoverable:hover{border-color:var(--primary);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.select-agency-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--background)}.select-agency-container{text-align:center;max-width:600px;width:100%;padding:0 24px}.select-agency-title{font-size:24px;font-weight:700;color:var(--text);margin-bottom:8px}.select-agency-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:32px}.select-agency-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.select-agency-card{cursor:pointer;text-align:left}.select-agency-card-name{font-size:16px;font-weight:600;color:var(--text);margin-bottom:4px}.select-agency-card-role{font-size:13px;color:var(--text-secondary);text-transform:capitalize}.select-agency-card-create{border-style:dashed}.select-agency-card-create .select-agency-card-name{color:var(--accent-turquoise)}.bar-chart-wrapper{width:100%;overflow-x:auto}.bar-chart{width:100%;min-width:480px;height:auto;display:block}.bar-chart-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:2 4}.bar-chart-axis-label{fill:var(--text-muted);font-size:10px;font-family:inherit}.bar-chart-segment{transition:opacity var(--transition)}.bar-chart-col{cursor:default}.bar-chart-col.hovered .bar-chart-segment{opacity:.85}.bar-chart-value-label{fill:var(--text);font-size:11px;font-weight:600;font-family:inherit}.dashboard-billing{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.dashboard-billing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.dashboard-billing-card{display:flex;flex-direction:column;gap:6px;min-height:120px}.dashboard-billing-card.placeholder{min-height:120px;opacity:.4}.dashboard-billing-card.highlight{border-color:var(--accent-turquoise);box-shadow:var(--shadow-glow)}.dashboard-billing-card-label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.dashboard-billing-card-value{font-size:28px;font-weight:700;color:var(--text);line-height:1.2}.dashboard-billing-card-delta{font-size:12px;font-weight:500;margin-top:2px}.dashboard-billing-card-desc{font-size:12px;color:var(--text-muted)}.delta-up{color:var(--success)}.delta-down{color:var(--danger)}.delta-neutral{color:var(--text-muted)}.dashboard-billing-chart-card{display:flex;flex-direction:column;gap:12px}.dashboard-billing-chart-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.dashboard-operational-heading{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.dashboard{animation:fadeIn var(--transition-slow)}.dashboard-header{margin-bottom:32px}.dashboard-title{font-size:24px;font-weight:700;color:var(--text);margin-bottom:4px}.dashboard-agency{font-size:14px;color:var(--text-secondary)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.dashboard-card{display:flex;flex-direction:column;gap:4px}.dashboard-card-link{cursor:pointer;transition:border-color var(--transition),transform var(--transition)}.dashboard-card-link:hover{border-color:var(--accent-turquoise);transform:translateY(-2px)}.dashboard-card-label{font-size:13px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.dashboard-card-value{font-size:32px;font-weight:700;color:var(--text);line-height:1.2}.dashboard-card-desc{font-size:13px;color:var(--text-muted)}.global-dashboard-legend{display:flex;flex-wrap:wrap;gap:12px 16px;padding-top:4px}.global-dashboard-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.global-dashboard-legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block;flex-shrink:0}.global-dashboard-agency-list-card{display:flex;flex-direction:column;gap:12px;margin-top:24px}.global-dashboard-agency-list{display:flex;flex-direction:column;gap:2px}.global-dashboard-agency-row{display:grid;grid-template-columns:1.4fr 1.4fr .8fr 1fr auto;align-items:center;gap:16px;padding:14px 16px;background:none;border:1px solid transparent;border-radius:var(--radius);color:var(--text);font-size:14px;text-align:left;cursor:pointer;transition:all var(--transition);width:100%}.global-dashboard-agency-row:hover{background-color:var(--surface-hover);border-color:var(--border)}.global-dashboard-agency-name{display:inline-flex;align-items:center;gap:10px;font-weight:600}.global-dashboard-agency-mtd{color:var(--text);font-weight:500}.global-dashboard-agency-cad{color:var(--text-muted);font-size:12px}.global-dashboard-agency-delta{font-size:13px;font-weight:500}.global-dashboard-agency-pipeline{color:var(--text-muted);font-size:12px}.global-dashboard-agency-arrow{color:var(--text-muted);font-size:16px}@media (max-width: 768px){.global-dashboard-agency-row{grid-template-columns:1fr 1fr;gap:8px}.global-dashboard-agency-delta,.global-dashboard-agency-pipeline,.global-dashboard-agency-arrow{display:none}}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-icon{position:absolute;left:12px;font-size:14px;color:var(--text-muted);pointer-events:none}.search-input{width:100%;padding:9px 36px;background-color:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent-turquoise);box-shadow:0 0 0 3px #01d5f81a}.search-input-clear{position:absolute;right:8px;background:none;border:none;color:var(--text-muted);font-size:18px;padding:4px;line-height:1;transition:color var(--transition)}.search-input-clear:hover{color:var(--text)}.pagination{display:flex;align-items:center;justify-content:center;gap:4px;padding:16px 0}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;font-weight:500;transition:all var(--transition)}.pagination-btn:hover:not(:disabled):not(.active){background-color:var(--surface-hover);color:var(--text)}.pagination-btn.active{background-color:var(--primary);color:#fff;border-color:var(--primary)}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-ellipsis{color:var(--text-muted);padding:0 4px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;animation:fadeIn var(--transition-slow)}.empty-state-icon{font-size:48px;color:var(--text-muted);margin-bottom:16px;opacity:.6}.empty-state-title{font-size:18px;font-weight:600;color:var(--text);margin-bottom:8px}.empty-state-description{font-size:14px;color:var(--text-secondary);max-width:360px;line-height:1.6;margin-bottom:20px}.empty-state-action{margin-top:4px}.badge{display:inline-flex;align-items:center;padding:2px 10px;font-size:12px;font-weight:500;border-radius:100px;white-space:nowrap}.badge-default{background-color:var(--surface-hover);color:var(--text-secondary)}.badge-success{background-color:#10b98126;color:var(--success)}.badge-warning{background-color:#f59e0b26;color:var(--warning)}.badge-danger{background-color:#ef444426;color:var(--danger)}.badge-info{background-color:#01d5f826;color:var(--accent-turquoise)}.badge-purple{background-color:#bd62db26;color:var(--accent-purple)}.skeleton{background:linear-gradient(90deg,var(--surface-hover) 25%,var(--surface-active) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:14px;width:100%;margin-bottom:8px}.skeleton-text:last-child{width:60%;margin-bottom:0}.skeleton-circle{width:40px;height:40px;border-radius:50%}.skeleton-rect{width:100%;height:120px;border-radius:var(--radius)}.skeleton-card{width:100%;height:180px;border-radius:var(--radius-lg)}.client-form-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.client-form-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--danger)}.client-form{display:flex;flex-direction:column;gap:16px}.client-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.clients-page{animation:fadeIn var(--transition-slow)}.clients-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.clients-title{font-size:24px;font-weight:700;color:var(--text)}.clients-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.clients-count{font-size:13px;color:var(--text-muted);white-space:nowrap}.clients-skeleton{display:flex;flex-direction:column;gap:8px}.clients-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.clients-table{width:100%;border-collapse:collapse}.clients-table thead{background:var(--surface-hover)}.clients-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.clients-table th.sortable{cursor:pointer;transition:color var(--transition)}.clients-table th.sortable:hover{color:var(--text)}.clients-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.clients-row{cursor:pointer;transition:background-color var(--transition)}.clients-row:hover{background-color:var(--surface-hover)}.clients-row:last-child td{border-bottom:none}.client-name{font-weight:500;color:var(--text)}.domain-text{color:var(--accent-turquoise);font-size:13px}.no-domain{color:var(--text-muted)}.client-date{font-size:13px;color:var(--text-muted)}.actions-col{width:90px;text-align:center}.select-input-wrapper{display:flex;flex-direction:column;gap:6px}.select-input-label{font-size:14px;font-weight:500;color:var(--text-secondary)}.select-input-required{color:var(--danger);margin-left:2px}.select-input{padding:10px 36px 10px 14px;background-color:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239ca3af' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color var(--transition),box-shadow var(--transition)}.select-input:focus{border-color:var(--accent-turquoise);box-shadow:0 0 0 3px #01d5f81a}.has-error .select-input{border-color:var(--danger)}.select-input-error{font-size:13px;color:var(--danger);animation:slideUp var(--transition)}.project-form-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.project-form-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--danger)}.project-form{display:flex;flex-direction:column;gap:16px}.project-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.client-detail{animation:fadeIn var(--transition-slow)}.client-detail-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.client-detail-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px}.client-detail-header-left{display:flex;flex-direction:column;gap:4px}.back-btn{background:none;border:none;color:var(--text-muted);font-size:13px;padding:0;margin-bottom:4px;text-align:left;transition:color var(--transition)}.client-detail-name{font-size:24px;font-weight:700;color:var(--text)}.client-detail-domain{font-size:14px;color:var(--accent-turquoise)}.client-detail-header-actions{display:flex;gap:8px;flex-shrink:0}.client-info-card{display:flex;gap:32px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:32px}.client-info-item{display:flex;flex-direction:column;gap:4px}.client-info-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.client-info-value{font-size:15px;color:var(--text);font-weight:500}.client-portal-link{font-size:15px;font-weight:500;color:var(--accent-turquoise);text-decoration:none;transition:opacity var(--transition)}.client-portal-link:hover{text-decoration:underline}.client-projects-section{margin-bottom:32px}.client-projects-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.client-projects-title{font-size:18px;font-weight:600;color:var(--text)}.client-projects-loading{display:flex;justify-content:center;padding:40px 0}.client-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.client-project-card{cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:20px}.client-project-card-name{font-size:16px;font-weight:600;color:var(--text)}.client-project-card-meta{display:flex;justify-content:space-between;margin-top:auto;padding-top:8px}.client-project-card-tasks{font-size:13px;color:var(--text-secondary)}.client-project-card-date{font-size:12px;color:var(--text-muted)}.client-users-section{margin-top:8px}.client-users-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.client-users-title{font-size:18px;font-weight:600;color:var(--text)}.client-users-loading{display:flex;justify-content:center;padding:40px 0}.client-users-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.client-users-table{width:100%;border-collapse:collapse}.client-users-table thead{background:var(--surface-hover)}.client-users-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap}.client-users-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.client-users-table tr:last-child td{border-bottom:none}.user-name{font-weight:500;color:var(--text)}.user-email{font-size:13px;color:var(--accent-turquoise)}.user-date{font-size:13px;color:var(--text-muted)}.actions-col{width:120px;text-align:center}.action-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);padding:4px 8px;font-size:14px;margin:0 2px;transition:all var(--transition)}.action-btn:hover{background:var(--surface-active);color:var(--text);border-color:var(--text-muted)}.action-btn-danger:hover{color:var(--danger);border-color:var(--danger);background:#ef44441a}.action-btn-success:hover{color:var(--success);border-color:var(--success);background:#10b9811a}.projects-page{animation:fadeIn var(--transition-slow)}.projects-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.projects-title{font-size:24px;font-weight:700;color:var(--text)}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.projects-count{font-size:13px;color:var(--text-muted);white-space:nowrap}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px}.project-card{cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:20px}.project-card-name{font-size:16px;font-weight:600;color:var(--text)}.project-card-client{font-size:13px;color:var(--accent-turquoise)}.project-card-meta{display:flex;justify-content:space-between;margin-top:auto;padding-top:8px}.project-card-tasks{font-size:13px;color:var(--text-secondary)}.project-card-date{font-size:12px;color:var(--text-muted)}.task-panel-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:var(--z-modal-backdrop);display:flex;justify-content:flex-end;animation:fadeIn .15s ease}.task-panel{width:480px;max-width:90vw;height:100%;background:var(--surface);border-left:1px solid var(--border);overflow-y:auto;padding:24px;position:relative;animation:slideInRight var(--transition-slow)}.task-panel-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.task-panel-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--text-muted);font-size:24px;padding:4px;transition:color var(--transition)}.task-panel-close:hover{color:var(--text)}.task-panel-title-section{margin-bottom:20px;padding-right:32px}.task-panel-title{font-size:20px;font-weight:600;color:var(--text);cursor:text;line-height:1.3}.task-panel-title-input{font-size:20px;font-weight:600;color:var(--text);background:var(--background);border:1px solid var(--border-focus);border-radius:var(--radius);padding:4px 8px;width:100%;outline:none}.task-panel-section{margin-bottom:24px}.task-panel-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.task-linked-ticket{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius);color:var(--text);font-size:14px;cursor:pointer;transition:all var(--transition);text-align:left}.task-linked-ticket:hover{border-color:var(--primary);background:var(--surface-hover)}.task-linked-ticket-icon{color:var(--text-muted);font-size:18px;flex-shrink:0}.task-linked-ticket-number{font-weight:600;color:var(--accent-turquoise);flex-shrink:0}.task-linked-ticket-subject{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.task-linked-ticket-status{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--surface);padding:2px 8px;border-radius:4px;flex-shrink:0}.task-panel-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.task-tag{font-size:12px;font-weight:600;color:#fff;padding:3px 8px;border-radius:4px;display:flex;align-items:center;gap:4px}.task-tag-remove{background:none;border:none;color:#ffffffb3;font-size:14px;padding:0;line-height:1}.task-tag-remove:hover{color:#fff}.task-tag-add-btn{width:26px;height:26px;border-radius:4px;border:1px dashed var(--border);background:transparent;color:var(--text-muted);font-size:16px;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.task-tag-add-btn:hover{border-color:var(--primary);color:var(--primary-light)}.tag-menu{margin-top:8px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:4px}.tag-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:none;border:none;color:var(--text);font-size:13px;border-radius:var(--radius-sm);transition:background var(--transition);text-align:left}.tag-menu-item:hover{background:var(--surface-hover)}.tag-menu-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.tag-menu-create{width:100%;padding:8px 10px;background:none;border:none;border-top:1px solid var(--border);color:var(--text-muted);font-size:13px;text-align:left;transition:color var(--transition)}.tag-menu-create:hover{color:var(--primary-light)}.tag-menu-new{padding:8px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.tag-menu-new-input{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font-size:13px;color:var(--text);outline:none}.tag-menu-new-input:focus{border-color:var(--border-focus)}.tag-menu-colors{display:flex;flex-wrap:wrap;gap:4px}.tag-color-btn{width:22px;height:22px;border-radius:4px;border:2px solid transparent;transition:border-color var(--transition)}.tag-color-btn.selected{border-color:#fff}.tag-color-btn:hover{border-color:#ffffff80}.task-panel-date-input{width:100%;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius);padding:8px 12px;font-size:14px;color:var(--text);color-scheme:dark;outline:none;transition:border-color var(--transition)}.task-panel-date-input:focus{border-color:var(--border-focus)}.task-deadline-overdue{display:inline-block;margin-top:6px;font-size:12px;font-weight:600;color:var(--danger)}.task-desc-display{font-size:14px;color:var(--text);line-height:1.6;cursor:text;padding:8px 12px;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius);min-height:60px;white-space:pre-wrap}.task-desc-display.empty{color:var(--text-muted);font-style:italic}.task-desc-textarea{width:100%;background:var(--background);border:1px solid var(--border-focus);border-radius:var(--radius);padding:8px 12px;font-size:14px;color:var(--text);line-height:1.6;resize:vertical;outline:none;font-family:inherit}.task-desc-edit{display:flex;flex-direction:column;gap:8px}.task-desc-actions{display:flex;gap:8px}.task-checklist-header{display:flex;align-items:center;justify-content:space-between}.task-checklist-progress{font-size:12px;color:var(--text-muted)}.task-checklist-bar{height:4px;background:var(--border);border-radius:2px;margin-bottom:10px;overflow:hidden}.task-checklist-bar-fill{height:100%;background:var(--success);border-radius:2px;transition:width var(--transition-slow)}.task-checklist-items{display:flex;flex-direction:column;gap:2px}.checklist-item{display:flex;align-items:center;gap:8px;padding:4px 0;border-top:2px solid transparent;transition:opacity var(--transition)}.checklist-item.dragging{opacity:.3}.checklist-item.drag-over{border-top-color:var(--accent-turquoise)}.checklist-drag-handle{color:var(--text-muted);font-size:16px;cursor:grab;opacity:0;flex-shrink:0;display:flex;align-items:center;transition:opacity var(--transition)}.checklist-item:hover .checklist-drag-handle{opacity:1}.checklist-checkbox{width:16px;height:16px;accent-color:var(--success);flex-shrink:0}.checklist-text{flex:1;font-size:14px;color:var(--text);min-width:0;cursor:text}.checklist-edit-input{flex:1;min-width:0;font-size:14px;color:var(--text);background:var(--background);border:1px solid var(--border-focus);border-radius:var(--radius-sm);padding:2px 6px;outline:none;font-family:inherit}.checklist-text.done{text-decoration:line-through;color:var(--text-muted)}.checklist-delete{background:none;border:none;color:var(--text-muted);font-size:16px;padding:0 4px;opacity:0;transition:opacity var(--transition),color var(--transition)}.checklist-item:hover .checklist-delete{opacity:1}.checklist-delete:hover{color:var(--danger)}.checklist-add{margin-top:8px}.checklist-add-input{width:100%;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:6px 8px;font-size:13px;color:var(--text);transition:border-color var(--transition),background-color var(--transition)}.checklist-add-input::placeholder{color:var(--text-muted)}.checklist-add-input:focus{outline:none;background:var(--background);border-color:var(--border)}.task-panel-footer{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border-light);margin-top:8px}.task-meta{font-size:12px;color:var(--text-muted)}.board-page{animation:fadeIn var(--transition-slow);display:flex;flex-direction:column;height:calc(100vh - var(--header-height))}.board-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.board-header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:16px;flex-shrink:0}.board-header-left{display:flex;flex-direction:column;gap:2px}.board-title{font-size:20px;font-weight:700;color:var(--text)}.board-client{font-size:13px;color:var(--accent-turquoise)}.board-header-actions{display:flex;gap:8px}.board-container{flex:1;overflow-x:auto;overflow-y:hidden;padding-bottom:16px}.board-columns{display:flex;gap:12px;height:100%;align-items:flex-start}.board-column{flex-shrink:0;width:280px;max-height:100%;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition)}.board-column.drag-over{border-color:var(--primary);background:var(--surface-hover)}.column-header{display:flex;align-items:center;gap:8px;padding:12px 12px 8px;flex-shrink:0}.column-name{font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;cursor:default;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-name-input{font-size:13px;font-weight:600;color:var(--text);background:var(--background);border:1px solid var(--border-focus);border-radius:var(--radius-sm);padding:2px 6px;flex:1;min-width:0;outline:none}.column-count{font-size:12px;color:var(--text-muted);background:var(--surface-hover);border-radius:10px;padding:1px 7px;flex-shrink:0}.column-menu-btn{background:none;border:none;color:var(--text-muted);font-size:16px;padding:0 4px;opacity:0;transition:opacity var(--transition),color var(--transition)}.column-header:hover .column-menu-btn{opacity:1}.column-menu-btn:hover{color:var(--danger)}.column-cards{flex:1;overflow-y:auto;padding:0 8px;display:flex;flex-direction:column;gap:6px;min-height:20px}.column-quick-add{padding:8px;flex-shrink:0}.quick-add-input{width:100%;background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:8px 10px;font-size:13px;color:var(--text);transition:border-color var(--transition),background-color var(--transition)}.quick-add-input::placeholder{color:var(--text-muted)}.quick-add-input:focus{outline:none;background:var(--background);border-color:var(--border)}.kanban-card{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition);-webkit-user-select:none;user-select:none}.kanban-card:hover{border-color:var(--border);box-shadow:var(--shadow)}.kanban-card[draggable=true]:active{opacity:.6}.card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.card-tag{font-size:10px;font-weight:600;color:#fff;padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.card-tag-overflow{font-size:10px;color:var(--text-muted);padding:1px 4px}.card-title{font-size:14px;font-weight:500;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px;min-height:0}.card-footer:empty{display:none}.card-ticket{font-size:11px;color:var(--accent-turquoise);display:flex;align-items:center;gap:3px;font-weight:500}.card-checklist{font-size:12px;color:var(--text-muted)}.card-checklist.complete{color:var(--success)}.card-deadline{font-size:12px;color:var(--text-muted)}.card-deadline.overdue{color:var(--danger);font-weight:600}.card-assignee{font-size:11px;font-weight:600;color:var(--text-inverse);background:var(--accent-purple);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-transform:uppercase}.board-add-column{flex-shrink:0;width:280px}.add-column-btn{width:100%;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:14px;color:var(--text-muted);font-size:14px;transition:all var(--transition)}.add-column-btn:hover{border-color:var(--primary);color:var(--primary-light);background:var(--surface-hover)}.add-column-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;gap:8px}.add-column-input{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;font-size:14px;color:var(--text);outline:none}.add-column-input:focus{border-color:var(--border-focus)}.add-column-actions{display:flex;gap:8px}.back-btn{background:none;border:none;color:var(--text-muted);font-size:13px;padding:0;margin-bottom:2px;text-align:left;transition:color var(--transition)}.back-btn:hover{color:var(--accent-turquoise)}.ticket-form-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.ticket-form{display:flex;flex-direction:column;gap:16px}.ticket-form-error{background:#ef44441a;border:1px solid var(--danger);border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--danger);margin-bottom:4px}.ticket-form-field{display:flex;flex-direction:column;gap:4px}.ticket-form-textarea{width:100%;background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:14px;color:var(--text);line-height:1.6;resize:vertical;outline:none;font-family:inherit;transition:border-color var(--transition)}.ticket-form-textarea:focus{border-color:var(--border-focus)}.ticket-form-row{display:flex;gap:12px}.ticket-form-row>*{flex:1}.ticket-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.tickets-page{animation:fadeIn var(--transition-slow)}.tickets-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.tickets-title{font-size:24px;font-weight:700;color:var(--text)}.tickets-status-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border-light);padding-bottom:0}.status-tab{padding:8px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);margin-bottom:-1px}.status-tab:hover{color:var(--text-secondary)}.status-tab.active{color:var(--primary-light);border-bottom-color:var(--primary)}.tickets-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.tickets-count{font-size:13px;color:var(--text-muted);white-space:nowrap}.tickets-skeleton{display:flex;flex-direction:column;gap:8px}.tickets-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.tickets-table{width:100%;border-collapse:collapse}.tickets-table thead{background:var(--surface-hover)}.tickets-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.tickets-table th.sortable{cursor:pointer;transition:color var(--transition)}.tickets-table th.sortable:hover{color:var(--text)}.tickets-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.tickets-row{cursor:pointer;transition:background-color var(--transition)}.tickets-row:hover{background-color:var(--surface-hover)}.tickets-row:last-child td{border-bottom:none}.tickets-row.unassigned{border-left:3px solid var(--warning)}.ticket-subject-col{display:flex;align-items:center;gap:8px}.ticket-msg-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:10px;background:var(--surface-active);color:var(--text-muted);font-size:11px;font-weight:600;padding:0 5px}.ticket-assignee{font-size:13px}.unassigned-label{color:var(--text-muted);font-style:italic}.create-task-modal-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.create-task-modal-form{display:flex;flex-direction:column;gap:16px}.create-task-modal-error{background:#ef44441a;border:1px solid var(--danger);border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--danger);margin-bottom:4px}.create-task-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.ticket-detail-page{animation:fadeIn var(--transition-slow);display:flex;flex-direction:column;gap:20px}.ticket-detail-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.ticket-detail-header{display:flex;justify-content:space-between;align-items:flex-start}.ticket-detail-header-left{flex:1;min-width:0}.ticket-detail-title-row{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.ticket-detail-number{font-size:16px;font-weight:600;color:var(--text-muted)}.ticket-detail-title{font-size:22px;font-weight:700;color:var(--text);line-height:1.3}.ticket-detail-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted)}.ticket-detail-client{color:var(--accent-turquoise);font-weight:500}.ticket-detail-requested-by{color:var(--text-secondary)}.ticket-detail-sep{color:var(--text-muted)}.ticket-detail-header-actions{flex-shrink:0}.ticket-detail-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.ticket-control{flex:0 0 160px;min-width:0}@media (max-width: 768px){.ticket-control{flex:1 1 calc(50% - 8px)}.ticket-estimate-control{flex:1 1 100%}.ticket-estimate-edit{flex-wrap:wrap}.ticket-linked-task{flex:1 1 100%}.linked-task-info{flex-wrap:wrap}.linked-task-title{max-width:none}.ticket-badges{flex:1 1 100%;margin-left:0}}@media (max-width: 480px){.ticket-detail-controls{gap:12px;padding:12px}.ticket-control{flex:1 1 100%}}.ticket-estimate-control{flex:0 0 auto}.ticket-estimate-display{display:flex;flex-direction:column;gap:4px}.ticket-estimate-label{font-size:13px;font-weight:500;color:var(--text-muted)}.ticket-estimate-value{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;font-size:14px;color:var(--text);cursor:pointer;transition:all var(--transition);text-align:left;white-space:nowrap}.ticket-estimate-value:hover{border-color:var(--primary);color:var(--primary-light)}.ticket-estimate-edit{display:flex;align-items:flex-end;gap:8px}.ticket-estimate-actions{display:flex;gap:4px}.ticket-linked-task{flex:0 0 auto;display:flex;align-items:center}.linked-task-info{display:flex;align-items:center;gap:8px}.linked-task-label{font-size:12px;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:4px;white-space:nowrap}.linked-task-link{background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 10px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);display:flex;align-items:center;gap:6px;white-space:nowrap}.linked-task-link:hover{border-color:var(--primary);color:var(--primary-light)}.linked-task-project{font-weight:500;color:var(--accent-turquoise)}.linked-task-sep{color:var(--text-muted);font-size:10px}.linked-task-column{color:var(--text-muted)}.linked-task-title{max-width:200px;overflow:hidden;text-overflow:ellipsis}.linked-task-unlink{background:none;border:none;color:var(--text-muted);font-size:18px;padding:4px;cursor:pointer;transition:color var(--transition);display:flex;align-items:center}.linked-task-unlink:hover{color:var(--danger)}.ticket-badges{display:flex;gap:8px;margin-left:auto;align-items:center}.ticket-conversation{display:flex;flex-direction:column;gap:16px}.ticket-message{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.ticket-message.internal{background:#f59e0b0f;border-color:#f59e0b4d}.ticket-message.from-client{border-left:3px solid var(--accent-turquoise)}.msg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.msg-author{display:flex;align-items:center;gap:8px}.msg-author-avatar{width:30px;height:30px;border-radius:50%;background:var(--primary);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.ticket-message.from-client .msg-author-avatar{background:var(--accent-turquoise)}.msg-author-name{font-weight:600;font-size:14px;color:var(--text)}.msg-internal-badge{font-size:11px;font-weight:600;color:#f59e0b;background:#f59e0b26;padding:2px 8px;border-radius:4px}.msg-client-badge{font-size:11px;font-weight:600;color:var(--accent-turquoise);background:#01d5f81a;padding:2px 8px;border-radius:4px}.msg-time{font-size:12px;color:var(--text-muted)}.msg-content{font-size:14px;color:var(--text-secondary);line-height:1.7;white-space:pre-wrap}.msg-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light)}.msg-attachment{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);text-decoration:none;transition:all var(--transition)}.msg-attachment:hover{background:var(--surface-hover);color:var(--primary-light);border-color:var(--primary)}.att-icon{font-size:14px}.att-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-size{color:var(--text-muted);font-size:11px}.ticket-reply{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.ticket-reply.reply-internal{border-color:#f59e0b66;background:#f59e0b0a}.reply-internal-notice{font-size:12px;color:#f59e0b;font-weight:500;margin-bottom:8px}.reply-textarea{width:100%;background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:14px;color:var(--text);line-height:1.6;resize:vertical;outline:none;font-family:inherit;transition:border-color var(--transition)}.reply-textarea:focus{border-color:var(--border-focus)}.reply-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.reply-attachment-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary)}.reply-att-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-att-size{color:var(--text-muted);font-size:11px}.reply-att-remove{background:none;border:none;color:var(--text-muted);font-size:16px;padding:0;line-height:1;cursor:pointer}.reply-att-remove:hover{color:var(--danger)}.reply-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.reply-actions-left{display:flex;align-items:center;gap:8px}.reply-file-input{display:none}.reply-attach-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;padding:4px 10px;cursor:pointer;transition:all var(--transition)}.reply-attach-btn:hover{color:var(--text);border-color:var(--text-muted)}.reply-actions-right{display:flex;gap:8px}.billing-page{animation:fadeIn var(--transition-slow)}.billing-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.billing-title{font-size:24px;font-weight:700;color:var(--text)}.billing-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border-light);padding-bottom:0}.billing-tab{padding:8px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);margin-bottom:-1px}.billing-tab:hover{color:var(--text-secondary)}.billing-tab.active{color:var(--primary-light);border-bottom-color:var(--primary)}.billing-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.billing-count{font-size:13px;color:var(--text-muted);white-space:nowrap}.billing-skeleton{display:flex;flex-direction:column;gap:8px}.billing-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.billing-table{width:100%;border-collapse:collapse}.billing-table thead{background:var(--surface-hover)}.billing-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.billing-table th.sortable{cursor:pointer;transition:color var(--transition)}.billing-table th.sortable:hover{color:var(--text)}.billing-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.billing-row:last-child td{border-bottom:none}.billing-ticket-number{font-weight:600;color:var(--primary-light);font-size:13px;white-space:nowrap;cursor:pointer;transition:color var(--transition)}.billing-ticket-number:hover{color:var(--primary);text-decoration:underline}.billing-subject{font-weight:500;color:var(--text);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.billing-client{color:var(--text-secondary);font-size:13px}.billing-date{font-size:13px;color:var(--text-muted);white-space:nowrap}.editable-value{cursor:pointer;padding:4px 8px;border-radius:var(--radius);transition:background-color var(--transition)}.editable-value:hover{background-color:var(--surface-hover)}.invoice-value{font-weight:500;color:var(--success)}.inline-edit{display:flex;align-items:center;gap:4px}.inline-edit-input{width:120px;padding:4px 8px;border:1px solid var(--primary);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:13px;outline:none}.inline-edit-input:focus{box-shadow:0 0 0 3px #01d5f81a}.inline-edit-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius);cursor:pointer;font-size:14px;transition:background-color var(--transition)}.inline-edit-btn.save{background:var(--success);color:#fff}.inline-edit-btn.save:hover{background:var(--success-dark)}.inline-edit-btn.cancel{background:var(--surface-active);color:var(--text-muted)}.inline-edit-btn.cancel:hover{background:var(--surface-hover)}.add-invoice-btn{padding:4px 10px;border:1px dashed var(--border);border-radius:var(--radius);background:none;color:var(--text-muted);font-size:12px;cursor:pointer;transition:all var(--transition)}.add-invoice-btn:hover{border-color:var(--primary);color:var(--primary-light);background:var(--surface-hover)}.monitor-form-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:20px}.monitor-form{display:flex;flex-direction:column;gap:16px}.monitor-form-error{background:#ef44441a;border:1px solid var(--danger);border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--danger);margin-bottom:4px}.monitor-form-checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.monitor-form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.monitor-form-conditional{padding-left:24px}.monitor-form-help-text{display:block;font-size:12px;color:var(--text-muted);margin-top:4px}.monitor-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.monitors-page{animation:fadeIn var(--transition-slow)}.monitors-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.monitors-title{font-size:24px;font-weight:700;color:var(--text)}.monitors-header-actions{display:flex;gap:8px}.monitors-summary{display:flex;gap:16px;margin-bottom:20px}.summary-stat{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 20px;text-align:center}.summary-value{display:block;font-size:28px;font-weight:700;color:var(--text)}.summary-label{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.summary-up .summary-value{color:var(--success)}.summary-down .summary-value{color:var(--danger)}.summary-paused .summary-value{color:var(--text-muted)}.monitors-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:20px}.monitors-status-filter{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2px}.status-filter-btn{padding:6px 12px;border:none;background:transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;cursor:pointer;transition:all var(--transition)}.status-filter-btn:hover{color:var(--text)}.status-filter-btn.active{background:var(--primary);color:#fff}.monitors-skeleton,.monitors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.monitor-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;cursor:pointer;transition:all var(--transition)}.monitor-card:hover{border-color:var(--primary);background:var(--surface-hover)}.monitor-card.card-down{border-color:#ef444466}.monitor-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-up{background:var(--success);box-shadow:0 0 6px #10b98166}.dot-down{background:var(--danger);box-shadow:0 0 6px #ef444466;animation:pulse 2s infinite}.dot-pending{background:var(--text-muted)}.dot-paused{background:var(--text-muted);opacity:.5}.monitor-card-name{font-weight:600;font-size:15px;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-card-url{font-size:13px;color:var(--text-muted);margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-card-footer{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-muted)}.monitor-card-response{font-weight:600;color:var(--text-secondary)}.monitor-card-client{color:var(--accent-turquoise)}.monitor-card-check{margin-left:auto}.monitor-detail-page{animation:fadeIn var(--transition-slow);display:flex;flex-direction:column;gap:20px}.monitor-detail-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.monitor-detail-header{display:flex;justify-content:space-between;align-items:flex-start}.monitor-detail-header-left{flex:1;min-width:0}.back-btn{background:none;border:none;color:var(--text-muted);font-size:13px;padding:0;margin-bottom:8px;cursor:pointer;transition:color var(--transition)}.back-btn:hover{color:var(--primary-light)}.monitor-detail-title-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.status-dot-lg{width:14px;height:14px;border-radius:50%;flex-shrink:0}.status-dot-lg.dot-up{background:var(--success);box-shadow:0 0 8px #10b98180}.status-dot-lg.dot-down{background:var(--danger);box-shadow:0 0 8px #ef444480}.status-dot-lg.dot-pending{background:var(--text-muted)}.status-dot-lg.dot-paused{background:var(--text-muted);opacity:.5}.monitor-detail-title{font-size:22px;font-weight:700;color:var(--text)}.monitor-detail-url{color:var(--accent-turquoise);font-size:14px;text-decoration:none}.monitor-detail-url:hover{text-decoration:underline}.monitor-detail-header-actions{display:flex;gap:8px;flex-shrink:0}.monitor-info-grid{display:flex;gap:16px;flex-wrap:wrap}.info-card{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 18px;display:flex;flex-direction:column;gap:4px}.info-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:20px;font-weight:700;color:var(--text)}.info-value-sm{font-size:14px;font-weight:500}.info-sub{font-size:12px;color:var(--text-muted)}.ssl-ok .info-value{color:var(--success)}.ssl-caution .info-value{color:#f59e0b}.ssl-warning{border-color:#f59e0b66}.ssl-warning .info-value{color:#f59e0b}.ssl-critical{border-color:#ef444466}.ssl-critical .info-value{color:var(--danger)}.ssl-expired{border-color:var(--danger);background:#ef44440f}.ssl-expired .info-value{color:var(--danger)}.verify-text-value{display:flex;align-items:center;gap:6px}.verify-icon{font-size:16px;font-weight:700}.verify-icon.icon-ok{color:var(--success)}.verify-icon.icon-fail{color:var(--danger)}.verify-text-fail{border-color:#ef444466}.verify-text-ok .info-value{color:var(--text-secondary)}.monitor-error-bar{background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--danger)}.monitor-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:0}.monitor-section>.section-title{margin-bottom:16px}.period-selector{display:flex;gap:4px;background:var(--background-secondary);border-radius:var(--radius-sm);padding:2px}.period-btn{padding:4px 10px;border:none;background:transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-size:12px;cursor:pointer;transition:all var(--transition)}.period-btn:hover{color:var(--text)}.period-btn.active{background:var(--primary);color:#fff}.response-chart{display:flex;align-items:flex-end;gap:2px;height:120px;padding:0 4px}.chart-bar{flex:1;min-width:3px;max-width:12px;background:var(--primary);border-radius:2px 2px 0 0;transition:height var(--transition);cursor:crosshair}.chart-bar:hover{background:var(--primary-light)}.chart-bar.bar-down{background:var(--danger)}.no-data{text-align:center;padding:32px;color:var(--text-muted);font-size:14px}.alerts-list{display:flex;flex-direction:column;gap:6px}.alert-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--radius-sm);background:var(--background-secondary);font-size:13px}.alert-item.alert-down{border-left:3px solid var(--danger)}.alert-item.alert-up{border-left:3px solid var(--success)}.alert-item.alert-brief_downtime{border-left:3px solid var(--accent-turquoise)}.alert-item.alert-ssl_warning,.alert-item.alert-ssl_critical{border-left:3px solid #F59E0B}.alert-item.alert-ssl_expired{border-left:3px solid var(--danger)}.alert-message{color:var(--text-secondary);flex:1;min-width:0}.alert-time{color:var(--text-muted);font-size:12px;flex-shrink:0;margin-left:12px}.checks-table-wrapper{overflow-x:auto}.checks-table{width:100%;border-collapse:collapse}.checks-table th{padding:10px 14px;text-align:left;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}.checks-table td{padding:10px 14px;border-bottom:1px solid var(--border-light);font-size:13px;color:var(--text-secondary)}.checks-table tr:last-child td{border-bottom:none}.check-code{font-family:monospace;font-weight:600}.check-time{font-weight:500}.check-error{color:var(--text-muted);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.check-date{color:var(--text-muted);font-size:12px;white-space:nowrap}.my-work-page{animation:fadeIn var(--transition-slow)}.my-work-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.my-work-title{font-size:24px;font-weight:700;color:var(--text)}.my-work-skeleton{display:flex;flex-direction:column;gap:8px}.monitor-banner{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:var(--radius-lg);font-size:14px;font-weight:500;margin-bottom:24px}.monitor-banner-ok{background:var(--success-bg, rgba(16, 185, 129, .1));color:var(--success, #10b981);border:1px solid var(--success-border, rgba(16, 185, 129, .2))}.monitor-banner-error{background:var(--danger-bg, rgba(239, 68, 68, .1));color:var(--danger, #ef4444);border:1px solid var(--danger-border, rgba(239, 68, 68, .2));cursor:pointer;transition:opacity var(--transition)}.monitor-banner-error:hover{opacity:.85}.monitor-banner-icon{font-size:18px;flex-shrink:0}.my-work-section{margin-bottom:32px}.section-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text);margin-bottom:12px}.section-empty{font-size:14px;color:var(--text-muted);padding:16px 0}.my-work-table{width:100%;border-collapse:collapse}.my-work-table thead{background:var(--surface-hover)}.my-work-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.my-work-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.my-work-row{cursor:pointer;transition:background-color var(--transition)}.my-work-row:hover{background-color:var(--surface-hover)}.my-work-row:last-child td{border-bottom:none}.ticket-number{font-weight:600;color:var(--text-muted);font-size:13px;white-space:nowrap}.ticket-subject{font-weight:500;color:var(--text)}.ticket-client{color:var(--text-secondary);font-size:13px}.ticket-date{font-size:13px;color:var(--text-muted);white-space:nowrap}.billing-amount{font-weight:600;color:var(--text);white-space:nowrap}.unassigned-wrapper{border-left:3px solid var(--warning)}.task-cards{display:flex;flex-direction:column;gap:8px}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px;cursor:pointer;transition:border-color var(--transition),background-color var(--transition)}.task-card:hover{border-color:var(--accent-turquoise);background-color:var(--surface-hover)}.task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.task-card-title{font-weight:500;color:var(--text);font-size:14px}.task-card-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--text-muted)}.task-card-project{color:var(--text-secondary)}.task-card-deadline{display:flex;align-items:center;gap:4px}.task-card-deadline.overdue{color:var(--danger);font-weight:500}.task-card-checklist{display:flex;align-items:center;gap:8px;margin-top:8px}.checklist-bar{flex:1;height:4px;background:var(--surface-hover);border-radius:2px;overflow:hidden;max-width:120px}.checklist-bar-fill{height:100%;background:var(--success, #10b981);border-radius:2px;transition:width var(--transition)}.checklist-label{font-size:12px;color:var(--text-muted)}.task-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.task-tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500}.agency-badge{display:inline-block;padding:2px 8px;border-radius:10px;background:var(--surface-active);color:var(--text-muted);font-size:11px;font-weight:500;white-space:nowrap}.account-page{animation:fadeIn var(--transition-slow);max-width:600px}.account-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.account-title{font-size:22px;font-weight:700;color:var(--text);margin-bottom:24px}.account-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px}.account-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.account-section-header .account-section-title{margin-bottom:0}.account-section-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:16px}.account-info{display:flex;flex-direction:column;gap:10px}.account-row{display:flex;align-items:center;gap:12px}.account-label{font-size:13px;font-weight:600;color:var(--text-muted);min-width:100px}.account-value{font-size:14px;color:var(--text)}.account-edit-form{display:flex;flex-direction:column;gap:14px}.account-field{display:flex;flex-direction:column;gap:6px}.account-input{padding:10px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;outline:none;transition:border-color var(--transition)}.account-input:focus{border-color:var(--accent-turquoise)}.account-edit-actions,.account-theme-toggle{display:flex;gap:8px}.account-theme-option{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--background-secondary);border:2px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:14px;font-weight:500;transition:all var(--transition)}.account-theme-option:hover{border-color:var(--text-muted);color:var(--text)}.account-theme-option.active{border-color:var(--accent-turquoise);color:var(--text);background:var(--surface-hover)}.account-theme-icon{font-size:18px}.account-slack-row{display:flex;gap:8px;align-items:center}.account-slack-row .account-input{flex:1}.account-help-text{font-size:12px;color:var(--text-muted);margin-top:4px}.account-agencies-list{display:flex;flex-direction:column;gap:10px}.account-agency-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-light)}.account-agency-item:last-child{border-bottom:none;padding-bottom:0}.account-agency-item:first-child{padding-top:0}.account-agency-name{font-size:14px;font-weight:500;color:var(--text)}.account-agency-badges{display:flex;gap:6px}.settings-page{animation:fadeIn var(--transition-slow);max-width:600px}.settings-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.settings-title{font-size:22px;font-weight:700;color:var(--text);margin-bottom:24px}.settings-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px}.settings-section-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:16px}.settings-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.settings-field:last-child{margin-bottom:0}.settings-label{font-size:13px;font-weight:600;color:var(--text-muted)}.settings-input{padding:10px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;outline:none;transition:border-color var(--transition)}.settings-input:focus{border-color:var(--accent-turquoise)}.settings-input-row{display:flex;gap:8px;align-items:center}.settings-input-row .settings-input{flex:1}.settings-help-text{font-size:12px;color:var(--text-muted);margin-top:4px}.add-member-title{font-size:20px;font-weight:600;color:var(--text);margin-bottom:8px}.add-member-hint{font-size:13px;color:var(--text-muted);margin-bottom:20px;line-height:1.4}.add-member-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--danger)}.add-member-form{display:flex;flex-direction:column;gap:16px}.add-member-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.members-page{animation:fadeIn var(--transition-slow)}.members-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.members-title{font-size:24px;font-weight:700;color:var(--text)}.members-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.members-count{font-size:13px;color:var(--text-muted);white-space:nowrap}.members-skeleton{display:flex;flex-direction:column;gap:8px}.members-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.members-table{width:100%;border-collapse:collapse}.members-table thead{background:var(--surface-hover)}.members-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.members-table th.sortable{cursor:pointer;transition:color var(--transition)}.members-table th.sortable:hover{color:var(--text)}.members-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-secondary)}.members-row:last-child td{border-bottom:none}.member-name{font-weight:500;color:var(--text)}.member-email{font-size:13px;color:var(--text-muted)}.member-slack{text-align:center}.slack-check{color:var(--accent-green);font-size:16px;font-weight:700}.member-date{font-size:13px;color:var(--text-muted)}.members-table .actions-col{width:80px;text-align:center}.members-table .action-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);padding:4px 8px;font-size:14px;transition:all var(--transition)}.members-table .action-btn:hover{background:var(--surface-active);color:var(--text);border-color:var(--text-muted)}.portal-header{background-color:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:var(--z-sticky)}.portal-header:before{content:"";display:block;height:2px;background:var(--gradient-bar)}.portal-header-content{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:var(--header-height);max-width:1200px;margin:0 auto}.portal-header-logo{font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.5px}.portal-header-right{display:flex;align-items:center;gap:12px}.portal-header-dropdown{position:relative}.portal-header-user-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;color:var(--text-secondary);font-size:13px;font-weight:500;transition:all var(--transition)}.portal-header-user-btn:hover{border-color:var(--text-muted);color:var(--text)}.portal-header-chevron{font-size:10px;opacity:.6}.portal-header-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background-color:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:4px;animation:slideDown var(--transition);z-index:var(--z-dropdown)}.portal-header-menu-item{display:block;width:100%;padding:8px 12px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:400;text-align:left;transition:all var(--transition)}.portal-header-menu-item:hover{background-color:var(--surface-hover);color:var(--text)}.portal-header-menu-danger:hover{color:var(--danger)}.portal-header-menu-theme{display:flex;align-items:center;gap:8px}.portal-header-theme-icon{font-size:15px}.portal-header-menu-divider{height:1px;background-color:var(--border);margin:4px 0}.portal-nav{background-color:var(--surface);border-bottom:1px solid var(--border)}.portal-nav-items{display:flex;gap:4px;padding:0 24px;max-width:1200px;margin:0 auto}.portal-nav-item{padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;transition:all var(--transition);margin-bottom:-1px}.portal-nav-item:hover{color:var(--text)}.portal-nav-item.active{color:var(--accent-turquoise);border-bottom-color:var(--accent-turquoise)}.portal-layout{min-height:100vh;display:flex;flex-direction:column}.portal-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:24px}.portal-dashboard-page{animation:fadeIn var(--transition-slow)}.portal-dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.portal-welcome{margin-bottom:32px}.portal-welcome-title{font-size:24px;font-weight:700;color:var(--text);margin-bottom:4px}.portal-welcome-subtitle{font-size:15px;color:var(--text-secondary)}.portal-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.portal-dashboard-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:8px;text-align:left;transition:all var(--transition)}.portal-dashboard-card:hover{border-color:var(--accent-turquoise);box-shadow:var(--shadow-glow)}.portal-card-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.portal-card-value{font-size:36px;font-weight:700;color:var(--text)}.portal-card-link{font-size:13px;color:var(--accent-turquoise);margin-top:4px}.portal-tickets-page{animation:fadeIn var(--transition-slow)}.portal-tickets-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.portal-tickets-title{font-size:22px;font-weight:700;color:var(--text)}.portal-create-btn{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;transition:all var(--transition)}.portal-create-btn:hover{background:var(--primary-light)}.portal-tickets-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.portal-tickets-tabs{display:flex;gap:4px}.portal-tab{padding:6px 14px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;transition:all var(--transition)}.portal-tab:hover{border-color:var(--text-muted);color:var(--text)}.portal-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.portal-tickets-search{padding:8px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;width:240px;outline:none;transition:border-color var(--transition)}.portal-tickets-search:focus{border-color:var(--accent-turquoise)}.portal-tickets-search::placeholder{color:var(--text-muted)}.portal-tickets-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.portal-tickets-empty{text-align:center;padding:48px;color:var(--text-muted);font-size:15px}.portal-tickets-list{display:flex;flex-direction:column;gap:6px}.portal-ticket-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;transition:all var(--transition);width:100%}.portal-ticket-row:hover{border-color:var(--accent-turquoise);background:var(--surface-hover)}.portal-ticket-row-main{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.portal-ticket-number{font-size:13px;font-weight:600;color:var(--text-muted);flex-shrink:0}.portal-ticket-subject{font-size:14px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-ticket-row-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.portal-ticket-time{font-size:12px;color:var(--text-muted);min-width:50px;text-align:right}.portal-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn var(--transition)}.portal-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;width:520px;max-width:90vw;max-height:90vh;overflow-y:auto;animation:scaleIn var(--transition)}.portal-modal-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:20px}.portal-modal-field{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.portal-modal-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.portal-modal-field input,.portal-modal-field textarea{padding:10px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;outline:none;transition:border-color var(--transition);font-family:inherit;resize:vertical}.portal-modal-field input:focus,.portal-modal-field textarea:focus{border-color:var(--accent-turquoise)}.portal-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.portal-modal-cancel{padding:8px 16px;background:none;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:14px;transition:all var(--transition)}.portal-modal-cancel:hover{border-color:var(--text-muted);color:var(--text)}.portal-modal-submit{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;transition:all var(--transition)}.portal-modal-submit:hover:not(:disabled){background:var(--primary-light)}.portal-modal-submit:disabled{opacity:.5;cursor:not-allowed}.portal-ticket-detail{animation:fadeIn var(--transition-slow);display:flex;flex-direction:column;gap:20px}.portal-ticket-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.portal-ticket-detail-header{display:flex;flex-direction:column;gap:6px}.portal-back-btn{background:none;border:none;color:var(--text-muted);font-size:13px;padding:0;margin-bottom:4px;cursor:pointer;transition:color var(--transition);align-self:flex-start}.portal-back-btn:hover{color:var(--primary-light)}.portal-ticket-detail-title-row{display:flex;align-items:center;gap:10px}.portal-ticket-detail-number{font-size:16px;font-weight:600;color:var(--text-muted)}.portal-ticket-detail-title{font-size:22px;font-weight:700;color:var(--text)}.portal-ticket-detail-badges{display:flex;align-items:center;gap:8px}.portal-ticket-detail-info{font-size:13px;color:var(--text-secondary)}.portal-ticket-detail-estimate{font-size:13px;font-weight:600;color:var(--accent-turquoise);background:#01d5f81a;padding:2px 8px;border-radius:4px}.portal-ticket-detail-date{font-size:13px;color:var(--text-muted)}.portal-ticket-messages{display:flex;flex-direction:column;gap:12px}.portal-msg{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.portal-msg-mine{border-left:3px solid var(--accent-turquoise)}.portal-msg-agent{border-left:3px solid var(--primary)}.portal-msg-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.portal-msg-author{font-size:14px;font-weight:600;color:var(--text)}.portal-msg-time{font-size:12px;color:var(--text-muted)}.portal-msg-content{font-size:14px;color:var(--text-secondary);line-height:1.6;white-space:pre-wrap}.portal-msg-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.portal-msg-attachment{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--accent-turquoise);text-decoration:none;transition:all var(--transition)}.portal-msg-attachment:hover{border-color:var(--accent-turquoise)}.portal-att-size{color:var(--text-muted)}.portal-ticket-reply{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.portal-reply-textarea{width:100%;padding:10px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;font-family:inherit;resize:vertical;outline:none;transition:border-color var(--transition);box-sizing:border-box}.portal-reply-textarea:focus{border-color:var(--accent-turquoise)}.portal-reply-textarea::placeholder{color:var(--text-muted)}.portal-reply-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.portal-reply-file{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary)}.portal-reply-file-remove{background:none;border:none;color:var(--text-muted);font-size:14px;padding:0 2px;cursor:pointer}.portal-reply-file-remove:hover{color:var(--danger)}.portal-reply-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:10px}.portal-reply-attach{padding:6px 12px;background:none;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:13px;transition:all var(--transition)}.portal-reply-attach:hover{border-color:var(--text-muted);color:var(--text)}.portal-reply-send{padding:6px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:600;transition:all var(--transition)}.portal-reply-send:hover:not(:disabled){background:var(--primary-light)}.portal-reply-send:disabled{opacity:.5;cursor:not-allowed}.portal-account-page{animation:fadeIn var(--transition-slow);max-width:600px}.portal-account-title{font-size:22px;font-weight:700;color:var(--text);margin-bottom:24px}.portal-account-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px}.portal-account-section-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:16px}.portal-account-info{display:flex;flex-direction:column;gap:10px}.portal-account-row{display:flex;align-items:center;gap:12px}.portal-account-label{font-size:13px;font-weight:600;color:var(--text-muted);min-width:80px}.portal-account-value{font-size:14px;color:var(--text)}.portal-password-form{display:flex;flex-direction:column;gap:14px}.portal-password-field{display:flex;flex-direction:column;gap:6px}.portal-password-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.portal-password-field input{padding:10px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;outline:none;transition:border-color var(--transition)}.portal-password-field input:focus{border-color:var(--accent-turquoise)}.portal-password-error{color:var(--danger);font-size:14px}.portal-password-submit{padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;align-self:flex-start;transition:all var(--transition)}.portal-password-submit:hover:not(:disabled){background:var(--primary-light)}.portal-password-submit:disabled{opacity:.5;cursor:not-allowed}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #5a38ec;--primary-dark: #4528d4;--primary-light: #7b5cf5;--accent-purple: #bd62db;--accent-turquoise: #01d5f8;--accent-pink: #DA447F;--gradient-bar: linear-gradient(90deg, #DA447F 0%, #5a38ec 50%, #09b8a5 100%);--success: #10b981;--success-dark: #059669;--warning: #f59e0b;--warning-dark: #d97706;--danger: #ef4444;--danger-dark: #dc2626;--background: #060717;--background-secondary: #0a0c24;--surface: #0d1031;--surface-hover: #141845;--surface-active: #1a1f5a;--surface-raised: #161a42;--text: #e2e2e2;--text-secondary: #9ca3af;--text-muted: #6b7280;--text-inverse: #060717;--border: #1e2254;--border-light: #161a42;--border-focus: var(--accent-turquoise);--shadow: 0 1px 3px 0 rgb(0 0 0 / .3), 0 1px 2px -1px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-glow: 0 0 20px rgb(90 56 236 / .15);--radius: 8px;--radius-sm: 4px;--radius-lg: 12px;--transition: .15s ease;--transition-slow: .3s ease;--header-height: 56px;--sidebar-width: 240px;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 900;--z-modal: 1000;--z-toast: 1100}[data-theme=light]{--background: #f5f5f7;--background-secondary: #ebedf0;--surface: #ffffff;--surface-hover: #f0f0f3;--surface-active: #e5e5ea;--surface-raised: #f8f8fa;--text: #1a1a2e;--text-secondary: #5a5a6e;--text-muted: #8a8a9a;--text-inverse: #ffffff;--border: #d8d8e0;--border-light: #e8e8f0;--shadow: 0 1px 3px 0 rgb(0 0 0 / .08), 0 1px 2px -1px rgb(0 0 0 / .06);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .06);--shadow-glow: 0 0 20px rgb(90 56 236 / .08)}body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--text);line-height:1.5;font-weight:400}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent-turquoise);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-purple)}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}
