:root{font-family:var(--font-primary);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color-scheme:light dark;color:var(--color-text-secondary);background-color:var(--color-background-secondary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:var(--font-weight-medium);color:var(--color-info);text-decoration:inherit;transition:var(--transition-color)}a:hover{color:var(--color-info-light)}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background:var(--color-background-gradient);overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:var(--radius-md);border:1px solid transparent;padding:var(--button-padding-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-family:inherit;background-color:var(--color-background-tertiary);cursor:pointer;transition:var(--transition-all)}button:hover{border-color:var(--color-primary);transform:translateY(-1px)}button:focus,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:active{transform:translateY(0)}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.loading-indicator{text-align:center;padding:1rem;color:#666}.end-message{text-align:center;padding:1rem;color:#666;font-style:italic}.appointments-list{display:flex;flex-direction:column;gap:1rem;padding:1rem;max-width:800px;margin:0 auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--modal-backdrop);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--duration-normal) var(--ease-out)}.modal-content{width:100%;max-width:500px;max-height:90vh;padding:0;position:relative;display:flex;flex-direction:column;overflow:hidden}.modal-content h2{padding:2rem 2rem 1rem;margin:0;flex-shrink:0}.modal-content form{flex:1;overflow-y:auto;padding:0 2rem;margin:0}.modal-content form::-webkit-scrollbar{width:8px}.modal-content form::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.modal-content form::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.modal-content form::-webkit-scrollbar-thumb:hover{background:#ffffff80}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 2rem 2rem;margin:0;margin-top:1rem;flex-shrink:0;background:inherit}.form-container{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-primary)!important;line-height:1.2}.modal-content .form-group label{color:#fff!important}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--input-padding);border:1px solid var(--input-border-color);border-radius:var(--input-border-radius);background:var(--glass-background);color:var(--color-text-primary);font-size:var(--font-size-base);box-sizing:border-box;line-height:var(--line-height-normal);transition:var(--transition-all);font-family:inherit}.modal-content .form-group input,.modal-content .form-group select,.modal-content .form-group textarea{width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--input-focus-border-color);background:var(--glass-background-hover);box-shadow:0 0 0 3px #6d5dfc1a}.form-group input:hover:not(:focus),.form-group select:hover:not(:focus),.form-group textarea:hover:not(:focus){border-color:var(--color-border-primary-hover)}.secondary-button{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);padding:var(--button-padding-md);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all)}.secondary-button:hover{background:#6d5dfc1a;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.secondary-button:active{transform:translateY(0)}.session-timeout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}.session-timeout-modal{background:var(--color-surface);-webkit-backdrop-filter:var(--glass-blur-strong);backdrop-filter:var(--glass-blur-strong);border:1px solid rgba(255,193,7,.4);border-radius:var(--radius-xl);padding:2.5rem 2rem;max-width:450px;width:90%;text-align:center;box-shadow:0 12px 48px #ffc10733;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.timeout-icon{font-size:4rem;margin-bottom:1rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.session-timeout-modal h2{color:var(--color-text-primary);font-size:var(--font-size-2xl);margin:0 0 1rem;font-weight:var(--font-weight-semibold)}.timeout-message{color:var(--color-text-secondary);font-size:var(--font-size-lg);margin:0 0 .75rem;line-height:var(--line-height-normal)}.timeout-message strong{color:var(--color-warning);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl)}.timeout-submessage{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:0 0 2rem;line-height:var(--line-height-normal)}.extend-button{min-width:180px;background:var(--color-warning);border-color:var(--color-warning)}.extend-button:hover{background:var(--color-warning-dark);border-color:var(--color-warning-dark);transform:translateY(-2px)}:root{--color-primary: #6d5dfc;--color-primary-light: #7965ef;--color-primary-dark: #5a4dd9;--color-primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--color-primary-gradient-hover: linear-gradient(135deg, #7989f0 0%, #8558b8 100%);--color-accent: #d36eff;--color-accent-light: #e088ff;--color-accent-dark: #b84ee6;--color-success: #4caf50;--color-success-light: #81c784;--color-success-dark: #388e3c;--color-success-bg: rgba(76, 175, 80, .1);--color-warning: #ffc107;--color-warning-light: #ffd54f;--color-warning-dark: #ffa000;--color-warning-bg: rgba(255, 193, 7, .1);--color-error: #e74c3c;--color-error-light: #ef5350;--color-error-dark: #c62828;--color-error-bg: rgba(231, 76, 60, .1);--color-info: #3b82f6;--color-info-light: #60a5fa;--color-info-dark: #2563eb;--color-info-bg: rgba(59, 130, 246, .1);--color-background-primary: #1e1e2f;--color-background-secondary: #2a2a3e;--color-background-tertiary: #2e2e3c;--color-background-gradient: linear-gradient(145deg, #1e1e2f, #2a2a3e);--color-surface: rgba(46, 46, 60, .7);--color-surface-hover: rgba(60, 60, 80, .7);--color-surface-active: rgba(70, 70, 90, .8);--color-overlay: rgba(0, 0, 0, .5);--color-overlay-light: rgba(0, 0, 0, .3);--color-overlay-dark: rgba(0, 0, 0, .75);--color-text-primary: #ffffff;--color-text-secondary: rgba(255, 255, 255, .87);--color-text-tertiary: rgba(255, 255, 255, .7);--color-text-disabled: rgba(255, 255, 255, .5);--color-text-inverse: #1e1e2f;--color-border-light: rgba(255, 255, 255, .1);--color-border-medium: rgba(255, 255, 255, .2);--color-border-strong: rgba(255, 255, 255, .3);--color-border-primary: rgba(109, 93, 252, .4);--color-border-primary-hover: rgba(109, 93, 252, .6);--glass-background: rgba(255, 255, 255, .1);--glass-background-hover: rgba(255, 255, 255, .15);--glass-border: rgba(255, 255, 255, .2);--glass-blur: blur(10px);--glass-blur-strong: blur(20px);--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--font-primary: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-monospace: "Consolas", "Monaco", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--duration-instant: .1s;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .4s;--duration-slower: .6s;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--transition-fast: var(--duration-fast) var(--ease-out);--transition-normal: var(--duration-normal) var(--ease-out);--transition-slow: var(--duration-slow) var(--ease-out);--transition-all: all var(--duration-normal) var(--ease-out);--transition-color: color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);--transition-transform: transform var(--duration-normal) var(--ease-out);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .2);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .25);--shadow-2xl: 0 20px 40px rgba(0, 0, 0, .3);--shadow-glow-primary: 0 4px 20px rgba(109, 93, 252, .3);--shadow-glow-primary-strong: 0 8px 30px rgba(109, 93, 252, .4);--shadow-glow-success: 0 4px 20px rgba(76, 175, 80, .3);--shadow-glow-error: 0 4px 20px rgba(231, 76, 60, .3);--radius-none: 0;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70;--z-notification: 80;--z-max: 9999;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}:root{--button-padding-sm: var(--space-2) var(--space-4);--button-padding-md: var(--space-3) var(--space-6);--button-padding-lg: var(--space-4) var(--space-8);--card-padding: var(--space-6);--card-border-radius: var(--radius-lg);--card-background: var(--color-surface);--card-shadow: var(--shadow-lg);--input-padding: var(--space-3) var(--space-4);--input-border-radius: var(--radius-md);--input-border-color: var(--color-border-primary);--input-focus-border-color: var(--color-primary);--modal-backdrop: var(--color-overlay);--modal-background: var(--color-surface);--modal-border-radius: var(--radius-xl);--modal-padding: var(--space-8);--nav-height: 80px;--sidebar-width: 240px}.transition-colors{transition:var(--transition-color)}.transition-transform{transition:var(--transition-transform)}.transition-all{transition:var(--transition-all)}.hover-lift{transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.glass{background:var(--glass-background);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.glass-strong{background:#ffffff26;-webkit-backdrop-filter:var(--glass-blur-strong);backdrop-filter:var(--glass-blur-strong);border:1px solid rgba(255,255,255,.25)}body,#root{margin:0;padding:0;font-family:var(--font-primary);background:var(--color-background-gradient);color:var(--color-text-primary);width:100%}#root{display:flex;width:100%}.app-container{width:100%;display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box}.main-content{flex:1;height:calc(100vh - 80px);overflow-y:auto;padding:2rem;width:100%;box-sizing:border-box}.app-header{width:100%;padding:1rem 2rem;box-sizing:border-box;background:#1e1e2fe6;border-bottom:1px solid rgba(255,255,255,.1);z-index:10}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%;box-sizing:border-box;min-height:60px;gap:2rem;position:relative}.logo{font-size:2.5rem;font-weight:700;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0;line-height:1;display:flex;align-items:center;height:auto;flex-shrink:0}.action-buttons{display:flex;gap:1rem;align-items:center;height:42px;box-sizing:border-box;position:absolute;right:100px;top:50%;transform:translateY(-50%)}.action-buttons a{display:inline-flex;align-items:center;text-decoration:none;height:auto;box-sizing:border-box;vertical-align:middle;line-height:1;margin:0;padding:0}.user-profile{display:flex;align-items:center;height:42px;box-sizing:border-box;position:absolute;right:2rem;top:50%;transform:translateY(-50%)}.profile-icon{all:unset;background:var(--color-primary-light);border:1px solid rgba(255,255,255,.1);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:inherit;cursor:pointer;color:var(--color-text-primary);border-radius:50%;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;transition:var(--transition-all);padding:0;letter-spacing:.5px;line-height:1;flex-shrink:0;box-sizing:border-box}.profile-icon:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow-primary);background:var(--color-primary)}.profile-icon:active{transform:translateY(0)}.profile-dropdown{position:absolute;right:0;top:50px;background:#2e2e3cf2;border-radius:8px;border:1px solid rgba(255,255,255,.1);box-shadow:0 5px 15px #0000004d;width:180px;max-height:400px;overflow-y:auto;z-index:100;padding:8px 0;animation:fadeIn .2s ease-in-out}.dropdown-item{background:none;border:none;color:#fff;padding:10px 16px;font-size:.9rem;width:100%;text-align:left;cursor:pointer;transition:background .2s ease}.dropdown-divider{height:1px;background:#ffffff1a;margin:8px 0;border:none}.dropdown-item:hover{background:#7965ef33}.dropdown-item.admin-item{color:#7965ef;font-weight:500}.dropdown-item.admin-item:hover{background:#7965ef4d;color:#9d8bfa}.header-nav{display:flex;gap:2rem;align-items:center;height:auto;position:absolute;left:150px;top:50%;transform:translateY(-50%)}.nav-link{background:none;border:none;padding:.5rem 1rem;color:#ffffffb3;font-size:1rem;font-weight:500;cursor:pointer;position:relative;transition:all .2s ease;border-radius:0;margin:0;height:100%;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;white-space:nowrap}.nav-link:hover{color:#fffffff2;background:none}.nav-link.active{color:var(--color-text-primary);font-weight:600}.nav-link.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-primary)}.main-content::-webkit-scrollbar{width:10px}.main-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:5px}.main-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:5px}.main-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sessions-container{width:100%;height:100%;overflow-y:auto;padding-bottom:2rem;scrollbar-width:none;-ms-overflow-style:none}.sessions-container::-webkit-scrollbar{display:none}.sessions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:0 .5rem}.sessions-header h1{margin:0;font-size:2rem;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.refresh-button{min-width:120px}.date-group{margin-bottom:1.5rem}.date-display{font-size:.875rem;font-weight:500;margin:0 0 .75rem;color:#fff6;text-align:left;text-transform:uppercase;letter-spacing:.5px}.sessions-search-bar{max-width:900px;margin:0 auto 1.5rem;padding:0 1rem;position:relative;display:flex;align-items:center}.sessions-search-bar .search-icon{position:absolute;left:2.25rem;font-size:1.25rem;pointer-events:none;opacity:.5}.sessions-search-input{width:100%;padding:1rem 1.5rem 1rem 3.5rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:16px;color:#fff;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.sessions-search-input:focus{outline:none;background:#ffffff1f;border-color:#745af2;box-shadow:0 0 0 3px #745af226,0 4px 12px #0000001a}.sessions-search-input::placeholder{color:#fff6}.sessions-list{display:flex;flex-direction:column;gap:1rem;max-width:900px;margin:0 auto;padding:0 1rem}.card.glass.clickable{background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:1.125rem 1.5rem;cursor:pointer;transition:all .2s ease;margin-bottom:.75rem}.card.glass.clickable:hover{background:#ffffff1f;border-color:#745af266;transform:translate(4px)}.appointment-card{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;min-height:0}.appointment-icon{display:none}.appointment-details{flex:1;min-width:0;padding:0;margin:0}.appointment-details h3{margin:0!important;font-size:1.125rem;font-weight:600;color:#fff;line-height:1.2!important}.appointment-preview{margin:.2rem 0 0!important;padding:0!important;color:#fff9;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1!important;line-clamp:1;-webkit-box-orient:vertical;line-height:1.3!important;font-size:.875rem}.appointment-time{flex-shrink:0;color:#ffffff80;font-size:.875rem;white-space:nowrap}.dashboard{display:flex;flex-wrap:wrap;gap:1.5rem}.card{width:100%;padding:var(--card-padding);border-radius:var(--card-border-radius);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:var(--card-background);box-shadow:var(--card-shadow);border:1px solid var(--color-border-light);margin-bottom:var(--space-4);text-align:left;box-sizing:border-box;transition:var(--transition-all)}.card.clickable{cursor:pointer}.card.clickable:hover{transform:translateY(-4px);box-shadow:var(--shadow-2xl);border-color:var(--color-border-medium)}.card.clickable:active{transform:translateY(-2px)}.card h2{margin-bottom:1rem}.card p{margin-bottom:1.5rem;font-size:.9rem;color:#d3d3d3}.action-button{padding:.625rem 1.25rem;font-size:var(--font-size-base);border-radius:var(--radius-lg);background:var(--color-primary-light);color:var(--color-text-primary);border:1px solid transparent;cursor:pointer;transition:var(--transition-all);display:flex;align-items:center;justify-content:center;gap:var(--space-2);line-height:1;font-weight:var(--font-weight-medium);flex-shrink:0;box-sizing:border-box;height:40px}.app-header .action-buttons a button.action-button,.app-header .action-buttons button.action-button{all:unset!important;padding:.6875rem 1.25rem!important;border:1px solid rgba(255,255,255,.1)!important;box-sizing:border-box!important;font-size:1rem!important;font-family:inherit!important;font-weight:500!important;line-height:1!important;height:42px!important;width:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:var(--color-primary-light)!important;color:var(--color-text-primary)!important;border-radius:var(--radius-lg)!important;cursor:pointer!important;transition:var(--transition-all)!important}.app-header .action-buttons a button.action-button:hover,.app-header .action-buttons button.action-button:hover,.action-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow-primary);background:var(--color-primary)}.action-button:active{transform:translateY(0)}.action-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}button{box-sizing:border-box}.btn-lg{padding:1rem 2rem;font-size:1.125rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1;font-weight:500}.btn-md,.btn-primary{padding:.75rem 1.5rem;font-size:1rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1;font-weight:500}.btn-sm,.btn-secondary{padding:.625rem 1.25rem;font-size:.875rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1;font-weight:500}.btn-xs,.btn-compact{padding:.5rem 1rem;font-size:.8125rem;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;line-height:1;font-weight:500}.btn-icon{width:2.5rem;height:2.5rem;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.btn-icon-sm{width:2rem;height:2rem;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.note-preview{text-align:left;padding:.5rem}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.note-header h3{margin:0;color:#fff;font-size:1.1rem}.note-header span{color:#d3d3d3;font-size:.9rem}.note-content{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;margin:0;line-height:1.4}.card.glass{transition:all .2s ease-in-out}.card.glass:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0000004d}.visualizer{margin:20px 0;display:flex;justify-content:center}.upload-zone{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:2rem auto;max-width:600px}.upload-zone.drag-active{background:#6d5dfc1a;transform:scale(1.02)}.file-types{font-size:.8rem;color:#d3d3d3;margin-top:.5rem}.loading-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner{width:40px;height:40px;border:3px solid rgba(109,93,252,.3);border-radius:50%;border-top-color:#6d5dfc;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-container{width:90%;max-width:1200px;margin:0 auto;padding:2rem 0}.page-container h1{text-align:center;margin-bottom:2rem;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.note-detail-page{margin-top:2rem}.section-header{display:flex;align-items:center;gap:1rem;cursor:pointer;margin-bottom:1rem}.section-header h3{margin:0}.toggle-button{background:none;border:none;color:#fff;cursor:pointer;font-size:1rem;padding:0}.transcript-content{white-space:pre-wrap;margin-top:1rem}.copy-button{padding:.5rem 1rem;border-radius:15px;background:#6d5dfc33;border:1px solid rgba(109,93,252,.5);color:#fff;cursor:pointer;transition:all .2s ease-in-out;display:inline-flex;align-items:center;justify-content:center;line-height:1}.copy-button:hover{background:#6d5dfc4d}.copy-feedback{display:block;color:#6d5dfc;font-size:.9rem;margin:.5rem 0}.soap-notes-section{margin-top:2rem}.soap-notes-section p{white-space:pre-wrap}@media (max-width: 768px){.header-nav{gap:1rem;margin-left:1.5rem}.nav-link{padding:.5rem .75rem;font-size:.9rem}.action-buttons{display:none}}.skeleton-card{pointer-events:none;-webkit-user-select:none;user-select:none;animation:fadeIn .3s ease-out}.skeleton-line,.skeleton-icon,.skeleton-time,.skeleton-tag{background:#ffffff1a;border-radius:var(--radius-sm);animation:pulse 1.5s ease-in-out infinite;position:relative;overflow:hidden}.skeleton-line:after,.skeleton-icon:after,.skeleton-time:after,.skeleton-tag:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.skeleton-appointment{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0}.skeleton-appointment .skeleton-icon{width:24px;height:24px;border-radius:var(--radius-sm);flex-shrink:0}.skeleton-appointment .skeleton-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.skeleton-appointment .skeleton-time{width:60px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.skeleton-patient-list{display:flex;justify-content:space-between;align-items:center;width:100%}.skeleton-patient-left{display:flex;align-items:center;gap:1rem;flex:1}.skeleton-avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0;background:#ffffff1a;animation:pulse 1.5s ease-in-out infinite;position:relative;overflow:hidden}.skeleton-avatar:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 2s infinite}.skeleton-patient-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.skeleton-patient-right{display:flex;align-items:center;gap:1rem}.skeleton-tags{display:flex;gap:.5rem;margin-top:.25rem}.skeleton-tag{width:60px;height:24px;border-radius:12px}.skeleton-simple{display:flex;flex-direction:column;gap:.75rem;padding:.5rem}.skeleton-line{height:16px;border-radius:var(--radius-sm);width:100%}.skeleton-line.skeleton-title{height:20px;width:60%;margin-bottom:.25rem}.skeleton-line.skeleton-text{height:14px;width:100%}.skeleton-line.skeleton-text.short{width:70%}.error-state{display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem;min-height:300px}.error-state.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:#1e1e2ff2;z-index:9999}.error-content{text-align:center;max-width:500px;background:var(--color-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid rgba(231,76,60,.3);border-radius:var(--radius-xl);padding:2.5rem 2rem;box-shadow:0 8px 32px #e74c3c1a}.error-icon{font-size:4rem;margin-bottom:1rem;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.error-title{color:var(--color-text-primary);font-size:var(--font-size-2xl);margin:0 0 1rem;font-weight:var(--font-weight-semibold)}.error-message{color:var(--color-text-tertiary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0 0 1.5rem}.error-retry-button{margin-top:.5rem;min-width:140px}.error-retry-button:hover{background:var(--color-error);border-color:var(--color-error)}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem}.loading-spinner-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:#1e1e2ff2;z-index:9999}.spinner{border-radius:50%;border-style:solid;border-color:#6d5dfc33;border-top-color:var(--color-primary);animation:spin .8s linear infinite}.spinner-small{width:20px;height:20px;border-width:2px}.spinner-medium{width:40px;height:40px;border-width:3px}.spinner-large{width:60px;height:60px;border-width:4px}.loading-message{color:var(--color-text-secondary);font-size:var(--font-size-base);margin:0;text-align:center}.soap-editor{padding:1rem;max-width:100%;box-sizing:border-box;overflow:hidden}.soap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;min-height:3rem}.soap-actions{display:flex;gap:.75rem;align-items:center}.copy-button,.save-button{padding:.625rem 1.25rem;border-radius:8px;background:#7965ef33;border:1px solid rgba(121,101,239,.5);color:#fff;cursor:pointer;transition:all .2s ease-in-out;display:inline-flex;align-items:center;justify-content:center;line-height:1}.copy-button:hover,.save-button:hover{background:#7965ef4d;transform:translateY(-2px)}.save-button.active{background:#7965ef66}.save-button.disabled{opacity:.5;cursor:not-allowed}.soap-section{margin-bottom:1.5rem;width:100%;box-sizing:border-box}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;min-height:2rem}.section-title{margin-bottom:0;color:#fff;font-size:1.1rem}.section-copy-button{padding:.5rem 1rem;border-radius:6px;background:#7965ef33;border:1px solid rgba(121,101,239,.5);color:#fff;font-size:.875rem;cursor:pointer;transition:all .2s ease-in-out;display:inline-flex;align-items:center;justify-content:center;line-height:1}.section-copy-button:hover{background:#7965ef4d;transform:translateY(-1px)}.section-editor{width:100%;min-height:120px;padding:1.25rem;border-radius:10px;background:#2e2e3cb3;color:#fff;border:1px solid rgba(121,101,239,.5);resize:none;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 5px 15px #0003;transition:all .2s ease-in-out;word-wrap:break-word;word-break:break-word;white-space:pre-wrap;box-sizing:border-box;max-width:100%}.section-editor::-webkit-scrollbar{display:none}.section-editor:focus{outline:none;border:1px solid rgba(121,101,239,.5);box-shadow:0 12px 40px #0000004d;transform:translateY(-2px)}.notification{position:fixed;top:20px;right:20px;background:#7965ef33;color:#fff;padding:.75rem 1.5rem;border-radius:10px;border:1px solid rgba(121,101,239,.5);transition:all .3s ease;animation:fadeIn .3s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.no-note-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;margin-bottom:2rem}.no-note-container h2{background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-top:0;font-size:1.8rem}.note-action-buttons{display:flex;gap:1rem;margin-top:1.5rem}.note-type-select{padding:.5rem 1rem;border-radius:8px;background:#2e2e3cb3;color:#fff;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;transition:all .2s ease-in-out}.dap-editor{width:100%;max-width:1200px;margin:0 auto;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.dap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb;min-height:3rem}.dap-header h3{margin:0;color:#1f2937;font-size:1.5rem;font-weight:600;line-height:1.2}.dap-actions{display:flex;gap:.75rem;align-items:center}.dap-actions button{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;line-height:1}.generate-btn{background:#3b82f6;color:#fff}.generate-btn:hover:not(:disabled){background:#2563eb}.generate-btn:disabled{background:#9ca3af;cursor:not-allowed}.save-btn{background:#10b981;color:#fff}.save-btn:hover:not(:disabled){background:#059669}.save-btn:disabled{background:#9ca3af;cursor:not-allowed}.copy-btn{background:#6b7280;color:#fff}.copy-btn:hover{background:#4b5563}.clear-btn{background:#ef4444;color:#fff}.clear-btn:hover{background:#dc2626}.copy-feedback{background:#10b981;color:#fff;padding:.5rem 1rem;border-radius:6px;margin-bottom:1rem;text-align:center;font-size:.875rem;font-weight:500}.dap-sections{display:flex;flex-direction:column;gap:1.5rem}.dap-section{display:flex;flex-direction:column;gap:.5rem}.dap-section label{display:flex;flex-direction:column;gap:.25rem;color:#1f2937;font-size:1rem;font-weight:600;line-height:1.2}.section-description{font-size:.875rem;font-weight:400;color:#6b7280;font-style:italic;line-height:1.4}.dap-textarea{width:100%;min-height:7.5rem;padding:1rem;border:2px solid #e5e7eb;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.5;resize:vertical;transition:border-color .2s ease;box-sizing:border-box}.dap-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dap-textarea::placeholder{color:#9ca3af}.dap-section:nth-child(1) .dap-textarea:focus{border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a}.dap-section:nth-child(2) .dap-textarea:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.dap-section:nth-child(3) .dap-textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}@media (max-width: 768px){.dap-editor{padding:16px}.dap-header{flex-direction:column;gap:16px;align-items:stretch}.dap-actions{justify-content:center;flex-wrap:wrap}.dap-actions button{flex:1;min-width:100px}.dap-textarea{min-height:100px}}@media (prefers-color-scheme: dark){.dap-editor{background:#1f2937;color:#f9fafb}.dap-header{border-bottom-color:#374151}.dap-header h3,.dap-section label{color:#f9fafb}.section-description{color:#9ca3af}.dap-textarea{background:#374151;border-color:#4b5563;color:#f9fafb}.dap-textarea::placeholder{color:#6b7280}}.note-page{width:100%;padding:20px}.note-type-selector{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e5e7eb;min-height:3.5rem}.note-type-label{font-weight:600;color:#1f2937;font-size:1rem;white-space:nowrap;line-height:1}.note-type-dropdown{padding:.5rem .75rem;border:2px solid #e5e7eb;border-radius:6px;background:#fff;font-size:.875rem;font-weight:500;color:#1f2937;cursor:pointer;transition:border-color .2s ease;min-width:8.75rem;line-height:1.5}.note-type-dropdown:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.note-type-description{color:#6b7280;font-size:.875rem;font-style:italic;flex:1;line-height:1.4}.loading-container{display:flex;justify-content:center;align-items:center;padding:2.5rem;color:#6b7280;font-size:1rem}@media (max-width: 768px){.note-page{padding:16px}.note-type-selector{flex-direction:column;align-items:stretch;gap:12px}.note-type-dropdown{width:100%}.note-type-description{text-align:center}}@media (prefers-color-scheme: dark){.note-type-selector{background:#374151;border-color:#4b5563}.note-type-label{color:#f9fafb}.note-type-dropdown{background:#1f2937;border-color:#4b5563;color:#f9fafb}.note-type-description{color:#9ca3af}}.speaker-analytics{padding:2rem;background:#2e2e3c99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}.speaker-analytics-empty{padding:3rem 2rem;text-align:center;background:#2e2e3c66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.1)}.speaker-analytics-empty p{margin:0 0 .5rem;font-size:1.1rem;color:#ffffffe6}.speaker-analytics-empty small{color:#fff9;font-size:.9rem}.analytics-title{margin:0 0 2rem;font-size:2rem;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}@media (max-width: 1024px){.analytics-grid{grid-template-columns:1fr}}.chart-card{background:#1e1e2f80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003}.chart-card h3{margin:0 0 1.5rem;font-size:1.2rem;color:#ffffffe6;font-weight:600}.pie-chart-container{height:300px;display:flex;align-items:center;justify-content:center}.stats-cards{display:grid;grid-template-columns:1fr;gap:1rem}.stat-card{background:linear-gradient(135deg,#6d5dfc4d,#764ba24d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;color:#fff;position:relative;overflow:hidden;border:1px solid rgba(109,93,252,.4);box-shadow:0 4px 16px #6d5dfc26;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #6d5dfc40}.stat-card.therapist{background:linear-gradient(135deg,#6d5dfc4d,#764ba24d);border-color:#6d5dfc66}.stat-card.patient{background:linear-gradient(135deg,#4caf504d,#45a0474d);border-color:#4caf5066;box-shadow:0 4px 16px #4caf5026}.stat-card.patient:hover{box-shadow:0 8px 24px #4caf5040}.stat-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.95;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.stat-card h3{margin:0 0 .5rem;font-size:1rem;font-weight:500;opacity:.95}.stat-value{font-size:3rem;font-weight:800;margin:.5rem 0;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.3);letter-spacing:-.5px}.stat-details{margin-top:1rem;display:flex;flex-direction:column;gap:.25rem}.stat-details p{margin:0;font-size:.95rem;opacity:.9}.stat-time{font-weight:600;font-size:1.1rem}.stat-words{font-size:.9rem}.stat-pace{font-size:.85rem;opacity:.8}.timeline-section{margin:2rem 0;background:#1e1e2f80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003}.timeline-chart-container{height:320px}.session-summary{background:#1e1e2f80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;margin-top:2rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003}.session-summary h3{margin:0 0 1.5rem;font-size:1.2rem;color:#ffffffe6;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#6d5dfc1a;border-radius:12px;border:1px solid rgba(109,93,252,.2);transition:all .3s ease}.summary-item:hover{background:#6d5dfc26;border-color:#6d5dfc4d;transform:translate(4px)}.summary-label{font-size:.95rem;color:#ffffffb3;font-weight:500}.summary-value{font-size:1.1rem;font-weight:700;color:#fffffff2;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.speaker-analytics{animation:fadeInUp .5s ease-out}.chart-card{animation:scaleIn .6s ease-out .1s both}.stat-card:nth-child(1){animation:scaleIn .6s ease-out .2s both}.stat-card:nth-child(2){animation:scaleIn .6s ease-out .3s both}.timeline-section{animation:fadeInUp .6s ease-out .4s both}.session-summary{animation:fadeInUp .6s ease-out .5s both}@media (max-width: 768px){.speaker-analytics{padding:1rem}.analytics-title{font-size:1.5rem}.stat-value{font-size:2.2rem}.timeline-chart-container,.pie-chart-container{height:250px}.summary-grid{grid-template-columns:1fr}}.session-edit-page{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.session-edit-navigation{display:flex;flex-direction:column;padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);background:#1e1e2880}.back-button-container{margin-bottom:.75rem}.back-button{display:flex;align-items:center;justify-content:flex-start;background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:1rem;padding:.5rem 0;line-height:1}.back-button svg{margin-right:.5rem}.tabs-and-menu{display:flex;justify-content:space-between;align-items:center}.tab-navigation{display:flex;gap:.5rem;margin-top:0;align-items:center}.tab-button{padding:.75rem 1.5rem;border:none;background:#ffffff0d;color:#fff9;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;line-height:1;border:1px solid transparent}.tab-button:hover{background:#ffffff14;color:#ffffffd9}.tab-button.active{background:linear-gradient(135deg,#6d5dfc33,#d36eff33);color:#fff;border:1px solid rgba(109,93,252,.4);box-shadow:0 2px 8px #6d5dfc33}.session-edit-content{flex:1;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;padding:1.5rem;display:flex;justify-content:center}.session-edit-content::-webkit-scrollbar{display:none}.session-edit-content>*{width:100%;max-width:1200px}.summary-page{padding:1rem 0}.summary-section{margin-bottom:2rem;background:#2e2e3cb3;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.1);padding:2rem;transition:all .2s ease}.summary-section:hover{box-shadow:0 6px 20px #00000040;transform:translateY(-1px)}.summary-section>p{color:#fffffff2;line-height:1.7;font-size:1rem}.section-title{font-size:1.4rem;margin-bottom:1.5rem;color:#fff;position:relative;padding-bottom:.5rem}.section-title:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:3px;background:linear-gradient(90deg,#6d5dfc,#d36eff);border-radius:3px}.detail-item{display:grid;grid-template-columns:120px 1fr;gap:1rem;margin-bottom:1.2rem;align-items:start}.detail-label{color:#fff;font-weight:600;font-size:.95rem;text-align:left}.detail-value{color:#fff!important;font-weight:500;font-size:1rem;text-align:left}.previous-sessions{display:flex;flex-direction:column;gap:.75rem}.previous-session-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:8px;background-color:#2a2a3e99;border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:all .2s ease}.previous-session-item:hover{background-color:#2e2e42cc;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.session-date{font-size:.95rem;color:#fff;display:flex;align-items:center}.session-date:before{content:"";display:inline-block;width:8px;height:8px;background:linear-gradient(90deg,#6d5dfc,#d36eff);border-radius:50%;margin-right:10px}.session-duration{color:#ffffffb3;font-size:.9rem;font-weight:300}.transcript-page{padding:1rem 0}.transcript-content{white-space:pre-wrap;line-height:1.8;color:#fffffff2;padding:2rem;background:#2e2e3cb3;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.1);font-size:1rem}.empty-transcript{padding:2rem;text-align:center;color:var(--text-secondary)}.note-page{padding:1rem 0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;height:100%}.note-page::-webkit-scrollbar{display:none}.more-menu-container{position:relative}.more-button{background:#2e2e3c80;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:1.2rem;cursor:pointer;padding:.5rem 1rem;transition:all .2s ease-in-out;display:flex;align-items:center;justify-content:center}.more-button:hover{background:#3c3c5099;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.more-menu{position:absolute;top:100%;right:0;background:#2e2e3ce6;border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 5px 15px #0000004d;z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow:hidden}.menu-item{display:block;width:100%;padding:.75rem 1.25rem;text-align:left;background:none;border:none;cursor:pointer;color:#fff;transition:all .2s ease-in-out}.menu-item:hover{background:#ffffff0d}.delete-button{color:#e74c3ce6;font-weight:500;display:flex;align-items:center}.delete-button:hover{background:#e74c3c1a;color:#e74c3c}.delete-button:before{content:"🗑️";margin-right:.5rem;font-size:1rem}.notification{position:fixed;top:20px;left:50%;transform:translate(-50%);background:#6d5dfce6;color:#fff;padding:1rem 2rem;border-radius:8px;z-index:1000;box-shadow:0 4px 6px #0000001a;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;min-height:200px}.loading-container{color:var(--text-secondary)}.delete-confirmation{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.delete-confirmation-content{padding:2rem;border-radius:10px;max-width:450px;width:100%;box-shadow:0 8px 32px #0006;border:1px solid rgba(255,255,255,.1)}.delete-confirmation h3{margin-top:0;background:linear-gradient(90deg,#e74c3c,#c0392b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-size:1.5rem}.delete-confirmation p{margin-bottom:1.5rem;color:#fff;line-height:1.5}.delete-confirmation-buttons{display:flex;justify-content:flex-end;gap:1rem}.cancel-button{padding:.8rem 1.5rem;background:#2e2e3cb3;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:10px;cursor:pointer;transition:all .2s ease-in-out}.cancel-button:hover{background:#3c3c50b3;transform:translateY(-2px)}.confirm-delete-button{padding:.8rem 1.5rem;background:#e74c3ccc;color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease-in-out}.confirm-delete-button:hover{background:#e74c3c;transform:translateY(-2px);box-shadow:0 4px 10px #e74c3c66}.insurance-codes-container{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.insurance-code-tag{background-color:#2a2a3e;border:1px solid #373752;color:#fff;border-radius:16px;padding:6px 12px;font-size:14px;display:inline-flex;align-items:center;cursor:pointer;position:relative;transition:all .2s ease}.insurance-code-tag:hover{background-color:#373752;box-shadow:0 2px 4px #0000001a}.insurance-code-tag.copied{background-color:#6d5dfc1a;border-color:#6d5dfc;color:#6d5dfc}.tooltip{visibility:hidden;background-color:#000c;color:#fff;text-align:center;padding:5px 10px;border-radius:6px;position:absolute;z-index:1;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .2s;font-size:12px;white-space:nowrap}.insurance-code-tag:hover .tooltip{visibility:visible;opacity:1}.copied-message{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);background-color:#6d5dfc;color:#fff;border-radius:4px;padding:2px 6px;font-size:12px;animation:fadeInOut 2s}.patient-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s ease;white-space:nowrap}.patient-tag.clickable{cursor:pointer}.patient-tag.clickable:hover{transform:translateY(-1px);opacity:.8}.tag-remove{background:none;border:none;color:inherit;font-size:14px;font-weight:700;cursor:pointer;padding:0;margin-left:4px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.tag-remove:hover{background-color:#fff3}.tags-container{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag-input-container{position:relative;display:inline-block}.tag-suggestions{position:absolute;top:100%;left:0;right:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:8px;max-height:200px;overflow-y:auto;z-index:1000;margin-top:4px}.tag-suggestion{padding:8px 12px;cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;gap:8px}.tag-suggestion:hover{background:#ffffff1a}.tag-suggestion-preview{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;border:1px solid}.add-tag-input{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:6px 10px;border-radius:8px;font-size:12px;outline:none;min-width:120px}.add-tag-input::placeholder{color:#ffffff80}.add-tag-input:focus{border-color:#745af2cc;background:#ffffff26}.tag-suggestion.create-new{background:#745af21a;border-left:3px solid rgba(116,90,242,.8);font-style:italic;color:#ffffffe6}.tag-suggestion.create-new:hover{background:#745af233}.tag-creator{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;margin-top:16px}.tag-creator h4{margin:0 0 16px;color:#fff;font-size:16px;font-weight:600}.tag-creator .form-group{margin-bottom:16px}.tag-creator label{display:block;color:#fff;font-size:14px;font-weight:500;margin-bottom:6px}.tag-name-input{width:100%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:10px 12px;border-radius:8px;font-size:14px;outline:none;transition:all .3s ease}.tag-name-input::placeholder{color:#ffffff80}.tag-name-input:focus{border-color:#745af2cc;background:#ffffff26}.color-picker{display:flex;flex-direction:column;gap:12px}.color-input{width:60px;height:40px;border:2px solid rgba(255,255,255,.2);border-radius:8px;background:transparent;cursor:pointer;padding:4px;box-sizing:border-box}.color-input:hover{border-color:#fff6}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:4px}.predefined-colors{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.color-option{width:40px;height:40px;border:3px solid transparent;border-radius:50%;cursor:pointer;transition:all .2s ease;position:relative;padding:0;flex-shrink:0;box-sizing:border-box;outline:none}.color-option:hover{transform:scale(1.15);border-color:#fff6}.color-option.selected{border-color:#fff;box-shadow:0 0 0 3px #fff6;transform:scale(1.1)}.color-option:active{transform:scale(.95)}.tag-preview{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#fffc;font-size:14px}.preview-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;border:1px solid;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tag-creator .error-message{color:#ff6b6b;font-size:12px;margin-bottom:16px;padding:8px 12px;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px}.tag-creator-actions{display:flex;gap:12px;justify-content:flex-end}.tag-creator-actions .secondary-button,.tag-creator-actions .action-button{padding:8px 16px;font-size:14px;border-radius:6px;cursor:pointer;transition:all .3s ease}.tag-creator-actions .secondary-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.tag-creator-actions .secondary-button:hover{background:#ffffff26}.tag-creator-actions .action-button{background:#745af2cc;border:none;color:#fff}.tag-creator-actions .action-button:hover:not(:disabled){background:#745af2}.tag-creator-actions .action-button:disabled{opacity:.5;cursor:not-allowed}.panel-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.patient-info-panel{position:fixed;top:0;right:0;width:450px;height:100vh;background:#1e1e28f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-left:1px solid rgba(255,255,255,.1);z-index:1000;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-4px 0 20px #0000004d}.patient-info-panel.open{transform:translate(0)}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.panel-header h2{margin:0;color:#fff;font-size:1.25rem;font-weight:600}.panel-close-button{background:transparent;border:none;color:#fff9;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;line-height:1}.panel-close-button:hover{color:#fff;background:#ffffff1a}.panel-content{flex:1;overflow-y:auto;padding:1.5rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.panel-content::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar-track{background:transparent}.panel-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.panel-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.info-section{margin-bottom:1.5rem}.info-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;margin:0 0 .5rem}.info-value{font-size:1rem;color:#fff;margin:0;line-height:1.5}.info-value.notes{white-space:pre-wrap;color:#ffffffe6;background:#ffffff0d;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.patient-tags-panel{display:flex;flex-wrap:wrap;gap:.5rem}.panel-footer{padding:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:.75rem}.panel-edit-button,.panel-cancel-button{flex:1;padding:.75rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-edit-button{background:#745af2cc;color:#fff;border-color:#745af280}.panel-edit-button:hover{background:#745af2;transform:translateY(-1px);box-shadow:0 4px 12px #745af24d}.panel-cancel-button{background:#ffffff1a;color:#fff}.panel-cancel-button:hover{background:#fff3}@media (max-width: 768px){.patient-info-panel{width:100%;max-width:100%}}.patient-sessions-container{padding:20px;max-width:1200px;margin:0 auto;min-height:100vh}.sessions-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem;margin-bottom:1.875rem;padding-bottom:.9375rem;border-bottom:2px solid rgba(255,255,255,.1)}.back-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.625rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1}.back-button:hover{background:#fff3;border-color:#ffffff4d}.sessions-header h2{margin:0;color:#fff;font-size:24px;font-weight:600;text-align:center}.header-actions{display:flex;gap:.75rem;align-items:center}.edit-patient-button,.archive-patient-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.625rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1}.edit-patient-button:hover{background:#745af24d;border-color:#745af280}.archive-patient-button:hover{background:#ff6b6b4d;border-color:#ff6b6b80}.edit-patient-button:disabled,.archive-patient-button:disabled{opacity:.5;cursor:not-allowed;background:#ffffff0d;border-color:#ffffff1a}.edit-patient-button:disabled:hover,.archive-patient-button:disabled:hover{background:#ffffff0d;border-color:#ffffff1a;transform:none}.sessions-list{display:flex;flex-direction:column;gap:20px}.session-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;display:flex;justify-content:space-between;align-items:flex-start}.session-card:hover{transform:translateY(-4px);background:#ffffff26;border-color:#ffffff4d}.session-info{flex:1}.session-date{font-size:18px;font-weight:600;color:#fff;margin-bottom:10px}.session-details{display:flex;gap:20px;margin-bottom:15px}.session-duration{color:#fffc;font-size:14px}.session-status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.session-status.completed{background:#28a7454d;color:#28a745;border:1px solid rgba(40,167,69,.5)}.session-status.pending{background:#ffc1074d;color:#ffc107;border:1px solid rgba(255,193,7,.5)}.session-summary{color:#fffc;font-size:14px;line-height:1.4}.session-summary strong{color:#fff}.session-actions{display:flex;align-items:center;justify-content:center;min-height:2.5rem}.view-session-button{background:#745af2cc;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;line-height:1}.view-session-button:hover{background:#745af2;transform:translateY(-1px)}.empty-sessions{text-align:center;padding:60px 20px;color:#ffffffb3}.empty-sessions p{font-size:16px;margin-bottom:10px}@media (max-width: 768px){.sessions-header{flex-direction:column;align-items:flex-start;gap:10px}.session-card{flex-direction:column;gap:15px}.session-details{flex-direction:column;gap:8px}}.patient-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:600;color:#fff;flex-shrink:0;-webkit-user-select:none;user-select:none;box-shadow:0 2px 8px #00000026;transition:transform .2s ease}.patient-avatar.small{width:32px;height:32px;font-size:12px}.patient-avatar.medium{width:48px;height:48px;font-size:16px}.patient-avatar.large{width:64px;height:64px;font-size:20px}.patients-container{padding:20px;max-width:100%;margin:0 auto}.patients-container-with-sidebar{display:flex;gap:2rem;height:100%;padding:0}.filters-sidebar{width:250px;min-width:250px;background:#1e1e2d80;padding:2rem 1.5rem;border-right:1px solid rgba(255,255,255,.1);height:100%;overflow-y:auto;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.filters-sidebar::-webkit-scrollbar{width:6px}.filters-sidebar::-webkit-scrollbar-track{background:transparent}.filters-sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.filters-sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-add-button{width:100%;margin-bottom:2rem;padding:.875rem 1.25rem;font-size:.95rem;white-space:nowrap}.filters-sidebar h3{color:var(--color-text-primary);margin-bottom:2rem;font-size:1.2rem;font-weight:600}.filter-group{margin-bottom:2rem}.filter-label{display:block;color:#ffffffb3;margin-bottom:.75rem;font-size:.9rem;font-weight:500}.sidebar-search{width:100%;padding:.625rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.9rem;transition:all .2s ease;box-sizing:border-box}.sidebar-search:focus{outline:none;background:#ffffff14;border-color:var(--color-primary)}.sidebar-search::placeholder{color:#fff6}.tag-filter-vertical{display:flex;flex-direction:column;gap:.5rem}.tag-filter-vertical .patient-tag{width:100%;justify-content:flex-start}.tag-filter-vertical .active .patient-tag{background:#7965ef33;border-color:var(--color-primary);box-shadow:0 0 0 2px #7965ef1a}.patients-main-content{flex:1;padding:2rem;overflow-y:auto;box-sizing:border-box}.patients-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(255,255,255,.1)}.patients-header h2{margin:0;color:#fff;font-size:28px;font-weight:600}.header-search{flex:1;padding:1rem 1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1.1rem;transition:all .2s ease;box-sizing:border-box}.header-search:focus{outline:none;background:#ffffff14;border-color:var(--color-primary);box-shadow:0 0 0 3px #7965ef1a}.header-search::placeholder{color:#fff6}.sessions-list{display:flex;flex-direction:column;gap:1rem}.patient-tags-inline{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.patient-info h3{margin:0 0 15px;color:#fff;font-size:20px;font-weight:600}.patient-details{display:flex;flex-direction:column;gap:8px;margin-bottom:15px;flex-grow:1}.detail-item{font-size:14px;color:#fffc;line-height:1.4}.detail-item strong{color:#fff;font-weight:600;margin-right:8px}.patient-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:auto;min-height:2.5rem}.view-button{background:#745af2cc;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;line-height:1}.view-button:hover{background:#745af2;transform:translateY(-1px)}.empty-state{text-align:center;padding:60px 20px;color:#ffffffb3}.empty-state p{font-size:18px;margin-bottom:20px}.loading-spinner{text-align:center;padding:40px;font-size:16px;color:#ffffffb3}.error-message{text-align:center;padding:40px;color:#ff6b6b;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:12px;margin:20px 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pagination-container{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:40px;padding:20px 0}.pagination-info{color:#ffffffb3;font-size:14px}.pagination-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;line-height:1}.pagination-button:hover:not(:disabled){background:#fff3;border-color:#ffffff4d}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.patient-modal{position:relative;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:0;max-width:500px;width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000080;animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-close{position:absolute;top:1.25rem;right:1.25rem;z-index:10;background:#ffffff1a;border:none;border-radius:12px;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#ffffffb3;padding:0}.modal-close:hover{background:#fff3;color:#fff;transform:scale(1.05)}.patient-header{background:linear-gradient(135deg,#745af233,#745af21a);padding:32px;display:flex;align-items:center;gap:20px;border-bottom:1px solid rgba(255,255,255,.1)}.patient-avatar{width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:1px;box-shadow:0 8px 32px #745af24d}.patient-title h1{margin:0;font-size:28px;font-weight:700;color:#fff;line-height:1.2}.archived-badge{display:inline-block;background:#95a5a633;color:#95a5a6;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:8px;border:1px solid rgba(149,165,166,.3)}.patient-content{padding:32px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:32px}.info-item{background:#ffffff0d;border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.info-item:hover{background:#ffffff14;border-color:#fff3}.info-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#fff9;margin-bottom:8px}.info-value{font-size:16px;font-weight:500;color:#fff;line-height:1.4}.notes-section,.tags-section{margin-bottom:24px}.notes-text{background:#ffffff0d;border-radius:12px;padding:16px;font-size:14px;line-height:1.6;color:#ffffffe6;border:1px solid rgba(255,255,255,.1);margin-top:12px}.tags-cont.patient-tags-inline .patient-tag{font-size:.75rem;padding:.25rem .5rem}.tags-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.patient-actions{padding:24px 32px 32px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:16px}.primary-action{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:16px;padding:1rem 1.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 20px #745af24d;flex:1;justify-content:center;line-height:1}.primary-action:hover{transform:translateY(-2px);box-shadow:0 8px 30px #745af266}.secondary-actions{display:flex;gap:.75rem}.secondary-action{width:3rem;height:3rem;border-radius:16px;border:none;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;background:#ffffff1a;color:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:0}.secondary-action:hover{background:#fff3;color:#fff;transform:translateY(-2px)}.secondary-action.archive{background:#e74c3c33;color:#e74c3c}.secondary-action.archive:hover{background:#e74c3c4d;color:#e74c3c}.secondary-action.unarchive{background:#2ecc7133;color:#2ecc71}.secondary-action.unarchive:hover{background:#2ecc714d;color:#2ecc71}.patients-container-modern{display:flex;flex-direction:column;height:100%;padding:1.5rem 2rem;gap:1.5rem;overflow:hidden}.patients-top-bar{display:flex;gap:1rem;align-items:center;max-width:900px;margin:0 auto;width:100%}.search-container{flex:1;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1.25rem;font-size:1.25rem;pointer-events:none;opacity:.5}.search-input-modern{width:100%;padding:1rem 1.5rem 1rem 3.5rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:16px;color:#fff;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.search-input-modern:focus{outline:none;background:#ffffff1f;border-color:#745af2;box-shadow:0 0 0 3px #745af226,0 4px 12px #0000001a}.search-input-modern::placeholder{color:#fff6}.add-patient-button{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;padding:1rem 1.75rem;border-radius:16px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 12px #0000001a;white-space:nowrap}.add-patient-button:hover{background:#ffffff1f;border-color:#745af2;box-shadow:0 0 0 3px #745af226,0 4px 12px #0000001a}.add-patient-button:disabled{opacity:.5;cursor:not-allowed}.button-icon{font-size:1.25rem;font-weight:700}.filter-chips-container{display:flex;gap:.75rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;-webkit-overflow-scrolling:touch;max-width:900px;margin:0 auto;width:100%}.filter-chips-container::-webkit-scrollbar{height:6px}.filter-chips-container::-webkit-scrollbar-track{background:transparent}.filter-chips-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.filter-chips-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.filter-chip{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fffc;padding:.625rem 1.125rem;border-radius:12px;font-size:.875rem;font-weight:500;cursor:pointer;flex-shrink:0;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.filter-chip:hover{background:#ffffff1f;border-color:#ffffff40;transform:translateY(-1px)}.filter-chip.active{background:linear-gradient(135deg,var(--chip-color-25, rgba(116, 90, 242, .25)) 0%,var(--chip-color-15, rgba(116, 90, 242, .15)) 100%);border-color:var(--chip-color, #745af2);color:#fff;box-shadow:0 0 0 2px var(--chip-color-10, rgba(116, 90, 242, .1))}.chip-count{background:#fff3;padding:.125rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600}.filter-chip.active .chip-count{background:#ffffff4d}.patients-content{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.patients-content::-webkit-scrollbar{width:6px}.patients-content::-webkit-scrollbar-track{background:transparent}.patients-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.patients-list{display:flex;flex-direction:column;gap:.75rem;max-width:900px;margin:0 auto}.patient-list-item{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:1.25rem 1.5rem;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.patient-list-item:hover{background:#ffffff1f;border-color:#745af266;transform:translate(4px)}.patient-list-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.patient-list-info{display:flex;flex-direction:column;gap:.375rem;flex:1;min-width:0}.patient-name{margin:0;font-size:1.125rem;font-weight:600;color:#fff;line-height:1.3}.patient-contact{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.patient-detail{font-size:.875rem;color:#fff9;margin:0}.patient-list-right{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.patient-dob{font-size:.875rem;color:#ffffff80;white-space:nowrap}.patient-tags-compact{display:flex;gap:.5rem;align-items:center}.tags-more{font-size:.75rem;color:#ffffff80;font-weight:500}@media (max-width: 768px){.patients-container-modern{padding:1rem;gap:1rem}.patients-top-bar{flex-direction:column}.add-patient-button{width:100%;justify-content:center}.patient-list-item{flex-direction:column;align-items:flex-start;gap:1rem}.patient-list-right{width:100%;justify-content:space-between}.patients-header{flex-direction:column;gap:15px;align-items:stretch}.modal-actions{flex-direction:column}.modal-actions button{flex:none}}.upgrade-modal{max-width:550px;max-height:90vh;overflow-y:auto;text-align:center;transform:none!important;transition:none!important;animation:none!important}.upgrade-modal:hover{transform:none!important;box-shadow:none!important}.upgrade-modal::-webkit-scrollbar{width:8px}.upgrade-modal::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.upgrade-modal::-webkit-scrollbar-thumb{background:#667eea80;border-radius:4px}.upgrade-modal::-webkit-scrollbar-thumb:hover{background:#667eeab3}.upgrade-icon{font-size:64px;margin-bottom:16px}.upgrade-modal h2{margin:0 0 24px;color:#fff;font-size:28px;font-weight:700}.limit-info{background:#ffffff0d;border-radius:12px;padding:24px;margin-bottom:24px}.usage-stats{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:16px}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:48px;font-weight:700;color:#667eea;line-height:1}.stat-divider{font-size:36px;color:#ffffff4d;font-weight:300}.stat-label{font-size:12px;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.remaining-text{color:#f39c12;font-size:16px;font-weight:600;margin:16px 0}.limit-message{color:#ffffffe6;font-size:15px;line-height:1.6}.limit-message p{margin:12px 0}.limit-message strong{color:#fff;font-weight:600}.pro-benefits{background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.3);border-radius:12px;padding:20px;margin-bottom:24px}.pro-benefits h3{margin:0 0 16px;color:#fff;font-size:18px;font-weight:600}.pro-benefits ul{list-style:none;padding:0;margin:0 0 20px;text-align:left}.pro-benefits li{color:#ffffffe6;padding:8px 0;font-size:14px}.pro-price{display:flex;align-items:baseline;justify-content:center;gap:4px}.pro-price .price{font-size:36px;font-weight:700;color:#fff}.pro-price .period{font-size:16px;color:#fff9}.upgrade-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-weight:600;padding:14px 28px}.upgrade-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.reset-info{color:#fff9;font-size:13px;margin-top:16px;font-style:italic}@media (max-width: 600px){.upgrade-modal{max-width:90vw}.stat-value{font-size:36px}.stat-divider{font-size:28px}.upgrade-icon{font-size:48px}.upgrade-modal h2{font-size:24px}.pro-price .price{font-size:28px}}.headphone-modal-overlay{animation:none!important}.headphone-warning-modal{max-width:400px;background:#1e1e2ffa!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;padding:2rem!important;transform:none!important;transition:none!important;animation:none!important}.headphone-warning-modal:hover{transform:none!important;box-shadow:none!important}.warning-icon{font-size:48px;margin-bottom:1rem}.headphone-warning-modal h2{margin:0 0 1.5rem;color:#fff;font-size:20px;font-weight:600;padding:0!important}.warning-message{color:#ff9800;font-size:15px;margin:0 0 1.5rem;text-align:center;line-height:1.5}.warning-message strong{color:#fff}.dont-show-again{margin-bottom:1.5rem;text-align:left;padding:0}.dont-show-again label{display:flex;align-items:center;gap:10px;cursor:pointer;color:#ffffffe6;font-size:14px}.dont-show-again input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#ff9800}.dont-show-again span{-webkit-user-select:none;user-select:none}.headphone-warning-modal .modal-actions{padding:0!important;margin:0!important;justify-content:center;gap:1rem}@media (max-width: 600px){.headphone-warning-modal{max-width:90vw}.warning-icon{font-size:40px}.headphone-warning-modal h2{font-size:18px}}.google-signin-wrapper{width:100%;display:flex;justify-content:center}.google-button-container{display:flex;justify-content:center;width:100%;max-width:100%}.google-button-container>div{width:100%!important;max-width:100%!important}.google-button-container iframe{border-radius:25px!important;width:100%!important;max-width:100%!important}.signup-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(145deg,#1e1e2f,#2a2a3e);padding:2rem;width:100%}.signup-box{width:100%;max-width:800px;padding:2.5rem;border-radius:15px;background:#2e2e3cf2;box-shadow:0 8px 32px #0003;border:1px solid rgba(255,255,255,.1)}.signup-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:2rem;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.plans-container{display:flex;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.plan-card{flex:1;min-width:250px;padding:1.5rem;border-radius:15px;background:#1e1e2f80!important;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s ease-in-out;position:relative;overflow:hidden;color:#fff}.plan-card.selected{border-color:#7965efcc;background:#7965ef1a!important}.plan-card.disabled{opacity:.7;cursor:not-allowed}.coming-soon-banner{position:absolute;top:20px;right:-30px;background:#1e1e2fb3;padding:5px 40px;transform:rotate(45deg);font-size:.8rem}.plan-card h3{margin-bottom:1rem;color:#fff}.plan-price{font-size:1.8rem;color:#fff;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.plan-price .amount{font-weight:700}.plan-price .period{font-size:1rem;color:#ffffffb3}.plan-price-main{font-size:1.8rem;color:#fff;margin-bottom:.5rem;font-weight:700}.free-trial-text{color:#7965ef;font-size:1.1rem;margin-bottom:1rem;font-weight:500}.plan-card ul{list-style:none;padding:0;margin:0 0 1.5rem}.plan-card li{margin-bottom:.5rem;color:#ffffffb3;font-size:.9rem}.plan-card li:before{content:"✓";margin-right:.5rem;color:#7965ef}.plan-select-button{width:100%;padding:.8rem;border-radius:25px;background:transparent;color:#fff;border:1px solid rgba(121,101,239,.5);cursor:pointer;transition:all .2s ease-in-out}.plan-select-button:not(:disabled):hover{background:#7965ef33;transform:translateY(-2px);box-shadow:0 4px 10px #6d5dfc4d}.plan-select-button:disabled{cursor:not-allowed;opacity:.5}.pricing-link{text-align:center;margin-bottom:2rem}.pricing-link a{color:#7965ef;text-decoration:none;font-size:.9rem;transition:color .2s ease-in-out}.pricing-link a:hover{color:#d36eff}.signup-form{display:flex;flex-direction:column;gap:1.2rem}.form-row{display:flex;gap:1rem;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:200px}.form-group{display:flex;flex-direction:column;position:relative;width:100%;margin-bottom:1rem}.signup-input{width:100%;box-sizing:border-box;padding:.8rem 1rem;font-size:.9rem;border-radius:8px;background:#1e1e2f80;border:1px solid rgba(255,255,255,.1);color:#fff;transition:all .2s ease-in-out}.signup-input::placeholder{color:#ffffff80}.signup-input:focus{outline:none;border-color:#7965efcc;background:#1e1e2fb3}.specialty-group{position:relative}.specialty-group input{padding-right:2.5rem}.specialty-group:after{content:"▼";position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#ffffff80;pointer-events:none;font-size:.7rem}.specialty-dropdown{position:absolute;top:100%;left:0;right:0;max-height:250px;overflow-y:auto;background:#1e1e2ffa;border:1px solid rgba(121,101,239,.3);border-radius:8px;margin-top:4px;z-index:1000;box-shadow:0 4px 12px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.specialty-option{padding:.8rem 1rem;cursor:pointer;transition:all .2s ease-in-out;color:#ffffffe6;border-bottom:1px solid rgba(255,255,255,.05)}.specialty-option:last-child{border-bottom:none}.specialty-option:hover{background:#7965ef33;color:#fff;padding-left:1.2rem}.signup-submit-button{padding:.8rem 1.5rem;font-size:1rem;border-radius:25px;background:#7965efe6;color:#fff;border:none;cursor:pointer;transition:all .2s ease-in-out;margin-top:.5rem}.signup-submit-button:hover{transform:translateY(-2px);box-shadow:0 4px 10px #6d5dfc66;background:#7965ef}.signup-submit-button:active{transform:translateY(0)}.terms-checkbox-container{margin:1.5rem 0 1rem;display:flex;align-items:center;justify-content:center}.terms-label{display:flex;align-items:center;cursor:pointer;font-size:.95rem;color:#fffc}.terms-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;background:#1e1e2f80;border:1px solid rgba(255,255,255,.1);border-radius:4px;margin-right:10px;cursor:pointer;position:relative;transition:all .2s ease-in-out}.terms-checkbox:checked{background:#7965ef4d;border-color:#7965efcc}.terms-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#7965ef;font-size:12px}.terms-checkbox:hover{border-color:#7965efb3}.terms-link{color:#7965ef;text-decoration:none;transition:color .2s ease-in-out}.terms-link:hover{color:#d36eff;text-decoration:underline}.error-message{background:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#ff6b6b;border-radius:8px;padding:.75rem;text-align:center;margin-bottom:1rem}.specialty-dropdown::-webkit-scrollbar{width:8px}.specialty-dropdown::-webkit-scrollbar-track{background:#1e1e2f4d;border-radius:4px}.specialty-dropdown::-webkit-scrollbar-thumb{background:#7965ef80;border-radius:4px}.specialty-dropdown::-webkit-scrollbar-thumb:hover{background:#7965efb3}.signup-form .password-requirements,.signup-box .password-requirements{margin-top:.5rem;font-size:.85rem;color:#ffffffb3;background:#1e1e2f80!important;padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.signup-form .password-requirements p,.signup-box .password-requirements p{color:#ffffffe6!important;margin:0 0 .5rem}.requirement-list{list-style:none;padding:0;margin:.5rem 0}.requirement-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem;transition:color .2s ease-in-out}.requirement-item.met{color:#4caf50}.requirement-item.not-met{color:#ffffff80}.requirement-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:.8rem}.requirement-icon.met{color:#4caf50}.requirement-icon.not-met{color:#ffffff4d}.back-to-login{display:flex;justify-content:flex-start;margin-bottom:1.5rem}.back-link{text-decoration:none}.back-button{padding:.6rem 1.2rem;font-size:.9rem;border-radius:25px;background:#1e1e2f80;color:#fffc;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s ease-in-out;display:flex;align-items:center;gap:.5rem}.back-button:hover{background:#1e1e2fb3;color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #0003}.back-button:active{transform:translateY(0)}.payment-form{margin-top:20px}.payment-form-title{font-size:22px;margin-bottom:25px;color:#fff;text-align:center}.payment-plan-info{margin-bottom:30px;text-align:center;display:flex;flex-direction:column;gap:10px}.plan-summary-title{font-size:1.25rem;color:#fff;font-weight:500;background:linear-gradient(90deg,#7965ef1a,#d36eff1a);padding:12px 20px;border-radius:10px;display:inline-block;margin:0 auto}.trial-message{color:#7965ef;font-size:1.1rem;margin-bottom:.5rem;text-align:center;font-weight:500}.card-element-container{margin-bottom:30px}.card-element-label{display:block;font-size:16px;color:#fff;margin-bottom:10px}.card-element-wrapper{background-color:#1e1e2f80!important;border-radius:8px;padding:10px;border:1px solid rgba(255,255,255,.1)}.card-element{padding:15px;background-color:transparent!important}.card-element iframe,.__PrivateStripeElement,.__PrivateStripeElement iframe{background-color:transparent!important}.secure-payment-message{margin-top:20px;font-size:.9rem;color:#fffc;text-align:center;line-height:1.5;background:#1e1e2f4d;padding:12px;border-radius:8px;display:flex;align-items:center;justify-content:center}.lock-icon{margin-right:8px;font-size:1.1rem}.back-button-container{margin-bottom:20px}.trial-badge{position:absolute;top:15px;right:15px;background:#7965efcc;color:#fff;padding:.3rem .6rem;border-radius:15px;font-size:.7rem;font-weight:500}@media (max-width: 768px){.card-element{padding:10px}.payment-form-title{font-size:20px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(145deg,#1e1e2f,#2a2a3e);width:100%;padding:2rem 0;box-sizing:border-box;overflow-y:auto}.login-box{width:300px;max-width:90%;padding:2.5rem;border-radius:15px;background:#2e2e3cf2;box-shadow:0 8px 32px #0003;border:1px solid rgba(255,255,255,.1)}.login-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:2rem;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.login-form{display:flex;flex-direction:column;gap:1.2rem}.form-group{display:flex;flex-direction:column;width:100%;margin-bottom:1rem}.login-input{width:100%;box-sizing:border-box;padding:.8rem 1rem;font-size:.9rem;border-radius:8px;background:#1e1e2f80;border:1px solid rgba(255,255,255,.1);color:#fff;transition:all .2s ease-in-out}.login-input::placeholder{color:#ffffff80}.login-input:focus{outline:none;border-color:#7965efcc;background:#1e1e2fb3}.login-button{padding:.8rem 1.5rem;font-size:1rem;border-radius:25px;background:#7965efe6;color:#fff;border:none;cursor:pointer;transition:all .2s ease-in-out;margin-top:.5rem}.login-button:hover{transform:translateY(-2px);box-shadow:0 4px 10px #6d5dfc66;background:#7965ef}.login-button:active{transform:translateY(0)}.error-message{background:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#ff6b6b;border-radius:8px;padding:.75rem;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);margin-bottom:1rem}.signup-section{margin-top:2rem;text-align:center;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.signup-section p{color:#ffffffb3;margin-bottom:1rem;font-size:.9rem}.signup-button{padding:.6rem 1.2rem;font-size:.9rem;border-radius:25px;background:transparent;color:#fff;border:1px solid rgba(121,101,239,.5);cursor:pointer;transition:all .2s ease-in-out}.signup-button:hover{background:#7965ef33;transform:translateY(-2px);box-shadow:0 4px 10px #6d5dfc4d}*{box-sizing:border-box}body{margin:0;padding:0}.payment-success-container{min-height:100vh;width:100vw;background:linear-gradient(145deg,#1e1e2f,#2a2a3e);display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;margin:0;position:absolute;top:0;left:0;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.payment-success-card{background:#2e2e3cf2;border-radius:15px;box-shadow:0 8px 32px #0003;border:1px solid rgba(255,255,255,.1);max-width:600px;width:100%;padding:40px;text-align:center;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-icon{margin-bottom:24px}.checkmark{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;font-size:48px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto;animation:checkmarkPop .6s ease-out .3s both}@keyframes checkmarkPop{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.success-title{font-size:32px;font-weight:700;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 8px}.success-subtitle{font-size:18px;color:#b8b8d1;margin:0 0 32px;font-weight:400}.user-info{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:20px;margin-bottom:32px}.welcome-message{font-size:18px;color:#fff;margin:0 0 8px}.specialty-info{font-size:16px;color:#b8b8d1;margin:0}.plan-confirmation{border:2px solid #e9ecef;border-radius:12px;padding:24px;margin-bottom:32px}.plan-title{font-size:20px;font-weight:600;color:#fff;margin:0 0 16px}.plan-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px}.plan-name{font-size:18px;font-weight:600;color:#fff}.plan-price{font-size:24px;font-weight:700;color:#6d5dfc}.trial-info{text-align:center}.trial-badge{display:inline-block;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;margin-bottom:12px}.trial-text{font-size:16px;color:#fff;margin:0 0 8px}.billing-text{font-size:14px;color:#b8b8d1;margin:0}.features-included{text-align:left;margin-bottom:32px}.features-included h4{font-size:18px;font-weight:600;color:#fff;margin:0 0 16px;text-align:center}.features-list{list-style:none;padding:0;margin:0}.feature-item{display:flex;align-items:center;padding:8px 0;font-size:16px;color:#fff}.feature-check{color:#4caf50;font-weight:700;margin-right:12px;font-size:18px}.next-steps{text-align:left;margin-bottom:32px}.next-steps h4{font-size:18px;font-weight:600;color:#fff;margin:0 0 16px;text-align:center}.steps-list{display:flex;flex-direction:column;gap:12px}.step-item{display:flex;align-items:flex-start;gap:12px}.step-number{background:#667eea;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.step-text{font-size:16px;color:#fff;line-height:1.5}.action-buttons{margin-bottom:24px;display:flex;justify-content:center;align-items:center}.get-started-button{background:linear-gradient(135deg,#6d5dfc,#d36eff);color:#fff;border:none;padding:18px 36px;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 15px #6d5dfc4d;position:relative;overflow:hidden}.get-started-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #6d5dfc66;background:linear-gradient(135deg,#7c6dfc,#e376ff)}.get-started-button:active{transform:translateY(-1px);transition:all .1s ease}.support-info{border-top:1px solid rgba(255,255,255,.2);padding-top:24px}.support-text{font-size:14px;color:#b8b8d1;margin:0}.support-link{color:#667eea;text-decoration:none;font-weight:600}.support-link:hover{text-decoration:underline}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#6c757d}@media (max-width: 768px){.payment-success-container{padding:16px}.payment-success-card{padding:24px}.success-title{font-size:28px}.success-subtitle{font-size:16px}.plan-details{flex-direction:column;gap:8px;text-align:center}.checkmark{width:60px;height:60px;font-size:36px}}.verify-email-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.verify-email-card{background:#fff;border-radius:16px;padding:48px;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d}.verification-content{text-align:center}.verification-content h1{font-size:28px;font-weight:700;margin:20px 0 12px;color:#333}.verification-content p{font-size:16px;color:#666;margin:8px 0;line-height:1.6}.spinner{width:60px;height:60px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.success-icon,.error-icon,.info-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;margin:0 auto 20px}.success-icon{background:#4caf50;color:#fff}.error-icon{background:#f44336;color:#fff}.info-icon{background:#2196f3;color:#fff}.redirect-message{font-size:14px;color:#999;margin-top:16px}.error-message{color:#f44336;font-weight:500}.btn-primary,.btn-secondary{padding:14px 32px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin:12px 8px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#f8f9fa}.error-actions{margin-top:24px;display:flex;flex-direction:column;align-items:center}@media (max-width: 600px){.verify-email-card{padding:32px 24px}.verification-content h1{font-size:24px}.verification-content p{font-size:14px}.success-icon,.error-icon,.info-icon{width:60px;height:60px;font-size:36px}.btn-primary,.btn-secondary{width:100%;margin:8px 0}}.verification-pending-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.verification-pending-card{background:#fff;border-radius:16px;padding:48px;max-width:600px;width:100%;box-shadow:0 20px 60px #0000004d}.email-icon{color:#667eea;text-align:center;margin-bottom:24px}.email-icon svg{width:80px;height:80px}.verification-pending-card h1{font-size:28px;font-weight:700;text-align:center;color:#333;margin:0 0 16px}.welcome-text{text-align:center;font-size:18px;color:#555;margin:0 0 8px}.instruction-text{text-align:center;font-size:16px;color:#666;margin:0 0 32px;line-height:1.6}.email-highlight{color:#667eea;font-weight:600}.info-box{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:20px 24px;margin:24px 0}.info-box h3{margin:0 0 12px;font-size:16px;font-weight:600;color:#333}.info-box ol{margin:0;padding-left:20px}.info-box li{margin:8px 0;color:#555;line-height:1.5}.help-section{border-top:1px solid #e0e0e0;padding-top:24px;margin-top:24px}.help-text{font-size:16px;font-weight:600;color:#333;margin:0 0 12px}.help-list{list-style:none;padding:0;margin:0 0 20px}.help-list li{padding:6px 0;color:#666;font-size:14px}.help-list li:before{content:"•";color:#667eea;font-weight:700;margin-right:8px}.success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:12px;border-radius:8px;margin:16px 0;text-align:center;font-size:14px;font-weight:500}.error-message{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:12px;border-radius:8px;margin:16px 0;text-align:center;font-size:14px;font-weight:500}.btn-resend{width:100%;padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-resend:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-resend:disabled{opacity:.6;cursor:not-allowed}.logout-section{margin-top:24px;padding-top:20px;border-top:1px solid #e0e0e0;text-align:center}.logout-text{font-size:14px;color:#666;margin:0 0 12px}.btn-logout{background:transparent;color:#667eea;border:2px solid #667eea;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-logout:hover{background:#f8f9fa}@media (max-width: 600px){.verification-pending-card{padding:32px 24px}.verification-pending-card h1{font-size:24px}.welcome-text{font-size:16px}.instruction-text{font-size:14px}.email-icon svg{width:60px;height:60px}}.main-layout{display:flex;flex-direction:column;height:calc(100vh - 80px);max-width:1400px;width:100%;margin:0 auto;overflow:hidden}.tab-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:2rem 3rem;min-height:0}.tab-content::-webkit-scrollbar{width:6px}.tab-content::-webkit-scrollbar-track{background:transparent}.tab-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.tab-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.account-settings{min-height:100vh;max-height:100vh;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;flex-direction:column}.account-navigation{display:flex;padding:0 2rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:2rem}.back-button{background:none;border:none;padding:1rem 2rem;color:#ffffffb3;font-size:1rem;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease}.back-button:hover{color:#fff;border-bottom-color:#7965ef80}.billing-navigation{display:flex;padding:0 2rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:2.5rem;gap:1rem}.billing-tab{background:none;border:none;padding:1rem 2rem 1.25rem;color:#ffffffb3;font-size:1rem;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease}.billing-tab:hover{color:#fff;border-bottom-color:#7965ef80}.billing-tab.active{color:#fff;border-bottom-color:#7965ef}.settings-container{display:grid;grid-template-columns:250px 1fr;gap:2rem;flex:1;min-height:0;overflow:hidden}.settings-nav{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#ffffff0d;border-radius:16px;height:fit-content;max-height:100%;overflow-y:auto}.settings-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 .5rem;margin:0 -.5rem;min-height:0}.settings-content::-webkit-scrollbar{width:8px}.settings-content::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.settings-content::-webkit-scrollbar-thumb{background:#7965ef80;border-radius:4px}.settings-content::-webkit-scrollbar-thumb:hover{background:#7965efb3}.overview-tab{display:flex;flex-direction:column;gap:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fffffff2;padding:1.5rem;border-radius:16px;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000001a;display:flex;align-items:center;gap:1rem;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.stat-icon{font-size:2.5rem;flex-shrink:0}.stat-content{flex:1}.stat-content h3{margin:0 0 .25rem;font-size:1.8rem;font-weight:700;color:#2d3748}.stat-content p{margin:0;font-size:.9rem;color:#718096}.plan-card{background:#fffffff2;padding:2rem;border-radius:16px;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000001a}.plan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.1)}.plan-header h3{margin:0;font-size:1.3rem;font-weight:600;color:#2d3748}.plan-status{padding:.35rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.plan-status.active{background:#4ade8033;color:#16a34a;border:1px solid rgba(74,222,128,.3)}.plan-status.trial{background:#fbbf2433;color:#d97706;border:1px solid rgba(251,191,36,.3)}.plan-usage{display:flex;flex-direction:column;gap:1.5rem}.usage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;color:#4a5568;font-size:.9rem;font-weight:500}.alerts-section{margin-bottom:2rem}.alerts-section h2{margin:0 0 1rem;color:#fff;font-size:1.2rem;font-weight:600}.alerts-list{display:flex;flex-direction:column;gap:1rem}.alert-item{background:#fffffff2;padding:1.25rem 1.5rem;border-radius:12px;border-left:4px solid;box-shadow:0 2px 8px #0000001a}.alert-item.alert-warning{border-left-color:#f59e0b;background:#fef3c7f2}.alert-item.alert-error{border-left-color:#ef4444;background:#fee2e2f2}.alert-item.alert-info{border-left-color:#3b82f6;background:#dbeafef2}.alert-message{margin:0 0 .5rem;color:#1f2937;font-weight:500}.alert-action{margin:0;color:#6b7280;font-size:.9rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#fff}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-shrink:0}.header-content h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;color:#fff}.header-content p{font-size:1.1rem;opacity:.9;margin:0;color:#ffffffe6}.user-avatar{display:flex;align-items:center;gap:1rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem;border-radius:16px;border:1px solid rgba(255,255,255,.2)}.avatar-circle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#4caf50,#45a049);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;color:#fff;text-transform:uppercase}.user-info h3{margin:0;font-size:1.1rem;font-weight:600}.user-info p{margin:.25rem 0 0;opacity:.8;font-size:.9rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid rgba(240,240,240,.6);transition:all .2s ease}.status-item:hover{padding-left:.5rem;background:#667eea05;border-radius:8px;margin:0 -.5rem}.status-value{font-weight:600;color:#2d3748;padding:.25rem .75rem;border-radius:20px;background:#667eea1a;font-size:.9rem}.status-value.active{color:#10b981;background:linear-gradient(135deg,#d1fae5,#a7f3d0);box-shadow:0 2px 8px #10b98133}.alert{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;border-radius:12px;margin-bottom:1rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 16px #0000001a;flex-shrink:0}.alert-success{background:#d1fae5e6;color:#065f46;border:1px solid rgba(167,243,208,.5)}.alert-error{background:#fee2e2e6;color:#991b1b;border:1px solid rgba(252,165,165,.5)}.alert-close{position:absolute;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;opacity:.7;transition:opacity .2s}.alert-close:hover{opacity:1}.settings-nav-horizontal{display:flex;gap:1rem;margin-bottom:2.5rem;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgba(121,101,239,.5) rgba(255,255,255,.1)}.settings-nav-horizontal::-webkit-scrollbar{height:6px}.settings-nav-horizontal::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.settings-nav-horizontal::-webkit-scrollbar-thumb{background:#7965ef80;border-radius:3px}.settings-nav-horizontal::-webkit-scrollbar-thumb:hover{background:#7965efb3}.settings-nav-button{background:#2e2e3cb3;border:1px solid rgba(255,255,255,.1);color:#ffffffb3;padding:1rem 1.75rem;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.9rem;line-height:1.5;white-space:nowrap;flex-shrink:0}.settings-nav-button:hover{background:#ffffff0d;color:#fff}.settings-nav-button.active{background:#7965ef33;color:#fff;border-color:#7965ef4d}.overview-section,.usage-section{display:flex;flex-direction:column;gap:1.5rem}.status-grid{display:flex;flex-direction:column;gap:1rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.status-item:last-child{border-bottom:none}.status-value{color:#ffffffe6;font-weight:500}.status-value.active{color:#4ade80}.usage-stats{display:flex;flex-direction:column;gap:1.5rem}.usage-item{display:flex;flex-direction:column;gap:.5rem}.usage-label{display:flex;justify-content:space-between;align-items:center;color:#ffffffe6;font-size:.9rem}.usage-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,#6d5dfc,#d36eff);border-radius:4px;transition:width .3s ease}.settings-form{display:flex;flex-direction:column;gap:1.5rem;max-width:600px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.form-actions{display:flex;gap:1rem;margin-top:1rem}.form-group label{color:#ffffffe6;font-size:.9rem;font-weight:500}.form-group input{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#6d5dfccc;background:#ffffff26}.form-group input::placeholder{color:#ffffff80}.billing-info{display:flex;flex-direction:column;gap:1.5rem}.billing-header{display:flex;justify-content:space-between;align-items:center}.billing-header h4{margin:0;color:#fff;font-size:1.1rem}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.status-badge.active{background:#4ade8033;color:#4ade80;border:1px solid rgba(74,222,128,.3)}.billing-details p{margin:.5rem 0;color:#fffc}.billing-actions{display:flex;gap:1rem;flex-wrap:wrap}.nav-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:1rem 1.25rem;border:none;background:none;border-radius:12px;font-size:1rem;font-weight:500;color:#666;cursor:pointer;transition:all .3s ease;margin-bottom:.5rem;text-align:left}.nav-item:hover{background:#667eea1a;color:#667eea;transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 8px 20px #667eea4d}.nav-icon{font-size:1.2rem}.stat-display{display:flex;flex-direction:column;gap:.5rem;text-align:center}.stat-value{font-size:2.5rem;font-weight:700;color:#fff;background:linear-gradient(90deg,#6d5dfc,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stat-limit{color:#ffffffb3;font-size:.9rem}.usage-bar{flex:1;height:10px;background:#e5e7ebcc;border-radius:20px;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.usage-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:20px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #667eea4d;position:relative}.usage-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.overview-card{background:#ffffffe6;padding:2rem;border-radius:20px;border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 40px #00000014;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.overview-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea,#764ba2)}.overview-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px #00000026}.trial-notice{display:flex;align-items:center;gap:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;border-radius:16px;box-shadow:0 20px 40px #667eea4d}.trial-icon{font-size:3rem}.trial-content h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.trial-content p{margin:0 0 1rem;opacity:.9}.trial-content .btn-primary{background:#fff3;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.trial-content .btn-primary:hover{background:#ffffff4d;border-color:#ffffff80}@media (max-width: 1200px){.settings-container{grid-template-columns:1fr;gap:1.5rem;display:flex;flex-direction:column}.settings-nav{display:flex;flex-direction:row;overflow-x:auto;padding:1rem;background:#ffffff0d;border-radius:12px;flex-shrink:0}.nav-item{white-space:nowrap;margin-right:.5rem;margin-bottom:0;flex-shrink:0}.settings-content{flex:1;min-height:0;overflow-y:auto}}@media (max-width: 768px){.account-settings{padding:1rem;max-height:100vh;overflow:hidden}.settings-content{overflow-y:auto}.settings-header{flex-direction:column;gap:1rem;text-align:center}.header-content h1{font-size:2rem}.stats-grid,.form-row,.billing-overview,.usage-overview{grid-template-columns:1fr}.usage-stats{flex-direction:column;gap:1rem}.trial-notice{flex-direction:column;text-align:center}.settings-form{max-width:100%}}.billing-dashboard{min-height:100vh;background:#f8f9ff;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid rgba(102,126,234,.2);border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-container p{color:#666;font-size:1.1rem}.dashboard-header{max-width:1200px;margin:0 auto 2rem;background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1)}.header-content h1{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-content p{color:#666;font-size:1.1rem;margin:0;line-height:1.5}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;margin:0 auto 1.5rem;max-width:1200px;font-weight:500;animation:slideIn .3s ease-out}.billing-tabs{display:flex;gap:.5rem;max-width:1200px;margin:0 auto 2rem;background:#fff;padding:.5rem;border-radius:16px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1)}.tab-button{flex:1;padding:1rem 1.5rem;background:transparent;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#666;font-size:.95rem}.tab-button:hover{background:#667eea0d;color:#667eea}.tab-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.tab-content{max-width:1200px;margin:0 auto}.billing-section{margin-bottom:2.5rem}.billing-section h2{font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;color:#333}.subscription-card{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1);position:relative;overflow:hidden}.subscription-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea,#764ba2)}.subscription-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.plan-info h3{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:#333}.plan-price{font-size:2rem;font-weight:700;color:#667eea;display:flex;align-items:baseline;gap:.25rem}.plan-price span{font-size:1rem;color:#666;font-weight:500}.status-badge{padding:.5rem 1rem;border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.subscription-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-label{font-size:.9rem;color:#666;font-weight:500}.detail-value{font-size:1.1rem;font-weight:600;color:#333}.subscription-actions{display:flex;gap:1rem;flex-wrap:wrap}.action-button{padding:.75rem 1.5rem;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.95rem}.action-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.action-button.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.action-button.secondary{background:#667eea1a;color:#667eea;border:1px solid rgba(102,126,234,.2)}.action-button.secondary:hover{background:#667eea26;transform:translateY(-1px)}.payment-method-card{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1);display:flex;justify-content:space-between;align-items:center}.card-info{display:flex;align-items:center;gap:1.5rem}.card-icon{font-size:2rem;background:#667eea1a;padding:1rem;border-radius:16px;display:flex;align-items:center;justify-content:center}.card-details{display:flex;flex-direction:column;gap:.5rem}.card-number{font-size:1.1rem;font-weight:600;color:#333;letter-spacing:1px}.card-brand{font-size:.9rem;color:#666}.usage-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.usage-card{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1)}.usage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.usage-header h4{font-size:1.1rem;font-weight:600;margin:0;color:#333}.usage-percentage{font-size:1.5rem;font-weight:700;color:#667eea}.usage-bar{height:8px;background:#667eea1a;border-radius:4px;overflow:hidden;margin-bottom:1rem}.usage-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;transition:width .5s ease}.usage-details{color:#666;font-size:.9rem}.usage-breakdown{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1)}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.analytics-card{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1)}.analytics-card.large{grid-column:span 2}.analytics-card h3{font-size:1.25rem;font-weight:600;margin:0 0 1.5rem;color:#333}.chart-container{height:300px;position:relative}.stats-list{display:flex;flex-direction:column;gap:1rem}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#667eea0d;border-radius:12px}.stat-label{color:#666;font-weight:500}.stat-value{font-size:1.1rem;font-weight:700;color:#667eea}.payment-history{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000d;border:1px solid rgba(102,126,234,.1);overflow:hidden}.payment-item{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:1.5rem;padding:1.5rem 2rem;border-bottom:1px solid rgba(0,0,0,.05);transition:background-color .2s ease}.payment-item:last-child{border-bottom:none}.payment-item:hover{background:#667eea05}.payment-info{display:flex;flex-direction:column;gap:.25rem}.payment-description{font-weight:600;color:#333}.payment-date{color:#666;font-size:.9rem}.payment-amount{font-size:1.1rem;font-weight:700;color:#333}.payment-status{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.download-button{padding:.5rem 1rem;background:#667eea1a;color:#667eea;border:1px solid rgba(102,126,234,.2);border-radius:8px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.download-button:hover{background:#667eea26;transform:translateY(-1px)}.empty-state{text-align:center;padding:3rem 2rem;color:#666}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state h4{margin:0 0 .5rem;font-weight:600}.empty-state p{margin:0;font-size:.9rem}@media (max-width: 1024px){.analytics-card.large{grid-column:span 1}.analytics-grid{grid-template-columns:1fr}}@media (max-width: 768px){.billing-dashboard{padding:1rem}.dashboard-header{padding:1.5rem}.header-content h1{font-size:1.75rem}.billing-tabs{flex-direction:column;gap:.25rem}.subscription-header{flex-direction:column;gap:1rem;text-align:center}.subscription-actions{justify-content:center}.payment-method-card{flex-direction:column;gap:1.5rem;text-align:center}.usage-grid{grid-template-columns:1fr}.payment-item{grid-template-columns:1fr;gap:1rem;text-align:center}.subscription-details{grid-template-columns:1fr;text-align:center}}@media (max-width: 480px){.subscription-card,.payment-method-card,.usage-card,.usage-breakdown,.analytics-card{padding:1.5rem}.plan-price,.header-content h1{font-size:1.5rem}.tab-button{padding:.75rem 1rem;font-size:.9rem}.chart-container{height:250px}}@media (prefers-color-scheme: dark){.billing-dashboard{background:#1a1a1a}.dashboard-header,.billing-tabs,.subscription-card,.payment-method-card,.usage-card,.usage-breakdown,.analytics-card,.payment-history{background:#1e1e1ef2;border-color:#ffffff1a}.header-content h1{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-content p,.detail-label,.usage-details,.payment-date,.card-brand{color:#ccc}.plan-info h3,.usage-header h4,.analytics-card h3,.billing-section h2,.detail-value,.card-number,.payment-description,.payment-amount{color:#fff}.tab-button{color:#ccc}.tab-button:hover{background:#667eea1a;color:#667eea}.payment-item:hover{background:#667eea0d}.empty-state{color:#ccc}.stat-item{background:#667eea1a}}.password-reset-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.reset-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1}.background-gradient{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea,#764ba2,#667eea);background-size:400% 400%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.floating-elements{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.floating-element{position:absolute;background:#ffffff1a;border-radius:50%;animation:float 20s infinite linear}.floating-element:nth-child(1){width:80px;height:80px;top:20%;left:10%;animation-delay:0s}.floating-element:nth-child(2){width:120px;height:120px;top:60%;right:15%;animation-delay:-7s}.floating-element:nth-child(3){width:60px;height:60px;bottom:20%;left:20%;animation-delay:-14s}@keyframes float{0%{transform:translateY(0) rotate(0);opacity:.7}33%{transform:translateY(-30px) rotate(120deg);opacity:.4}66%{transform:translateY(30px) rotate(240deg);opacity:.7}to{transform:translateY(0) rotate(360deg);opacity:.7}}.reset-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:3rem;width:100%;max-width:480px;box-shadow:0 30px 60px #0003;border:1px solid rgba(255,255,255,.3);position:relative;z-index:1}.reset-header{text-align:center;margin-bottom:2rem}.logo-section{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.logo-icon{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-section h1{font-size:2rem;font-weight:700;margin:0;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content h2{font-size:1.75rem;font-weight:600;margin:0 0 .75rem;color:#333}.header-content p{color:#666;font-size:1rem;line-height:1.5;margin:0}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;margin-bottom:1.5rem;font-weight:500;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background:#f443361a;border:1px solid rgba(244,67,54,.3);color:#d32f2f}.alert-success{background:#4caf501a;border:1px solid rgba(76,175,80,.3);color:#2e7d32}.alert-icon{font-size:1.2rem}.reset-form-container{margin-bottom:2rem}.reset-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#333;font-size:.95rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;font-size:1.1rem;color:#667eea;z-index:2}.input-wrapper input{width:100%;padding:1rem 1rem 1rem 3rem;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff;box-sizing:border-box}.input-wrapper input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.input-wrapper input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.password-strength{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.strength-bar{flex:1;height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.strength-fill{height:100%;border-radius:2px;transition:all .3s ease}.strength-label{font-size:.85rem;font-weight:600;min-width:80px;text-align:right}.password-match{margin-top:.5rem;font-size:.9rem;font-weight:500}.match-success{color:#4caf50}.match-error{color:#f44336}.password-requirements{background:#f8f9ff;border:1px solid rgba(102,126,234,.1);border-radius:12px;padding:1.25rem;margin-top:.5rem}.password-requirements h4{margin:0 0 .75rem;color:#333;font-size:.95rem;font-weight:600}.password-requirements ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.password-requirements li{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666;transition:color .2s ease}.password-requirements li:before{content:"○";color:#ccc;font-weight:700;transition:all .2s ease}.password-requirements li.requirement-met{color:#4caf50}.password-requirements li.requirement-met:before{content:"✓";color:#4caf50}.reset-button{width:100%;padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 8px 20px #667eea4d;position:relative;overflow:hidden}.reset-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.reset-button:hover:before{left:100%}.reset-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px #667eea66}.reset-button:active{transform:translateY(0)}.reset-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:0 4px 15px #667eea33}.button-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button-icon{font-size:1.1rem}.form-footer{text-align:center;margin-top:1.5rem}.form-footer p{color:#666;font-size:.9rem;margin:0}.form-footer a{color:#667eea;text-decoration:none;font-weight:600;transition:color .2s ease}.form-footer a:hover{color:#764ba2;text-decoration:underline}.security-notice{display:flex;align-items:flex-start;gap:1rem;background:#667eea0d;border:1px solid rgba(102,126,234,.1);border-radius:12px;padding:1.25rem;margin-top:1.5rem}.notice-icon{font-size:1.5rem;color:#667eea;margin-top:.25rem}.notice-content h4{margin:0 0 .5rem;color:#333;font-size:.95rem;font-weight:600}.notice-content p{margin:0;color:#666;font-size:.85rem;line-height:1.4}@media (max-width: 768px){.password-reset-container{padding:1rem}.reset-card{padding:2rem;margin:1rem}.header-content h2{font-size:1.5rem}.logo-section h1{font-size:1.75rem}.password-requirements ul{gap:.75rem}.security-notice{flex-direction:column;text-align:center}}@media (max-width: 480px){.reset-card{padding:1.5rem;border-radius:16px}.header-content h2{font-size:1.25rem}.logo-section{flex-direction:column;gap:.5rem}.password-strength{flex-direction:column;align-items:stretch;gap:.5rem}.strength-label{text-align:left;min-width:auto}}@media (prefers-color-scheme: dark){.reset-card{background:#1e1e1ef2;border:1px solid rgba(255,255,255,.1)}.header-content h2{color:#fff}.header-content p{color:#ccc}.form-group label{color:#fff}.input-wrapper input{background:#ffffff1a;border-color:#fff3;color:#fff}.input-wrapper input::placeholder{color:#ffffff80}.password-requirements{background:#667eea1a;border-color:#667eea33}.password-requirements h4{color:#fff}.password-requirements li{color:#ccc}.security-notice{background:#667eea1a;border-color:#667eea33}.notice-content h4{color:#fff}.notice-content p,.form-footer p{color:#ccc}}.admin-page{min-height:100vh;width:100vw;background:linear-gradient(135deg,#1e1e2f,#2a2a3e);overflow-x:hidden}.admin-dashboard{width:100%;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.admin-header{padding:2.5rem 3rem;border-bottom:2px solid rgba(121,101,239,.2);background:#1e1e2f80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-title h1{margin:0 0 .5rem;font-size:3rem;background:linear-gradient(90deg,#7965ef,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700;letter-spacing:-.5px}.header-title .subtitle{margin:0;color:#fff9;font-size:1.125rem}.tab-navigation{display:flex;gap:0;margin:0;background:#1e1e2fcc;padding:1.5rem 3rem 0;border-bottom:2px solid rgba(121,101,239,.1)}.tab-navigation button{padding:1rem 2rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;color:#ffffff80;transition:all .3s ease;font-weight:500;margin-bottom:-2px}.tab-navigation button:hover{color:#fffc;background:#7965ef0d}.tab-navigation button.active{color:#7965ef;border-bottom-color:#7965ef;font-weight:600}.metrics-container{padding:3rem;display:flex;flex-direction:column;gap:3rem;max-width:1800px;margin:0 auto}.metrics-section h2{margin:0 0 1.5rem;font-size:1.5rem;color:#fff;font-weight:600;padding-left:1rem;border-left:5px solid #7965ef;display:flex;align-items:center;gap:.75rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.metric-card{background:#2e2e3c99;padding:2rem;border-radius:20px;border:1px solid rgba(121,101,239,.2);box-shadow:0 8px 32px #0000004d;transition:all .3s ease;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#7965ef,#d36eff);opacity:.8}.metric-card:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(121,101,239,.1) 0%,transparent 70%);pointer-events:none}.metric-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #7965ef66;border-color:#7965ef80}.metric-value{font-size:3rem;font-weight:700;background:linear-gradient(135deg,#fff,#d36eff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.75rem;line-height:1;position:relative;z-index:1}.metric-label{font-size:.9375rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:1px;font-weight:600;position:relative;z-index:1}.distribution-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.distribution-card{background:#2e2e3c99;padding:2rem;border-radius:20px;border:1px solid rgba(121,101,239,.2);box-shadow:0 8px 32px #0000004d}.distribution-card h3{margin:0 0 1.5rem;font-size:1.25rem;color:#fff;font-weight:600;padding-bottom:1rem;border-bottom:2px solid rgba(121,101,239,.3)}.distribution-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.distribution-item:last-child{border-bottom:none}.distribution-item span:first-child{color:#fffc;text-transform:capitalize;font-weight:500;font-size:1rem}.distribution-item span:last-child{font-weight:700;color:#7965ef;font-size:1.5rem;padding:.25rem 1rem;background:#7965ef1a;border-radius:12px}.users-container{margin:3rem;max-width:1800px;margin-left:auto;margin-right:auto;background:#2e2e3c99;border-radius:20px;border:1px solid rgba(121,101,239,.2);box-shadow:0 8px 32px #0000004d;overflow:hidden}.users-header{padding:2rem;border-bottom:1px solid rgba(121,101,239,.2);background:#1e1e2f80}.search-form{display:flex;gap:1rem;max-width:600px}.search-form input{flex:1;padding:1rem 1.5rem;border:2px solid rgba(121,101,239,.3);border-radius:12px;font-size:1rem;background:#1e1e2fcc;color:#fff;transition:all .3s ease}.search-form input::placeholder{color:#fff6}.search-form input:focus{outline:none;border-color:#7965ef;box-shadow:0 0 0 4px #7965ef26;background:#1e1e2ff2}.search-form button{padding:1rem 2rem;background:linear-gradient(135deg,#7965ef,#9d8bfa);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 16px #7965ef66}.search-form button:hover{transform:translateY(-3px);box-shadow:0 8px 24px #7965ef80}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{background:#1e1e2fcc;padding:1.25rem 1.5rem;text-align:left;font-weight:600;color:#ffffffe6;font-size:.875rem;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid rgba(121,101,239,.3);white-space:nowrap}.users-table td{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.05);font-size:1rem;color:#ffffffd9}.users-table tbody tr{transition:background .2s ease}.users-table tbody tr:hover{background:#7965ef1a}.role-badge,.status-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.8125rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.role-badge.admin{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;box-shadow:0 2px 12px #f59e0b66}.role-badge.clinician{background:#7965ef33;color:#9d8bfa;border:1px solid rgba(121,101,239,.4)}.status-badge.active{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.4)}.status-badge.trialing{background:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.4)}.status-badge.free{background:#ffffff1a;color:#fffc;border:1px solid rgba(255,255,255,.2)}.status-badge.canceled,.status-badge.past_due{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4)}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:2rem;border-top:1px solid rgba(121,101,239,.2);background:#1e1e2f80}.pagination button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#7965ef,#9d8bfa);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:.9375rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 12px #7965ef66}.pagination button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 4px 16px #7965ef80}.pagination button:disabled{background:#ffffff1a;cursor:not-allowed;opacity:.4;box-shadow:none;transform:none}.pagination span{color:#fffc;font-size:1rem;font-weight:500}.loading,.error{text-align:center;padding:4rem;color:#fff9;font-size:1.25rem}.error{color:#f87171;background:#ef44441a;border-radius:16px;border:1px solid rgba(239,68,68,.3);margin:3rem}@media (max-width: 1400px){.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.distribution-grid{grid-template-columns:1fr}}@media (max-width: 768px){.admin-header{padding:1.5rem}.header-title h1{font-size:2rem}.tab-navigation{padding:1rem 1.5rem 0}.metrics-container{padding:1.5rem;gap:2rem}.metrics-section h2{font-size:1.25rem}.metrics-grid,.distribution-grid{grid-template-columns:1fr;gap:1rem}.users-container{margin:1.5rem}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:1rem}.metric-value{font-size:2.5rem}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 2s ease-in-out infinite}.users-table-container::-webkit-scrollbar{height:8px}.users-table-container::-webkit-scrollbar-track{background:#1e1e2f80;border-radius:4px}.users-table-container::-webkit-scrollbar-thumb{background:#7965ef80;border-radius:4px}.users-table-container::-webkit-scrollbar-thumb:hover{background:#7965efb3}
