:root{--color-primary: #0D5C63;--color-primary-dark: #094249;--color-primary-light: rgba(13, 92, 99, .08);--color-primary-lighter: rgba(13, 92, 99, .04);--color-success: #059669;--color-success-dark: #047857;--color-success-light: rgba(5, 150, 105, .08);--color-warning: #D97706;--color-warning-dark: #B45309;--color-warning-light: rgba(217, 119, 6, .08);--color-danger: #DC2626;--color-danger-dark: #B91C1C;--color-danger-light: rgba(220, 38, 38, .08);--color-info: #0D5C63;--color-info-dark: #094249;--color-info-light: rgba(13, 92, 99, .08);--color-amber: #D97706;--color-amber-dark: #B45309;--color-amber-light: rgba(217, 119, 6, .08);--color-accent-pink: #9F7AEA;--color-accent-violet: #6366F1;--color-accent-cyan: #2EC4B6;--color-accent-teal: #0D5C63;--color-accent-rose: #E11D48;--color-text-primary: #111827;--color-text-secondary: #4B5563;--color-text-muted: #6B7280;--color-text-placeholder: #9CA3AF;--color-text-inverse: #ffffff;--color-bg-page: #F0F2F5;--color-bg-card: #ffffff;--color-bg-hover: #F0F2F5;--color-bg-active: #E5E7EB;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border: #D1D5DB;--color-border-subtle: #E5E7EB;--color-border-hover: #9CA3AF;--color-border-focus: #0D5C63;--shadow-xs: none;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .1);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .12);--shadow-focus: 0 0 0 2px rgba(13, 92, 99, .15);--shadow-focus-success: 0 0 0 2px rgba(5, 150, 105, .15);--shadow-focus-danger: 0 0 0 2px rgba(220, 38, 38, .15);--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 8px;--radius-2xl: 8px;--radius-full: 9999px;--font-xs: .7rem;--font-sm: .8rem;--font-base: .85rem;--font-md: .9rem;--font-lg: 1rem;--font-xl: 1.15rem;--font-2xl: 1.35rem;--font-3xl: 1.5rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--spacing-10: 40px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--spacing-24: 96px;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-overlay: 800;--z-modal-backdrop: 900;--z-modal: 1000;--z-modal-nested: 10001;--z-popover: 1100;--z-tooltip: 1200;--z-toast: 10100;--z-helpbot: 9000;--z-modal-priority: 10000;--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .2s ease;--animation-bounce: cubic-bezier(.68, -.55, .265, 1.55);--animation-smooth: cubic-bezier(.4, 0, .2, 1);--animation-enter: cubic-bezier(0, 0, .2, 1);--animation-exit: cubic-bezier(.4, 0, 1, 1);--sidebar-width: 260px;--sidebar-collapsed-width: 56px;--header-height: 56px;--modal-content-max-height: 70vh;--content-max-width: 1200px;--form-max-width: 600px;--page-zoom: .9;--viewport-height: calc(100vh / var(--page-zoom));--viewport-width: calc(100vw / var(--page-zoom));--color-dark-bg: #1e293b;--color-dark-bg-primary: #0f172a;--color-dark-bg-secondary: #1e293b;--color-dark-bg-tertiary: #334155;--color-dark-bg-hover: #334155;--color-dark-bg-active: #475569;--color-dark-border: #475569;--color-dark-border-subtle: #334155;--color-dark-border-focus: #2EC4B6;--color-dark-text-primary: #F9FAFB;--color-dark-text-secondary: #D1D5DB;--color-dark-text-muted: #9CA3AF;--color-dark-text-placeholder: #6B7280;--color-dark-primary: #2EC4B6;--color-dark-primary-hover: #5DD6CB;--color-dark-success: #34D399;--color-dark-warning: #FBBF24;--color-dark-danger: #F87171;--color-dark-info: #2EC4B6;--color-dark-accent-hover: #2EC4B6;--color-dark-crisis: #f87171;--color-dark-crisis-bg: #3b1c1c;--shadow-dark-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-dark-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-dark-lg: 0 4px 12px rgba(0, 0, 0, .5);--shadow-dark-focus: 0 0 0 2px rgba(46, 196, 182, .3);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:var(--leading-normal);font-weight:var(--font-normal);color:var(--color-text-primary);background-color:var(--color-bg-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html{zoom:.9;min-height:var(--viewport-height)}body,#root{min-height:100%}[data-theme=dark]{--color-primary: #2EC4B6;--color-primary-dark: #5DD6CB;--color-primary-light: rgba(46, 196, 182, .12);--color-primary-lighter: rgba(46, 196, 182, .06);--color-success: #34D399;--color-success-dark: #6EE7B7;--color-success-light: rgba(52, 211, 153, .12);--color-warning: #FBBF24;--color-warning-dark: #FCD34D;--color-warning-light: rgba(251, 191, 36, .12);--color-danger: #F87171;--color-danger-dark: #FCA5A5;--color-danger-light: rgba(248, 113, 113, .12);--color-info: #2EC4B6;--color-info-dark: #5DD6CB;--color-info-light: rgba(46, 196, 182, .12);--color-text-primary: #F9FAFB;--color-text-secondary: #D1D5DB;--color-text-muted: #9CA3AF;--color-text-placeholder: #6B7280;--color-text-inverse: #0f172a;--color-bg-page: #0f172a;--color-bg-card: #1e293b;--color-bg-hover: #334155;--color-bg-active: #475569;--color-bg-overlay: rgba(0, 0, 0, .7);--color-border: #475569;--color-border-subtle: #334155;--color-border-hover: #64748B;--color-border-focus: #2EC4B6;--shadow-xs: none;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .5);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .6);--shadow-focus: 0 0 0 2px rgba(46, 196, 182, .3);color-scheme:dark}@media(max-width:640px){:root{--font-xs: .8rem;--font-sm: .875rem;--font-base: .95rem;--font-md: 1rem}html{zoom:1}}:root{--anim-fast: .1s;--anim-normal: .2s;--anim-slow: .3s;--anim-slower: .4s;--ease-out: cubic-bezier(.25, .46, .45, .94);--ease-in-out: cubic-bezier(.645, .045, .355, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--stagger-delay: 50ms;--stagger-delay-fast: 30ms}.anim-page-enter{animation:pageSlideIn var(--anim-normal) var(--ease-out) forwards}@keyframes pageSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.anim-page-exit{animation:pageSlideOut var(--anim-normal) var(--ease-out) forwards}@keyframes pageSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}.anim-tab-enter{animation:tabFadeIn .15s var(--ease-out) forwards}@keyframes tabFadeIn{0%{opacity:0}to{opacity:1}}.anim-detail-enter{animation:detailSlideIn var(--anim-normal) var(--ease-out) forwards}@keyframes detailSlideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.anim-detail-exit{animation:detailSlideOut var(--anim-normal) var(--ease-out) forwards}@keyframes detailSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.anim-fade-up{animation:fadeUp var(--anim-slow) var(--ease-out) forwards;opacity:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.anim-stagger-1{animation-delay:calc(var(--stagger-delay) * 1)}.anim-stagger-2{animation-delay:calc(var(--stagger-delay) * 2)}.anim-stagger-3{animation-delay:calc(var(--stagger-delay) * 3)}.anim-stagger-4{animation-delay:calc(var(--stagger-delay) * 4)}.anim-stagger-5{animation-delay:calc(var(--stagger-delay) * 5)}.anim-stagger-6{animation-delay:calc(var(--stagger-delay) * 6)}.anim-stagger-7{animation-delay:calc(var(--stagger-delay) * 7)}.anim-stagger-8{animation-delay:calc(var(--stagger-delay) * 8)}.anim-lift{transition:transform var(--anim-normal) var(--ease-out),box-shadow var(--anim-normal) var(--ease-out)}.anim-lift:hover{box-shadow:var(--shadow-md)}.anim-row-enter{animation:rowFadeIn var(--anim-normal) var(--ease-out) forwards;opacity:0}@keyframes rowFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.anim-row-stagger-1{animation-delay:calc(var(--stagger-delay-fast) * 1)}.anim-row-stagger-2{animation-delay:calc(var(--stagger-delay-fast) * 2)}.anim-row-stagger-3{animation-delay:calc(var(--stagger-delay-fast) * 3)}.anim-row-stagger-4{animation-delay:calc(var(--stagger-delay-fast) * 4)}.anim-row-stagger-5{animation-delay:calc(var(--stagger-delay-fast) * 5)}.anim-row-stagger-6{animation-delay:calc(var(--stagger-delay-fast) * 6)}.anim-row-stagger-7{animation-delay:calc(var(--stagger-delay-fast) * 7)}.anim-row-stagger-8{animation-delay:calc(var(--stagger-delay-fast) * 8)}.anim-row-stagger-9{animation-delay:calc(var(--stagger-delay-fast) * 9)}.anim-row-stagger-10{animation-delay:calc(var(--stagger-delay-fast) * 10)}.anim-item-add{animation:itemSlideDown var(--anim-slow) var(--ease-out) forwards}@keyframes itemSlideDown{0%{opacity:0;transform:translateY(-20px);max-height:0}to{opacity:1;transform:translateY(0);max-height:200px}}.anim-item-remove{animation:itemFadeCollapse var(--anim-slow) var(--ease-out) forwards}@keyframes itemFadeCollapse{0%{opacity:1;transform:scale(1);max-height:200px}to{opacity:0;transform:scale(.95);max-height:0;margin:0;padding:0}}.anim-row-hover{transition:background-color .15s var(--ease-smooth)}.anim-press{transition:transform var(--anim-fast) var(--ease-out)}.anim-press:active{transform:scale(.97)}.anim-pulse-glow{animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{box-shadow:0 4px 12px #0d5c6326}50%{box-shadow:0 4px 20px #0d5c6333}}.anim-shine{position:relative;overflow:hidden}.anim-shine:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--anim-slow) var(--ease-out)}.anim-shine:hover:after{left:100%}.anim-dropdown-enter{animation:dropdownIn var(--anim-normal) var(--ease-out) forwards;transform-origin:top center}@keyframes dropdownIn{0%{opacity:0;transform:scaleY(.95) translateY(-4px)}to{opacity:1;transform:scaleY(1) translateY(0)}}.anim-dropdown-exit{animation:dropdownOut .15s var(--ease-out) forwards;transform-origin:top center}@keyframes dropdownOut{0%{opacity:1;transform:scaleY(1) translateY(0)}to{opacity:0;transform:scaleY(.95) translateY(-4px)}}.anim-nav-indicator{transition:transform var(--anim-normal) var(--ease-out),top var(--anim-normal) var(--ease-out)}.anim-sidebar-collapse{transition:width .25s var(--ease-smooth)}.anim-nav-hover{transition:background-color .15s var(--ease-smooth),color .15s var(--ease-smooth)}.anim-backdrop-enter{animation:backdropFadeIn .15s var(--ease-out) forwards}.anim-backdrop-exit{animation:backdropFadeOut .15s var(--ease-out) forwards}.anim-modal-enter{animation:modalScaleIn var(--anim-normal) var(--ease-out) forwards}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.anim-modal-exit{animation:modalScaleOut var(--anim-normal) var(--ease-out) forwards}@keyframes modalScaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.anim-badge-pop{animation:badgePop var(--anim-slow) var(--ease-bounce) forwards}@keyframes badgePop{0%{opacity:0;transform:scale(0)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.anim-status-flash{animation:statusFlash var(--anim-slower) var(--ease-out)}@keyframes statusFlash{0%{background-color:inherit}30%{background-color:#0d5c6326}to{background-color:inherit}}.anim-bell-wiggle{animation:bellWiggle .5s var(--ease-out);transform-origin:top center}@keyframes bellWiggle{0%,to{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}}.anim-bell-unread{animation:bellUnread 3s ease-in-out infinite}@keyframes bellUnread{0%,90%,to{transform:rotate(0)}92%{transform:rotate(8deg)}94%{transform:rotate(-8deg)}96%{transform:rotate(4deg)}98%{transform:rotate(-4deg)}}.anim-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite linear;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-text.short{width:40%}.skeleton-text.medium{width:70%}.skeleton-text.long{width:100%}.skeleton-avatar{width:40px;height:40px;border-radius:50%}.skeleton-card{height:120px;border-radius:6px}.skeleton-button{height:36px;width:100px;border-radius:8px}.skeleton-stat{height:60px;border-radius:8px}.anim-input-focus{transition:border-color .15s var(--ease-smooth),box-shadow .15s var(--ease-smooth)}.anim-section-expand{animation:sectionExpand var(--anim-slow) var(--ease-out) forwards;overflow:hidden}@keyframes sectionExpand{0%{max-height:0;opacity:0}to{max-height:1000px;opacity:1}}.anim-section-collapse{animation:sectionCollapse var(--anim-slow) var(--ease-out) forwards;overflow:hidden}@keyframes sectionCollapse{0%{max-height:1000px;opacity:1}to{max-height:0;opacity:0}}.anim-success-check{animation:successCheck var(--anim-slower) var(--ease-bounce) forwards}@keyframes successCheck{0%{opacity:0;transform:scale(0) rotate(-45deg)}50%{opacity:1;transform:scale(1.2) rotate(0)}to{opacity:1;transform:scale(1) rotate(0)}}.anim-success-fade{animation:successFade 2s var(--ease-out) forwards}@keyframes successFade{0%,70%{opacity:1}to{opacity:0}}.anim-toggle{transition:background-color var(--anim-normal) var(--ease-smooth)}.anim-toggle-handle{transition:transform var(--anim-normal) var(--ease-bounce)}.anim-counter{display:inline-block;font-variant-numeric:tabular-nums}.no-animation,.no-animation *{animation:none!important;transition:none!important}.anim-instant{transition-duration:0ms!important}.anim-delay-100{animation-delay:.1s}.anim-delay-200{animation-delay:.2s}.anim-delay-300{animation-delay:.3s}.anim-delay-400{animation-delay:.4s}.anim-delay-500{animation-delay:.5s}.anim-fill-forwards{animation-fill-mode:forwards}.anim-gpu{will-change:transform,opacity;transform:translateZ(0)}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--color-bg-page);padding:var(--spacing-6)}.error-boundary-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-10) var(--spacing-8);max-width:440px;text-align:center;box-shadow:var(--shadow-md)}.error-boundary-icon{color:var(--color-danger);margin-bottom:var(--spacing-4)}.error-boundary-card h2{font-size:var(--font-2xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-3)}.error-boundary-card p{font-size:var(--font-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--spacing-6)}.error-boundary-btn{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--font-base);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast)}.error-boundary-btn:hover{background:var(--color-primary-dark)}.skip-to-main{position:absolute;top:-40px;left:0;background:var(--primary-color, var(--color-primary));color:#fff;padding:8px 16px;text-decoration:none;z-index:10000;font-size:14px;border-radius:0 0 4px;transition:top .2s}.skip-to-main:focus{top:0}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:var(--viewport-height);gap:var(--spacing-4);color:var(--color-text-muted);font-size:var(--font-base)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.not-found-container{display:flex;justify-content:center;align-items:center;min-height:var(--viewport-height);background:var(--color-bg-page);padding:var(--spacing-6)}.not-found-content{text-align:center;max-width:400px}.not-found-icon{color:var(--color-primary);margin-bottom:var(--spacing-6)}.not-found-title{font-size:var(--font-2xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-3)}.not-found-message{font-size:var(--font-base);color:var(--color-text-secondary);margin-bottom:var(--spacing-6);line-height:var(--leading-relaxed)}.not-found-link{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);background:var(--color-primary);color:var(--color-text-inverse);text-decoration:none;border-radius:var(--radius-md);font-weight:var(--font-medium);font-size:var(--font-base);transition:background var(--transition-fast)}.not-found-link:hover{background:var(--color-primary-dark)}.toast-base{border-radius:var(--radius-md)!important;padding:var(--spacing-3) var(--spacing-4)!important;font-size:var(--font-base)!important;font-weight:var(--font-medium)!important;box-shadow:var(--shadow-lg)!important}.toast-success{background:var(--color-success-light)!important;color:var(--color-success-dark)!important;border:1px solid rgba(16,185,129,.2)!important}.toast-success [data-icon]{color:var(--color-success)!important}.toast-error{background:var(--color-danger-light)!important;color:var(--color-danger-dark)!important;border:1px solid rgba(220,38,38,.2)!important}.toast-error [data-icon]{color:var(--color-danger)!important}.login-container{display:flex;min-height:var(--viewport-height);background:var(--color-bg-page)}.login-branding{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d5c63,#094249);padding:var(--spacing-10)}.login-branding-content{max-width:400px;color:#fff}.login-branding-logo{width:72px;margin-bottom:var(--spacing-4);filter:brightness(0) invert(1)}.login-branding-title{font-size:2rem;font-weight:var(--font-bold);margin-bottom:var(--spacing-2);color:#fff}.login-branding-tagline{font-size:var(--font-lg);color:#ffffffd9;line-height:var(--leading-relaxed);margin-bottom:var(--spacing-8)}.login-features{display:flex;flex-direction:column;gap:var(--spacing-4)}.login-feature{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-base);color:#ffffffe6}.login-feature svg{flex-shrink:0;opacity:.9}.login-form-side{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-8);padding-left:max(var(--spacing-8),env(safe-area-inset-left));padding-right:max(var(--spacing-8),env(safe-area-inset-right))}.login-box{width:100%;max-width:400px}.login-box-title{font-size:var(--font-2xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-6)}.password-input-wrapper{position:relative}.password-input-wrapper input{width:100%;padding:var(--spacing-3);padding-right:42px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-base);background:var(--color-bg-card);color:var(--color-text-primary);transition:border-color .15s ease,box-shadow .15s ease}.password-input-wrapper input:hover{border-color:var(--color-border-hover)}.password-input-wrapper input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.password-toggle-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px;display:flex;align-items:center;border-radius:var(--radius-sm)}.password-toggle-btn:hover{color:var(--color-text-secondary)}.login-hipaa-badge{display:flex;align-items:center;justify-content:center;gap:var(--spacing-1);margin-top:var(--spacing-6);font-size:var(--font-xs);color:var(--color-text-muted)}@media(max-width:768px){.login-branding{display:none}.login-form-side{padding:var(--spacing-6)}.login-box-title{text-align:center}}@media(max-width:480px){.login-button{padding:14px;font-size:.9rem}}.form-group{margin-bottom:var(--spacing-5);text-align:left}.form-group label{display:block;margin-bottom:var(--spacing-2);font-weight:var(--font-medium);font-size:var(--font-sm);color:var(--color-text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-base);background:var(--color-bg-card);color:var(--color-text-primary);transition:border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--color-border-hover)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.form-group input.success,.form-group select.success,.form-group textarea.success{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-placeholder)}input[type=date]{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-md);background:var(--color-bg-card);color:var(--color-text-primary);transition:all var(--transition-base);box-shadow:var(--shadow-xs);cursor:pointer}input[type=date]:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}input[type=date]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;padding:var(--spacing-1);border-radius:var(--radius-xs);transition:background var(--transition-fast)}input[type=date]::-webkit-calendar-picker-indicator:hover{background:var(--color-bg-active)}input[type=time]{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-md);background:var(--color-bg-card);color:var(--color-text-primary);transition:all var(--transition-base);box-shadow:var(--shadow-xs);cursor:pointer}input[type=time]:hover{border-color:#cbd5e0;box-shadow:0 2px 6px #00000014}input[type=time]:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce26}select{width:100%;padding:var(--spacing-3);padding-right:var(--spacing-10);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-md);background:var(--color-bg-card);color:var(--color-text-primary);transition:all var(--transition-base);box-shadow:var(--shadow-xs);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23718096' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}select:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}select:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel]{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-md);background:var(--color-bg-card);color:var(--color-text-primary);transition:all var(--transition-base);box-shadow:var(--shadow-xs)}input[type=text]:hover,input[type=email]:hover,input[type=password]:hover,input[type=number]:hover,input[type=tel]:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=tel]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}input[type=text]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=number]::placeholder,input[type=tel]::placeholder{color:var(--color-text-placeholder)}textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-md);background:var(--color-bg-card);color:var(--color-text-primary);transition:all var(--transition-base);box-shadow:0 1px 3px #0000000a;resize:vertical;min-height:100px;font-family:inherit}textarea:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}textarea::placeholder{color:var(--color-text-placeholder)}label{display:block;margin-bottom:var(--spacing-2);font-weight:var(--font-medium);color:var(--color-text-secondary);font-size:var(--font-base)}.form-section{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-5);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.form-section h3,.form-section-title{font-size:var(--font-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-5) 0;padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--spacing-3)}.form-section h3 svg,.form-section-title svg{color:var(--color-primary)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4);margin-bottom:var(--spacing-4)}.btn-primary{padding:var(--spacing-2) var(--spacing-5);background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-sm);font-size:var(--font-base);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast);display:inline-flex;align-items:center;gap:var(--spacing-2)}.btn-primary:hover,.btn-primary:active{background:var(--color-primary-dark)}.btn-primary:disabled{background:var(--color-text-placeholder);cursor:not-allowed}.btn-secondary{padding:var(--spacing-2) var(--spacing-5);background:var(--color-bg-card);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-base);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast);display:inline-flex;align-items:center;gap:var(--spacing-2)}.btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.btn-success{padding:var(--spacing-2) var(--spacing-5);background:var(--color-success);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-base);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast);display:inline-flex;align-items:center;gap:var(--spacing-2)}.btn-success:hover{background:var(--color-success-dark)}input:disabled,select:disabled,textarea:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed;border-color:#e2e8f0}input::placeholder,textarea::placeholder{color:#a0aec0}.form-inline{display:flex;align-items:center;gap:12px}label.required:after{content:" *";color:#e53e3e}input.error,select.error,textarea.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e26}.form-help{font-size:.8rem;color:#718096;margin-top:6px}.form-error{font-size:.8rem;color:#e53e3e;margin-top:6px}.login-button{width:100%;padding:12px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-md);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast)}.login-button:hover{background:var(--color-primary-dark)}.login-button:disabled{background:#cbd5e1;cursor:not-allowed}.error-message{background:var(--color-danger-light);color:var(--color-danger-dark);padding:10px 12px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:var(--font-sm);border:1px solid rgba(220,38,38,.15)}.info-message{background:var(--color-info-light);color:var(--color-info-dark);padding:10px 12px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:var(--font-sm);border:1px solid rgba(13,92,99,.15)}.logout-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding:10px 20px;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-base);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast);width:100%}.logout-link:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.forgot-password{margin-top:20px;color:#888;font-size:.85rem}.dashboard{display:flex;min-height:var(--viewport-height)}.sidebar{width:var(--sidebar-width);background:#1e293b;color:#fff;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:var(--viewport-height);overflow:hidden;transition:width .15s ease;z-index:100}.sidebar-scroll-area{flex:1;height:0;overflow-x:hidden;overflow-y:auto}.sidebar-scroll-area::-webkit-scrollbar{width:6px}.sidebar-scroll-area::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-scroll-area::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-scroll-area::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-toggle{width:24px;height:24px;border-radius:var(--radius-sm);background:#ffffff1a;border:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast);flex-shrink:0;position:absolute;top:10px;right:10px}.sidebar-toggle:hover{background:#ffffff26;color:#fff}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-header{padding:40px 10px 15px;display:flex;flex-direction:column;justify-content:center;align-items:center}.sidebar.collapsed .sidebar-toggle{position:absolute;top:10px;left:50%;right:auto;transform:translate(-50%)}.sidebar.collapsed .sidebar-logo{width:50px;margin-bottom:0}.sidebar.collapsed .sidebar-nav{padding:10px}.sidebar.collapsed .nav-button{justify-content:center;padding:12px}.sidebar.collapsed .nav-button .badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;font-size:.65rem;padding:0;display:flex;align-items:center;justify-content:center}.sidebar.collapsed .sidebar-footer{padding:10px}.sidebar.collapsed .sidebar-button{justify-content:center;padding:12px}.sidebar.collapsed .sidebar-button .unread-badge{position:absolute;top:2px;right:2px;transform:none}.dashboard.sidebar-collapsed .main-content{margin-left:70px}.sidebar-header{padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:flex-start;gap:12px;position:relative;flex-shrink:0}.sidebar-brand{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;padding-bottom:12px}.sidebar-logo{width:150px;margin-bottom:14px}.sidebar .user-info{display:flex;flex-direction:column;align-items:center;gap:4px}.sidebar .user-info .user-name{font-size:.95rem;font-weight:600;color:#fff}.sidebar .user-info .user-role{font-size:.7rem;color:#9ca3af;background:#ffffff0f;padding:3px 8px;border-radius:var(--radius-xs);text-transform:capitalize}.sidebar-nav{padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-button{width:100%;padding:10px 12px;background:transparent;color:#d1d5db;border:none;border-radius:var(--radius-sm);text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:var(--font-base);margin-bottom:2px;transition:background var(--transition-fast),color var(--transition-fast);position:relative}.nav-button:hover{background:#ffffff0f;color:#f9fafb}.nav-button:active{background:#ffffff1a}.nav-button.active{background:#0d5c6326;color:#2ec4b6;border-left:3px solid #0D5C63}.sidebar-section{padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-section h3{font-size:.85rem;color:#aaa;margin-bottom:10px;text-transform:uppercase}.search-highlight{background:#1e90ff4d;color:#fff;padding:0 2px;border-radius:2px}.client-list{display:flex;flex-direction:column;gap:5px}.client-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:6px 12px;background:#ffffff0a;color:#d1d5db;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-sm);transition:background var(--transition-fast)}.client-button:hover{background:#ffffff14}.client-button.active{background:#0d5c6326;color:#2ec4b6}.warning-icon{color:#fc0}.client-button .client-name-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-status-indicators{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.status-dot{display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.status-dot.returned{color:#ef4444}.status-dot.pending{color:#f59e0b;min-width:14px}.status-dot.approved{color:#10b981}.no-clients{color:#888;font-size:.85rem;font-style:italic}.client-select{width:100%;padding:10px;border-radius:6px;border:1px solid #444;background:#2a2a4a;color:#fff;font-size:.9rem}.collapsible .section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:0}.collapsible .section-header h3{margin-bottom:0}.client-details,.units-details{margin-top:1px}.client-details p,.units-details p{font-size:.85rem;margin-bottom:3px;color:#ccc}.client-details p strong,.units-details p strong{color:#fff}.units-details .warning{color:#ff6b6b}.warning-banner{background:#ff6b6b;color:#fff;padding:8px;border-radius:6px;font-size:.8rem;margin-bottom:10px;text-align:center}.sidebar-footer{flex-shrink:0;padding:12px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-button{width:100%;padding:8px;background:transparent;color:#d1d5db;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:var(--font-sm);margin-bottom:6px;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-button:hover{background:#ffffff0f;color:#f9fafb}.sidebar-button:active{background:#ffffff1a}.sidebar-button.logout{border-color:#ef44444d;color:#f87171}.sidebar-button.logout:hover{background:#ef44441a;color:#fca5a5}.sidebar-button.active{background:#0d5c6326;border-color:#0d5c634d;color:#2ec4b6}.sidebar-button{position:relative}.sidebar-button .unread-badge{position:absolute;right:10px;top:50%;transform:translateY(-50%);min-width:18px;height:18px;padding:0 5px;background:#ef4444;border-radius:9px;color:#fff;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center}.main-content{flex:1;margin-left:var(--sidebar-width);padding:24px 32px;background:var(--color-bg-page);min-height:var(--viewport-height);display:flex;flex-direction:column;align-items:center;transition:margin-left .15s ease}.main-content>*{width:100%;max-width:1000px}.main-content h1{margin-bottom:25px;color:#333}.page-header{margin-bottom:24px}.page-header h1{display:flex;align-items:center;gap:10px;font-size:var(--font-2xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 4px}.page-header h1 svg{color:var(--color-primary)}.page-header p{margin:0;font-size:.9rem;color:#64748b}.isp-placeholder{display:flex;align-items:center;justify-content:center;min-height:400px;background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:40px}.isp-placeholder-content{text-align:center;max-width:500px}.isp-placeholder-content svg{color:var(--color-primary);margin-bottom:20px}.isp-placeholder-content h2{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 12px}.isp-placeholder-content p{color:#64748b;margin:0 0 8px}.isp-placeholder-note{font-size:.9rem;color:#94a3b8;margin-top:16px}.isp-placeholder-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.isp-placeholder-actions .btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.isp-placeholder-actions .btn-secondary:hover{background:#e2e8f0}.isp-placeholder-actions .btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-base);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast)}.isp-placeholder-actions .btn-primary:hover{background:var(--color-primary-dark)}.main-content h2{margin:30px 0 15px;color:#555;font-size:1.2rem}.admin-welcome{margin-bottom:28px}.admin-welcome .welcome-content{display:flex;align-items:center;gap:16px}.admin-welcome .welcome-avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;font-weight:700;text-transform:uppercase;flex-shrink:0;box-shadow:0 4px 12px #00000026}.admin-welcome .welcome-text h1{margin:0;font-size:1.75rem;font-weight:700;color:#0f172a}.admin-welcome .welcome-meta{display:flex;align-items:center;gap:12px;margin-top:8px;flex-wrap:wrap}.admin-welcome .welcome-date{font-size:.95rem;color:#64748b}.admin-welcome .welcome-text p{margin:6px 0 0;font-size:.95rem;color:#64748b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:var(--color-bg-card);padding:16px 20px;border-radius:var(--radius-md);border:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.stat-card h3{font-size:1.75rem;color:var(--color-primary);margin:0 0 4px;line-height:1;display:block;width:100%}.stat-card p{color:#888;font-size:.9rem;margin:0;display:block;width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-base);font-weight:var(--font-medium);line-height:1;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:background var(--transition-fast);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-xs{padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-xs)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-sm)}.btn-lg{padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-md)}.btn.primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn.primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn.primary:active:not(:disabled){background:var(--color-primary-dark)}.btn.secondary{background:var(--color-bg-card);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn.secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-hover)}.btn.success{background:var(--color-success);color:var(--color-text-inverse)}.btn.success:hover:not(:disabled){background:var(--color-success-dark)}.btn.danger{background:var(--color-danger);color:var(--color-text-inverse)}.btn.danger:hover:not(:disabled){background:var(--color-danger-dark)}.btn.warning{background:var(--color-warning);color:var(--color-text-inverse)}.btn.warning:hover:not(:disabled){background:var(--color-warning-dark)}.btn.ghost{background:transparent;color:var(--color-text-muted)}.btn.ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn.outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn.outline:hover:not(:disabled){background:var(--color-primary-light)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:var(--spacing-2);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);color:var(--color-text-muted)}.btn-icon:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-icon.danger{color:var(--color-danger)}.btn-icon.danger:hover{background:var(--color-danger-light);color:#c00}.users-list,.clients-list,.conversations-list{display:flex;flex-direction:column;gap:10px;margin-top:20px}.user-item,.client-item,.conversation-item{background:#fff;padding:10px 16px;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:auto}.user-info,.client-header{display:flex;flex-direction:column}.user-info span,.client-meta span{font-size:.85rem;color:#888}.user-actions,.client-actions{display:flex;gap:8px;align-items:center}.user-card{background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border);overflow:hidden;transition:border-color var(--transition-fast)}.user-card:hover,.user-card.expanded{border-color:var(--color-border-hover)}.user-card-header{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:15px}.user-card-header:hover{background:#f8fafc}.user-title{display:flex;align-items:center;gap:10px;flex:1}.user-title strong{font-size:1rem;color:#2d3748}.role-badge{padding:3px 8px;border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.5px}.role-badge.admin{background:#4ade80;color:#052e16}.role-badge.staff{background:#dbeafe;color:#1e40af}.role-badge.clinician{background:#fee2e2;color:#b91c1c}.user-summary{display:flex;gap:20px;color:#718096;font-size:.85rem}.user-card-content{padding:0 20px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}.user-details{padding:15px 0}.user-details p{margin:6px 0;font-size:.9rem;color:#4a5568}.user-details p strong{color:#2d3748;margin-right:8px}.assigned-clients{padding:12px 0;border-top:1px solid #e2e8f0}.assigned-clients strong{font-size:.85rem;color:#4a5568;display:block;margin-bottom:8px}.assigned-clients ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.assigned-clients li{background:#fff;padding:4px 10px;border-radius:6px;font-size:.8rem;color:#4a5568;border:1px solid #e2e8f0;cursor:pointer;transition:all .15s ease}.assigned-clients li:hover{background:#ebf8ff;border-color:#3182ce;color:#3182ce}.user-card-content .user-actions{padding-top:15px;border-top:1px solid #e2e8f0;margin-top:10px}.btn-sm{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease}.btn-sm.secondary{background:#edf2f7;color:#4a5568}.btn-sm.secondary:hover{background:#e2e8f0}.btn-sm.danger{background:#fed7d7;color:#c53030}.btn-sm.danger:hover{background:#feb2b2}.conv-header{display:flex;justify-content:space-between;flex:1}.conv-date{font-size:.8rem;color:#888}.conv-meta{font-size:.8rem;color:#888;margin-right:20px}.search-input{width:100%;max-width:400px;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:1rem;margin:15px 0}.modal-overlay{position:fixed;top:0;left:0;width:var(--viewport-width);height:var(--viewport-height);margin:0;background:var(--color-bg-overlay, rgba(15, 23, 42, .7));z-index:10000;overflow-y:auto;display:flex;justify-content:center;align-items:center;padding:var(--spacing-5);box-sizing:border-box;animation:backdropFadeIn .15s cubic-bezier(.25,.46,.45,.94) forwards}.dashboard .modal-overlay{padding-left:calc(var(--sidebar-width, 280px) + var(--spacing-5))}.dashboard.sidebar-collapsed .modal-overlay{padding-left:calc(var(--sidebar-collapsed-width, 70px) + var(--spacing-5))}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay.exiting{animation:backdropFadeOut .15s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes backdropFadeOut{0%{opacity:1}to{opacity:0}}.modal{position:relative;background:var(--color-bg-card);border-radius:var(--radius-lg);width:calc(100% - 40px);max-width:500px;max-height:calc(var(--viewport-height) - 40px);overflow-y:auto;overflow-x:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--color-border);animation:modalSlideIn .2s cubic-bezier(.25,.46,.45,.94) forwards;display:flex;flex-direction:column}.modal.exiting{animation:modalSlideOut .2s cubic-bezier(.25,.46,.45,.94) forwards}.modal-scroll-container{max-height:calc(var(--viewport-height) - 120px);overflow-y:auto;padding-bottom:80px}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modalSlideOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal{animation:none}}.modal.large{max-width:720px}.modal.xlarge{max-width:900px;width:95%}.modal.sm{max-width:420px}.modal.md{max-width:500px}.modal.lg{max-width:720px}.modal.xl{max-width:900px;width:95%}.modal.confirm-modal{max-width:420px;text-align:center;padding:var(--spacing-8) var(--spacing-8) var(--spacing-6)}.modal.info-modal{max-width:480px;text-align:center;padding:var(--spacing-8) var(--spacing-10)}.info-modal-icon{font-size:2.5rem;margin-bottom:var(--spacing-4)}.info-modal-title{font-size:var(--font-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-4) 0}.info-modal-content{margin-bottom:var(--spacing-6)}.info-modal-content p{color:var(--color-text-secondary);font-size:var(--font-md);line-height:var(--leading-normal);margin:0}.info-modal-close{min-width:120px;padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-md)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-bg-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:1100;flex-shrink:0}.modal-header h3{margin:0;font-size:var(--font-lg);font-weight:var(--font-semibold);color:var(--color-text-primary)}.modal-header button{background:var(--color-bg-hover);border:none;cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-md);color:var(--color-text-muted);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.modal-header button:hover{background:var(--color-bg-active);color:var(--color-text-secondary)}.modal-header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.modal-esc-hint{font-size:var(--font-xs);color:var(--color-text-muted);opacity:.7}.modal-esc-hint kbd{padding:2px 6px;background:var(--color-bg-hover);border:1px solid var(--color-border);border-radius:var(--radius-xs);font-family:inherit;font-size:var(--font-xs)}.modal-overlay-nested{z-index:var(--z-modal-nested)}@media(max-width:480px){.modal-esc-hint{display:none}}.modal-body,.modal>form,.modal>div:not(.modal-header):not(.modal-footer){padding:var(--spacing-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--color-border);background:var(--color-bg-page);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.modal form{display:flex;flex-direction:column;gap:0}.modal .form-section{background:var(--color-bg-page);border-radius:var(--radius-lg);padding:var(--spacing-5);margin-bottom:var(--spacing-5);border:1px solid var(--color-border)}.modal .form-section:last-of-type{margin-bottom:var(--spacing-6)}.modal .form-section h4{font-size:.95rem;font-weight:600;color:#2d3748;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.modal .subsection{margin-top:16px;padding-top:16px;border-top:1px dashed #e2e8f0}.modal .subsection:first-child{margin-top:0;padding-top:0;border-top:none}.modal .subsection h5{font-size:.85rem;font-weight:600;color:#4a5568;margin:0 0 12px}.modal .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.modal .form-grid .full-width{grid-column:1 / -1}.modal .form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;text-align:left}.modal .form-grid .form-group{margin-bottom:0}.modal .form-group label{font-size:.85rem;font-weight:500;color:#4a5568;margin-bottom:0}.modal .form-group:last-of-type{margin-bottom:0}.modal input[type=text],.modal input[type=email],.modal input[type=password],.modal input[type=number],.modal input[type=tel],.modal input[type=date],.modal input[type=time],.modal select,.modal textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;background:#fff;color:#2d3748;transition:all .2s ease}.modal input:hover,.modal select:hover,.modal textarea:hover{border-color:#cbd5e0}.modal input:focus,.modal select:focus,.modal textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.modal input:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed}.modal textarea{min-height:80px;resize:vertical}.medications-form-list{margin-top:16px}.medication-form-entry{padding:16px;margin-bottom:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.medication-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;font-size:.9rem;color:#2d3748}.medication-form-entry .form-grid{gap:12px}.add-medication-btn{display:inline-flex;align-items:center;gap:6px;margin-top:8px}.modal .form-group label .required{color:#e53e3e;margin-left:2px}.modal select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23718096' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:36px}.modal form>button[type=submit],.modal>button.btn.primary{width:100%;padding:12px 20px;margin-top:8px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.modal form>button[type=submit]:hover,.modal>button.btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3182ce4d}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.temp-password-instruction{color:#4a5568;font-size:.95rem;margin-bottom:16px;text-align:center}.temp-password-container{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0}.temp-password{background:#f7fafc;border:1px solid #e2e8f0;padding:14px 24px;border-radius:8px;font-size:1.4rem;font-family:SF Mono,Monaco,Courier New,monospace;color:#1a202c;font-weight:600;letter-spacing:2px;-webkit-user-select:all;user-select:all}.copy-password-btn{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.copy-password-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.temp-password-note{font-size:.85rem;color:#718096;text-align:center;margin-top:8px}.small{font-size:.85rem;color:#718096}.chat-container{background:#fff;border-radius:6px;box-shadow:0 2px 10px #00000014;height:calc(var(--viewport-height) - 180px);display:flex;flex-direction:column}.messages{flex:1;overflow-y:auto;padding:20px}.message{margin-bottom:20px;max-width:85%}.message.user{margin-left:auto}.message.assistant{margin-right:auto}.message-sender{font-size:.8rem;font-weight:600;color:var(--color-primary);margin-bottom:5px}.message-content{padding:15px;border-radius:6px;line-height:1.5}.message.user .message-content{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.message.assistant .message-content{background:#f0f0f0;color:#333;border-bottom-left-radius:4px}.message-content pre{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;margin:0}.message-content.loading{color:#888;font-style:italic}.message-timestamp{font-size:.75rem;color:#888;margin-top:5px}.chat-input-form{display:flex;gap:10px;padding:20px;border-top:1px solid #eee;align-items:flex-end}.chat-input-form input{flex:1;padding:14px;border:1px solid #ddd;border-radius:8px;font-size:1rem}.chat-input-form input:focus{outline:none;border-color:var(--color-primary)}.chat-input-form button{padding:14px 28px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;height:48px;flex-shrink:0;align-self:flex-end}.chat-input-form button:hover{background:#1873cc}.chat-input-form button:disabled{background:#ccc;cursor:not-allowed}.no-client-selected{display:flex;justify-content:center;align-items:center;height:calc(var(--viewport-height) - 180px);background:#fff;border-radius:6px;color:#888;font-size:1.1rem}@media(max-width:768px){.sidebar{width:100%;position:relative;height:auto}.sidebar-scroll-area{max-height:50vh}.main-content{margin-left:0}.dashboard .modal-overlay,.dashboard.sidebar-collapsed .modal-overlay{padding-left:var(--spacing-5)}.dashboard{flex-direction:column}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.clients-list{display:flex;flex-direction:column;gap:0;width:100%}.client-group{margin-bottom:24px;width:100%}.client-group-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#f0f2f5;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:12px;font-weight:600;color:#334155;font-size:.95rem}.client-group-header svg{color:#64748b}.client-group-count{margin-left:auto;font-size:.8rem;font-weight:500;color:#64748b;background:#fff;padding:4px 10px;border-radius:6px;border:1px solid #e2e8f0}.client-group-list{padding-left:8px;border-left:2px solid #e2e8f0;margin-left:8px;display:flex;flex-direction:column;align-items:stretch}.client-card{background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000000f;margin-bottom:8px;overflow:hidden;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:stretch;width:100%}.client-card:hover{box-shadow:0 2px 8px #0000001a;background:#fafafa}.client-card.highlight-flash{animation:clientHighlightFlash 2s ease-out}@keyframes clientHighlightFlash{0%{box-shadow:0 0 0 3px #5b6cf280;background:#5b6cf21a}to{box-shadow:0 1px 4px #0000000f;background:#fff}}.client-card-header{padding:8px 14px;display:flex;align-items:center;gap:12px;justify-content:flex-start;width:100%;box-sizing:border-box}.client-title{display:flex;align-items:center;gap:8px;min-width:150px;max-width:280px;flex-shrink:0;text-align:left}.client-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-id{font-size:.75rem;color:#718096;font-weight:500;background:#edf2f7;padding:2px 6px;border-radius:4px}.client-summary{display:flex;gap:20px;color:#666;font-size:.9rem;flex:1 1 auto;min-width:0;text-align:left;overflow:hidden}.client-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}.client-card-details{padding:20px;background:#f9f9f9;border-top:1px solid #eee;width:100%;text-align:left}.warnings-section{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:12px;margin-bottom:15px}.warning-item{display:flex;align-items:center;gap:6px;color:#856404;font-size:.9rem;margin-bottom:5px}.warning-item svg{color:#d69e2e;flex-shrink:0}.warning-item:last-child{margin-bottom:0}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail-section{background:#fff;padding:15px;border-radius:8px}.detail-section h4{margin-bottom:12px;color:#333;font-size:.95rem;border-bottom:1px solid #eee;padding-bottom:8px}.detail-section p{margin-bottom:8px;font-size:.9rem;color:#555;text-align:left}.detail-section p strong{color:#333}.detail-section p.warning{color:#dc3545}.client-card-header .client-actions{display:flex;gap:8px;align-items:center}@media(max-width:768px){.details-grid{grid-template-columns:1fr}.client-card-header{flex-wrap:wrap}.client-summary{flex-direction:column;gap:5px}.client-summary span,.client-title{max-width:200px}}.btn-icon.chat:hover{background:#e6f3ff;color:var(--color-primary)}.user-actions{display:flex;gap:12px;align-items:flex-start}.client-actions,.action-buttons-row{display:flex;gap:8px;align-items:flex-start}.client-actions-row,.conv-actions-row{display:flex;align-items:center;gap:12px}.user-info-text{display:flex;flex-direction:column}.client-actions-bar{display:inline-flex;flex-direction:column;gap:12px;margin-bottom:15px}.client-actions-bar .actions-row{display:flex;gap:10px}.client-actions-bar .search-input{width:100%;max-width:100%;margin:0;box-sizing:border-box}.bulk-upload-section{background:#fff;border-radius:6px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.bulk-upload-header{display:flex;align-items:center;gap:8px;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #eee}.bulk-upload-header h3{margin:0;display:flex;align-items:center;gap:8px}.btn.outline{background:#fff;border:1px solid #ddd;color:#333;padding:8px 16px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:.9rem;transition:all .2s}.btn.outline:hover{border-color:var(--color-primary);color:var(--color-primary)}.file-drop-zone{border:2px dashed #ddd;border-radius:8px;padding:30px;text-align:center;position:relative;transition:all .2s}.file-drop-zone:hover{border-color:var(--color-primary);background:#f8fafc}.file-drop-zone input[type=file]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-drop-zone svg{color:#aaa;margin-bottom:10px}.file-drop-zone span{display:block;color:#666}.bulk-preview{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.upload-btn{margin-top:15px}.message-sender.ai{color:#28a745;font-size:.8rem;font-weight:600;margin-bottom:5px}.client-actions-inline{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.client-actions-inline .btn-icon{margin:0}.sidebar-button.go-to-chat{margin-top:10px;background:var(--color-primary);border-color:var(--color-primary);color:#fff}.sidebar-button.go-to-chat:hover{background:#1873cc;border-color:#1873cc}.confirm-modal{text-align:center;max-width:420px;padding:var(--spacing-8) var(--spacing-8) var(--spacing-6)}.confirm-icon{width:56px;height:56px;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-4);font-size:1.5rem;background:#f973161a;color:var(--color-warning)}.confirm-icon.confirm-icon--danger{background:#dc26261a;color:var(--color-danger)}.confirm-modal h3{font-size:var(--font-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-2) 0}.confirm-modal p{color:var(--color-text-secondary);font-size:var(--font-base);margin:0 0 var(--spacing-1) 0;line-height:var(--leading-normal)}.confirm-submessage{font-size:var(--font-sm)!important;color:var(--color-text-muted)!important}.discard-modal{display:flex;flex-direction:column;align-items:center;text-align:center}.discard-modal h3{margin-bottom:var(--spacing-2)}.discard-modal p{margin-bottom:0}.confirm-buttons{display:flex;gap:var(--spacing-3);justify-content:center;margin-top:var(--spacing-6);width:100%}.confirm-buttons .btn{flex:1;min-width:0;padding:var(--spacing-3) var(--spacing-5);border-radius:var(--radius-md);font-weight:var(--font-medium);font-size:var(--font-base);cursor:pointer;transition:all var(--transition-base);display:inline-flex;justify-content:center;align-items:center;text-align:center}.confirm-buttons .btn.secondary{background:var(--color-bg-card);color:var(--color-text-secondary);border:1px solid var(--color-border)}.confirm-buttons .btn.secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.confirm-buttons .btn.danger{background:var(--color-danger);color:var(--color-text-inverse);border:none}.confirm-buttons .btn.danger:hover{background:var(--color-danger-dark, #b91c1c);transform:translateY(-1px);box-shadow:0 4px 12px #dc262659}.confirm-buttons .btn.primary{background:var(--color-primary);color:var(--color-text-inverse);border:none;box-shadow:0 2px 8px #5b6cf24d}.confirm-buttons .btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5b6cf266}.confirm-buttons .btn.warning{background:var(--color-warning);color:var(--color-text-inverse);border:none}.confirm-buttons .btn.warning:hover{filter:brightness(.9);transform:translateY(-1px);box-shadow:0 4px 12px #f9731659}.unapprove-modal-content{padding:var(--spacing-2) var(--spacing-4) var(--spacing-4)}.unapprove-modal-content p{margin-bottom:var(--spacing-4);color:var(--color-text-secondary);font-size:var(--font-base);line-height:var(--leading-normal)}.unapprove-modal-content textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-base);resize:vertical;min-height:100px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.unapprove-modal-content textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.unapprove-modal-buttons{display:flex;gap:var(--spacing-3);justify-content:flex-end;margin-top:var(--spacing-5)}.unapprove-modal-buttons .btn{min-width:120px;padding:var(--spacing-3) var(--spacing-5);border-radius:var(--radius-md);font-weight:var(--font-medium);font-size:var(--font-base);cursor:pointer;transition:all var(--transition-base)}.section-header h3,.client-button{display:flex;align-items:center;gap:8px}.warning-banner{display:flex;align-items:center;gap:8px;background:#ff6b6b;color:#fff;padding:8px 12px;border-radius:6px;font-size:.85rem;margin-bottom:10px}.sidebar-section h3{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#aaa;margin-bottom:10px;text-transform:uppercase}.inline-warning{margin-left:6px;vertical-align:middle;color:#fc0}.sidebar-section h3{display:flex;align-items:center;gap:8px}.load-more-btn{display:block;margin:10px auto 20px;padding:8px 16px;background:#f0f0f0;border:1px solid #ddd;border-radius:8px;color:#666;font-size:.85rem;cursor:pointer;transition:all .2s}.load-more-btn:hover:not(:disabled){background:#e0e0e0;border-color:#ccc}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.est-hours{font-size:.75rem;color:#888;font-weight:400}.warning .est-hours{color:#d97706}.est-hours-full{font-size:.85rem;color:#666;font-weight:400;font-style:italic}.warning .est-hours-full{color:#d97706}.chat-input-form textarea{flex:1;width:100%;padding:14px;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit;resize:none;min-height:48px;max-height:200px;overflow-y:auto;line-height:1.5;box-sizing:border-box}.chat-input-form textarea:focus{outline:none;border-color:var(--color-primary)}.message-content{line-height:1.6}.message-content>div{margin-bottom:.5em}.message-content>div:empty{margin-bottom:1em}.message-content>div:last-child{margin-bottom:0}.message.assistant .message-content>div:has(strong:first-child){margin-top:1em}.message.assistant .message-content hr{border:none;border-top:1px solid #e0e0e0;margin:1em 0}.no-pending-banner{display:flex;align-items:center;gap:10px;background:#d4edda;color:#155724;padding:15px 20px;border-radius:8px;margin-bottom:20px}.btn-icon.success{color:#28a745}.btn-icon.success:hover{background:#d4edda}.btn-icon.warning{color:#ffc107}.btn-icon.warning:hover{background:#fff3cd}.edit-note-form{max-height:60vh;overflow-y:auto;padding-right:10px}.edit-note-form .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:15px}.edit-note-form .form-group{margin-bottom:15px}.edit-note-form .form-group label{display:block;margin-bottom:6px;font-weight:500;color:#555}.edit-note-form .form-group input,.edit-note-form .form-group select,.edit-note-form .form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:.9rem}.edit-note-form .form-group textarea{resize:vertical;font-family:inherit}.modal .form-group .custom-datepicker-wrapper,.modal .form-group .custom-select,.form-grid .form-group .custom-datepicker-wrapper,.form-grid .form-group .custom-select,.edit-note-form .form-group .custom-datepicker-wrapper,.edit-note-form .form-group .custom-select{width:100%}.modal .form-group .custom-datepicker-input,.form-grid .form-group .custom-datepicker-input,.edit-note-form .form-group .custom-datepicker-input,.modal .form-group .custom-select .custom-select__control,.modal .form-group .custom-select .custom-select-trigger{min-height:44px;height:44px;box-sizing:border-box}.modal .form-row .form-group{min-width:0}.custom-select.compact-select .custom-select__control{min-height:38px;padding:0 4px}.custom-select.compact-select .custom-select__value-container{padding:0 8px}.custom-select.compact-select .custom-select__indicator{padding:6px}.assign-field{display:flex;flex-direction:row;align-items:center;gap:6px}.assign-label{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.client-actions-inline .custom-select.assign-select{min-width:120px;max-width:140px}.client-actions-inline .custom-select.assign-select .custom-select-trigger{padding:6px 10px;min-height:32px;border-radius:6px;font-size:.8rem;background:#f8fafc;border:1px solid #e2e8f0}.client-actions-inline .custom-select.assign-select .custom-select-trigger:hover{background:#f1f5f9;border-color:#cbd5e1}.client-actions-inline .custom-select.assign-select.open .custom-select-trigger{border-color:var(--color-primary)}.client-actions-inline .custom-select.assign-select .custom-select-trigger .chevron{width:14px;height:14px}.client-actions-inline .custom-select.assign-select .custom-select-dropdown{min-width:120px;max-width:140px}.client-card:has(.custom-select.open){position:relative;z-index:100}.client-actions-inline .custom-select .custom-select-dropdown{z-index:1001}.client-actions-inline .custom-select.assign-select .custom-select__control{min-height:32px;padding:0;border-radius:6px;font-size:.8rem;border:none;background:#f7fafc;box-shadow:none}.client-actions-inline .custom-select.assign-select .custom-select__control:hover{background:#edf2f7}.client-actions-inline .custom-select.assign-select .custom-select__value-container{padding:0 8px}.client-actions-inline .custom-select.assign-select .custom-select__single-value{font-size:.8rem;color:#4a5568}.client-actions-inline .custom-select.assign-select .custom-select__placeholder{font-size:.8rem}.client-actions-inline .custom-select.assign-select .custom-select__indicator{padding:4px}.client-actions-inline .custom-select.assign-select .custom-select__dropdown-indicator{color:#718096}.sidebar .sidebar-section .custom-select .custom-select__control{background:#ffffff14;border-color:#ffffff26;color:#fff;min-height:36px;padding:0 4px}.sidebar .sidebar-section .custom-select .custom-select__value-container{padding:0 8px}.sidebar .sidebar-section .custom-select .custom-select__control:hover{border-color:#ffffff40;background:#ffffff1f}.sidebar .sidebar-section .custom-select .custom-select__control--is-focused{border-color:#3182ce;box-shadow:0 0 0 2px #3182ce4d}.sidebar .sidebar-section .custom-select .custom-select__single-value{color:#fff}.sidebar .sidebar-section .custom-select .custom-select__placeholder{color:#ffffff80}.sidebar .sidebar-section .custom-select .custom-select__indicator{color:#fff9}.sidebar .sidebar-section .custom-select .custom-select__indicator:hover{color:#fff}.sidebar .sidebar-section .custom-select .custom-select__input-container{color:#fff;margin:0;padding:0}.sidebar .sidebar-section .custom-select .custom-select__input-container input{color:#fff!important;background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.sidebar .sidebar-section .custom-select .custom-select__input{color:#fff!important}.client-option-rich{display:flex;flex-direction:column;gap:4px;padding:2px 0}.client-option-main{display:flex;align-items:center;gap:8px}.client-option-name{font-weight:600;font-size:.9rem;color:inherit}.client-option-id{font-size:.75rem;color:#fff9;background:#ffffff1a;padding:2px 6px;border-radius:4px}.client-option-details{display:flex;flex-wrap:wrap;gap:8px;font-size:.75rem;color:#ffffff80}.client-option-dx,.client-option-loc,.client-option-school{white-space:nowrap}.custom-select:not(.compact) .client-option-id{color:#64748b;background:#f1f5f9}.custom-select:not(.compact) .client-option-details{color:#94a3b8}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.modal-actions .btn{min-width:100px;padding:10px 20px;border-radius:8px;font-weight:500;font-size:.9rem}.modal-actions.centered{justify-content:center}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500}.status-badge.draft{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.status-badge.pending{background:#dbeafe;color:#1e40af;border:1px solid #5DD6CB}.status-badge.approved{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.status-badge.returned{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.nav-button .badge{background:#dc3545;color:#fff;padding:2px 8px;border-radius:6px;font-size:.75rem;margin-left:auto}.nav-button .nav-badge{background:#dc3545;color:#fff;min-width:20px;height:20px;padding:0 6px;border-radius:6px;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center;margin-left:auto;box-shadow:0 2px 4px #dc35454d}.sidebar.collapsed .nav-button .nav-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;font-size:.6rem;padding:0 4px}.approved-by{font-size:.8rem;color:#28a745;font-style:italic}@media(max-width:768px){.edit-note-form .form-row{grid-template-columns:1fr}.note-item{flex-direction:column;align-items:flex-start}.note-actions{width:100%;justify-content:flex-end}}.react-tooltip{background:#333!important;color:#fff!important;padding:6px 12px!important;border-radius:6px!important;font-size:.8rem!important;z-index:99999!important;pointer-events:none;max-width:200px;text-align:center}.client-actions-inline{display:flex;align-items:center;gap:8px;overflow:visible;pointer-events:auto;position:relative;z-index:1;margin-left:auto;flex-shrink:0}.client-card,.client-card-header{overflow:visible}.file-drop-zone{border:2px dashed #d1d5db;border-radius:6px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s ease;background:#fafafa;margin-top:20px}.file-drop-zone:hover{border-color:var(--color-primary);background:#f0f7ff}.file-drop-zone.dragging{border-color:var(--color-primary);background:#e6f2ff;border-style:solid}.file-drop-zone.has-file{border-style:solid;border-color:#28a745;background:#f0fff4}.drop-content{display:flex;flex-direction:column;align-items:center;gap:10px;color:#666}.drop-content svg{color:#9ca3af}.drop-content p{font-size:1rem;font-weight:500;color:#374151;margin:0}.drop-content span{font-size:.85rem;color:#9ca3af}.file-selected{display:flex;align-items:center;justify-content:center;gap:12px}.file-selected svg{color:#28a745}.file-name{font-weight:500;color:#333}.remove-file{background:#fee2e2;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#dc2626;transition:all .2s}.remove-file:hover{background:#fecaca}.bulk-preview{margin-top:20px;padding:15px;background:#f0fff4;border:1px solid #86efac;border-radius:8px;display:flex;align-items:center;justify-content:space-between}.preview-info{display:flex;align-items:center;gap:10px;color:#166534}.preview-info svg{color:#28a745}[data-tooltip-id]{position:relative}.note-item,.note-actions,.notes-list-admin,.notes-list,.note-card,.client-card,.client-card-header,.client-actions-inline{overflow:visible}.birp-header{display:flex;align-items:center;gap:20px;margin-bottom:25px}.birp-header h2{margin:0;font-size:1.5rem}.birp-header .status-badge{flex-shrink:0}.birp-header .approved-info{font-size:.85rem;color:#28a745;white-space:nowrap}.btn-back{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:.9rem;color:#333;text-decoration:none;transition:all .2s;flex-shrink:0}.btn-back:hover{background:#f5f5f5;border-color:#ccc}.note-item{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 20px;background:#fff;border-radius:6px;box-shadow:0 2px 6px #0000000f}.note-info{display:flex;align-items:center;gap:15px;flex-wrap:wrap;flex:1}.note-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.birp-notes-view .birp-header{display:flex;flex-direction:row;align-items:center;gap:15px;margin-bottom:25px;flex-wrap:nowrap}.birp-notes-view .birp-header h2{margin:0;white-space:nowrap}.birp-notes-view .birp-header .btn-back,.birp-notes-view .birp-header .status-badge{flex-shrink:0}.birp-notes-view.review-view .birp-header{display:flex;flex-direction:row;align-items:center;gap:15px}.stat-card.clickable{cursor:pointer;transition:all .2s ease}.stat-card.clickable:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f;border:1px solid var(--color-primary)}.stat-card.clickable:active{transform:translateY(-2px)}.no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:6px;color:#888;text-align:center}.no-data svg{color:#28a745;margin-bottom:15px}.no-data p{font-size:1.1rem;margin:0}.dashboard-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px}@media(max-width:1024px){.dashboard-content{grid-template-columns:1fr}}.dashboard-section{background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000014;overflow:hidden}.section-title{display:flex;align-items:center;gap:10px;padding:15px 20px;border-bottom:1px solid #eee;background:#f8f9fa}.section-title h2{margin:0;font-size:1rem;color:#333}.section-title svg{color:#666}.alert-count{background:#dc3545;color:#fff;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:600;margin-left:auto}.alerts-list{padding:10px;max-height:300px;overflow-y:auto}.alert-item{display:flex;align-items:center;gap:12px;padding:12px 15px;border-radius:8px;margin-bottom:8px;background:#fff8e6;border:1px solid #ffe0b2}.alert-item:last-child{margin-bottom:0}.alert-item.auth-expiring{background:#fff3e0;border-color:#ffcc80}.alert-item.low-units{background:#fce4ec;border-color:#f8bbd9}.alert-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.alert-item.auth-expiring .alert-icon{background:#ff9800;color:#fff}.alert-item.low-units .alert-icon{background:#e91e63;color:#fff}.alert-content{flex:1;display:flex;flex-direction:column;gap:2px}.alert-content strong{color:#333}.alert-detail{font-size:.8rem;color:#666}.alert-reason{font-size:.85rem;color:#555;margin-left:6px}.alert-reason:before{content:"•";margin-right:6px;color:#999}.btn-small{padding:6px 12px;background:#fff;border:1px solid #ddd;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s}.btn-small:hover{background:#f5f5f5;border-color:#ccc}.alert-item.clickable{cursor:pointer;transition:all .2s ease}.alert-item.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.no-alerts{display:flex;align-items:center;justify-content:center;gap:10px;padding:30px;color:#28a745}.no-alerts svg{color:#28a745}.activity-list{padding:10px;max-height:300px;overflow-y:auto}.activity-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;margin-bottom:6px;transition:background .2s}.activity-item:hover{background:#f5f5f5}.activity-item:last-child{margin-bottom:0}.activity-item.clickable:hover{background:#e8f4fc}.activity-pdf-icon{color:#888;flex-shrink:0}.activity-item.clickable:hover .activity-pdf-icon{color:var(--color-primary)}.activity-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-icon.approved{background:#d4edda;color:#28a745}.activity-icon.pending{background:#fff3cd;color:#856404}.activity-icon.draft{background:#e9ecef;color:#495057}.activity-content{flex:1;min-width:0}.activity-main{display:flex;align-items:center;gap:8px}.activity-main strong{color:#333}.activity-type{font-size:.85rem;color:#666;text-transform:capitalize}.activity-meta{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#888;margin-top:2px}.no-activity{display:flex;align-items:center;justify-content:center;padding:30px;color:#888}.view-all-btn{width:100%;padding:12px;background:#f8f9fa;border:none;border-top:1px solid #eee;color:var(--color-primary);font-size:.9rem;cursor:pointer;transition:background .2s}.view-all-btn:hover{background:#e9ecef}.quick-actions{margin-top:10px}.quick-actions h2{font-size:1rem;color:#555;margin-bottom:15px}.quick-actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}@media(max-width:768px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.quick-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s}.quick-action-btn:hover{border-color:var(--color-primary);background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.quick-action-btn svg{color:var(--color-primary)}.quick-action-btn span{font-size:.9rem;color:#333;font-weight:500}.sessions-list-expandable{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.sessions-filter-bar{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:15px 20px;background:#fff;border-radius:6px;box-shadow:0 2px 6px #0000000f;flex-wrap:wrap;position:relative;z-index:100}.sessions-filter-bar .filter-group{display:flex;align-items:center;gap:10px}.sessions-filter-bar .filter-group label{font-size:.85rem;font-weight:500;color:#555;margin:0;white-space:nowrap;display:flex;align-items:center;gap:4px}.sessions-filter-bar .filter-group.sort-group{margin-left:auto}.sessions-filter-bar .filter-group.sort-group label{color:#666}.sessions-filter-bar .filter-group.sort-group label svg{color:#888}.sessions-filter-bar .filter-select{min-width:200px}.sessions-filter-bar .filter-select .custom-select__control{min-height:38px}.sessions-filter-bar .btn-small{padding:8px 14px;font-size:.85rem}.sessions-filter-bar .btn-small.secondary{background:#f0f0f0;border:1px solid #ddd;color:#666}.sessions-filter-bar .btn-small.secondary:hover{background:#e0e0e0}.results-count{display:inline-flex;align-items:center;padding:8px 16px;background:#ebf8ff;border:1px solid #bee3f8;border-radius:8px;margin-bottom:16px;font-size:.9rem;color:#2c5282;font-weight:600}@media(max-width:768px){.sessions-filter-bar{flex-direction:column;align-items:stretch;gap:12px}.sessions-filter-bar .filter-group{flex-direction:column;align-items:stretch;gap:6px}.sessions-filter-bar .filter-group.sort-group{margin-left:0}.sessions-filter-bar .filter-select{width:100%}}.main-content>.btn.primary{width:auto;max-width:200px}.modal .form-group .custom-select .custom-select__control{min-height:44px}.sidebar-brand{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1}.sidebar-brand .sidebar-logo{width:150px;margin-bottom:12px}.sidebar-brand .user-info{display:flex;flex-direction:column;align-items:center;gap:6px}.sidebar-brand .user-info .user-name{font-size:1rem;font-weight:600;color:#fff}.sidebar-brand .user-info .user-role{font-size:.75rem;color:#94a3b8;background:#ffffff1a;padding:4px 12px;border-radius:6px;text-transform:capitalize}.user-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff;text-transform:uppercase;flex-shrink:0;box-shadow:0 2px 6px #0003}.sidebar-section.collapsed-clients{padding:10px;display:flex;flex-direction:column;gap:6px;border-bottom:2px solid #4a5568}.client-icon-button{width:100%;padding:10px;background:#2a2a4a;color:#fff;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:background .2s}.client-icon-button:hover{background:#3a3a5a}.client-icon-button.active{background:var(--color-primary)}.client-icon-button .warning-icon-small{position:absolute;top:4px;right:4px;color:#fc0}.modal .form-group .custom-select .custom-select__control{min-height:38px;padding:0;border-radius:8px}.modal .form-group .custom-select .custom-select__value-container{padding:0 12px}.modal .form-group .custom-select .custom-select__single-value{font-size:.9rem}.modal .form-group .custom-select .custom-select__indicator{padding:4px 8px}.custom-select__menu .custom-select__option{padding:8px 12px;font-size:.9rem}.custom-select__menu-list{padding:4px 0}.modal .form-group .custom-select .custom-select-trigger{min-height:38px;padding:9px 12px;font-size:.9rem}.actions-row{display:flex;gap:10px;align-items:center}.loading-skeleton{display:flex;flex-direction:column;gap:12px}.community-page{width:100%;max-width:1000px}.community-tabs{display:flex;gap:8px;margin-bottom:24px;padding:8px;background:#f8fafc;border-radius:6px}.community-tabs .tab-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-radius:8px;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.community-tabs .tab-btn:hover{background:#fff;color:var(--color-primary)}.community-tabs .tab-btn.active{background:#fff;color:var(--color-primary);box-shadow:0 2px 8px #5b6cf226}.community-section{background:#fff;border-radius:6px;box-shadow:0 1px 3px #00000014;padding:24px}.community-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.community-section .section-header h2{margin:0;font-size:1.1rem;color:#1e293b}.community-list{display:flex;flex-direction:column;gap:12px}.community-list .empty-state{text-align:center;padding:40px;color:#94a3b8;font-size:.9rem}.community-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:#f8fafc;border-radius:8px;transition:all .2s}.community-item:hover{background:#f1f5f9}.community-item.no-school{border-left:3px solid #ef4444;background:#fef2f2}.community-item.no-school:hover{background:#fee2e2}.community-item .item-info{flex:1;min-width:0}.community-item .item-info h4{margin:0 0 6px;font-size:.95rem;font-weight:600;color:#1e293b}.community-item .item-info .meta{font-size:.8rem;color:#64748b;margin:0 0 8px}.community-item .item-info .description{font-size:.85rem;color:#475569;margin:8px 0}.community-item .item-info .hours{font-size:.8rem;color:#64748b;margin:4px 0}.community-item .item-info .badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase}.community-item .item-info .badge.free{background:#dcfce7;color:#166534}.community-item .item-info .badge.paid{background:#fef3c7;color:#92400e}.community-item .item-info .badge.active{background:#dcfce7;color:#166534}.community-item .item-info .badge.inactive{background:#fee2e2;color:#991b1b}.community-item .item-info .badge.no-school{background:#ef4444;color:#fff}.community-item .item-info .type-badge,.community-item .item-info .district-badge{display:inline-block;padding:2px 8px;background:#e0e7ff;color:#4338ca;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.community-item .item-actions{display:flex;gap:8px;flex-shrink:0}.btn-icon{padding:8px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover{background:#f1f5f9;color:var(--color-primary);border-color:var(--color-primary)}.btn-icon.danger:hover{background:#fef2f2;color:#dc2626;border-color:#dc2626}@media(max-width:600px){.community-tabs{flex-wrap:wrap}.community-tabs .tab-btn{flex:1;min-width:100px;justify-content:center}.community-item{flex-direction:column;gap:12px}.community-item .item-actions{width:100%;justify-content:flex-end}}.pending-events-section{margin-bottom:24px;padding:16px;background:#fef3c7;border-radius:6px;border:1px solid #fbbf24}.pending-events-section .pending-header{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:.95rem;font-weight:600;color:#92400e}.community-item.pending{background:#fffbeb;border-left:3px solid #f59e0b}.community-item.pending:hover{background:#fef3c7}.community-item .created-by{font-size:.8rem;color:#64748b;margin:4px 0;font-style:italic}.section-subheader{font-size:.95rem;font-weight:600;color:#1e293b;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.btn-icon.success{color:#16a34a;border-color:#16a34a}.btn-icon.success:hover{background:#dcfce7}.badge-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.badge.pending{background:#fef3c7;color:#92400e}.badge.public{background:#dbeafe;color:#094249}.badge.private{background:#fce7f3;color:#be185d}.badge.calendar{background:#e0e7ff;color:#4338ca}.badge.past{background:#e2e8f0;color:#64748b}.community-section .past-events-section{margin-top:24px;padding-top:24px;border-top:1px dashed #e2e8f0}.community-section .past-events-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.community-section .past-events-toggle:hover{background:#f1f5f9;color:#475569}.community-section .past-events-toggle.open{border-radius:8px 8px 0 0;border-bottom:none;background:#f1f5f9}.community-section .past-events-toggle svg:last-child{margin-left:auto;transition:transform .2s ease}.community-section .past-events-toggle svg:last-child.rotated{transform:rotate(180deg)}.community-section .past-events-list{background:#f8fafc;border:1px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;max-height:400px;overflow-y:auto}.community-item.past{opacity:.85;background:#f8fafc;border-left:3px solid #94a3b8}.community-item.past:hover{background:#f1f5f9}.checkbox-group{display:flex;align-items:center}.checkbox-group .checkbox-label{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#1e293b;cursor:pointer}.checkbox-group .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.community-page{padding:0}.community-page h1{margin:0 0 20px;font-size:1.5rem;color:#1e293b}.community-page .community-resources-widget{background:#fff;border-radius:6px;box-shadow:0 1px 3px #00000014}.my-clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}.my-client-card{background:#fff;border-radius:6px;padding:0;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0;transition:all .2s ease;overflow:hidden}.my-client-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#cbd5e1}.my-client-card.expanded{border-color:var(--color-primary);box-shadow:0 4px 16px #5b6cf226}.my-client-card .client-card-header{display:flex;align-items:center;gap:14px;padding:16px 20px;cursor:pointer;transition:background .2s ease}.my-client-card .client-card-header:hover{background:#f8fafc}.my-client-card .client-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.my-client-card .client-info{flex:1;min-width:0}.my-client-card .client-info h3{margin:0 0 4px;font-size:1.1rem;color:#1e293b}.my-client-card .client-id{font-size:.8rem;color:#64748b}.my-client-card .expand-indicator{color:#94a3b8;transition:color .2s ease}.my-client-card:hover .expand-indicator{color:var(--color-primary)}.my-client-card .client-quick-stats{display:flex;gap:16px;padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.my-client-card .quick-stat{display:flex;flex-direction:column;gap:2px}.my-client-card .quick-stat .stat-label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em}.my-client-card .quick-stat .stat-value{font-size:.85rem;color:#1e293b;font-weight:500}.my-client-card .note-badge{font-size:.7rem;padding:2px 6px;border-radius:4px;font-weight:500}.my-client-card .note-badge.pending{background:#fef3c7;color:#b45309}.my-client-card .note-badge.returned{background:#fee2e2;color:#dc2626}.my-client-card .note-badge.approved{background:#d1fae5;color:#047857}.my-client-card .client-expanded-content{padding:20px;border-top:1px solid #e2e8f0;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.my-client-card .client-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.my-client-card .client-details-two-column{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.my-client-card .detail-column{display:flex;flex-direction:column;gap:10px}.my-client-card .detail-column h4{font-size:.8rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;padding-bottom:8px;border-bottom:2px solid var(--color-primary)}@media(max-width:600px){.my-client-card .client-details-two-column{grid-template-columns:1fr}}.my-client-card .detail-section{display:flex;flex-direction:column;gap:8px}.my-client-card .detail-section h4{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px;padding-bottom:6px;border-bottom:1px solid #f1f5f9}.my-client-card .detail-row{display:flex;align-items:center;gap:6px;font-size:.85rem}.my-client-card .detail-row svg{color:#94a3b8;flex-shrink:0}.my-client-card .detail-row .label{color:#64748b;white-space:nowrap}.my-client-card .detail-row .value{color:#1e293b;font-weight:500;margin-left:auto;text-align:right}.my-client-card .detail-row .value.warning{color:#dc2626}.my-client-card .detail-row .inline-warning{color:#dc2626;margin-left:4px}.my-client-card .client-card-actions{display:flex;gap:10px;padding-top:16px;border-top:1px solid #f1f5f9;pointer-events:auto;position:relative;z-index:2}.my-client-card .btn-see-more,.my-client-card .btn-start-doc{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;position:relative;z-index:1;cursor:pointer;transition:all .2s ease}.my-client-card .btn-see-more{background:#f1f5f9;color:#475569}.my-client-card .btn-see-more:hover{background:#e2e8f0}.my-client-card .btn-start-doc{background:var(--color-primary);color:#fff}.my-client-card .btn-start-doc:hover{background:var(--color-primary-dark);transform:translateY(-1px)}@media(max-width:768px){.my-clients-grid,.my-client-card .client-details-grid{grid-template-columns:1fr}.my-client-card .client-card-actions{flex-direction:column}}.btn-success-pulse{animation:buttonSuccessPulse .6s ease-out}@keyframes buttonSuccessPulse{0%{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}.success-ripple{position:relative;overflow:hidden}.success-ripple:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(16,185,129,.3) 0%,transparent 70%);animation:rippleEffect .6s ease-out forwards;pointer-events:none}@keyframes rippleEffect{0%{transform:scale(0);opacity:1}to{transform:scale(2);opacity:0}}.success-highlight{animation:successHighlight 1s ease-out}@keyframes successHighlight{0%{background-color:#10b98133;box-shadow:0 0 20px #10b98166}to{background-color:transparent;box-shadow:none}}.success-check-bounce{animation:successCheckBounce .5s cubic-bezier(.68,-.55,.265,1.55)}@keyframes successCheckBounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.fade-in-up{animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success-glow{animation:successGlow 1.5s ease-out}@keyframes successGlow{0%{box-shadow:0 0 5px #10b98180,0 0 10px #10b98166,0 0 15px #10b9814d}to{box-shadow:none}}@keyframes toastEnter{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.checkmark-draw{stroke-dasharray:50;stroke-dashoffset:50;animation:drawCheck .5s ease-out forwards}@keyframes drawCheck{to{stroke-dashoffset:0}}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*:focus{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:var(--shadow-focus)}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:var(--color-text-inverse);padding:var(--spacing-2) var(--spacing-4);border-radius:0 0 var(--radius-md) 0;z-index:10000;text-decoration:none;font-weight:var(--font-medium);transition:top var(--transition-fast)}.skip-link:focus{top:0}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar button:focus-visible,.sidebar a:focus-visible{outline:2px solid white;outline-offset:2px}@media(prefers-contrast:high){:root{--color-border: #000;--color-text-primary: #000;--color-text-secondary: #333}.btn.primary,.btn-primary{border:2px solid white}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.banner-customization-section{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.banner-customization-section h4{font-size:.9rem;font-weight:600;color:#1e293b;margin:0 0 12px}.color-picker-grid{display:flex;gap:8px;flex-wrap:wrap}.color-swatch{width:32px;height:32px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s ease}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:#1e293b;box-shadow:0 0 0 2px #fff,0 0 0 4px #1e293b}.banner-preview{margin-top:16px}.banner-preview label{display:block;font-size:.8rem;color:#64748b;margin-bottom:8px}.preview-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:6px;font-size:.9rem;font-weight:500}.preview-banner.banner-blue.style-gradient,.preview-banner.banner-blue.style-solid{background:var(--color-primary);color:#fff}.preview-banner.banner-blue.style-outline{background:#fff;border:2px solid var(--color-primary);color:var(--color-primary)}.preview-banner.banner-blue.style-subtle{background:#eff2fe;color:var(--color-primary-dark)}.preview-banner.banner-purple.style-gradient{background:#4f46e5;color:#fff}.preview-banner.banner-purple.style-solid{background:#6366f1;color:#fff}.preview-banner.banner-purple.style-outline{background:#fff;border:2px solid #6366F1;color:#6366f1}.preview-banner.banner-purple.style-subtle{background:#f3e8ff;color:var(--color-primary-dark)}.preview-banner.banner-green.style-gradient{background:var(--color-success);color:#fff}.preview-banner.banner-green.style-solid{background:#10b981;color:#fff}.preview-banner.banner-green.style-outline{background:#fff;border:2px solid #10B981;color:#10b981}.preview-banner.banner-green.style-subtle{background:#d1fae5;color:#059669}.preview-banner.banner-orange.style-gradient{background:var(--color-warning);color:#fff}.preview-banner.banner-orange.style-solid{background:#f59e0b;color:#fff}.preview-banner.banner-orange.style-outline{background:#fff;border:2px solid #F59E0B;color:#d97706}.preview-banner.banner-orange.style-subtle{background:#fef3c7;color:#d97706}.preview-banner.banner-red.style-gradient{background:var(--color-danger);color:#fff}.preview-banner.banner-red.style-solid{background:#ef4444;color:#fff}.preview-banner.banner-red.style-outline{background:#fff;border:2px solid #EF4444;color:#ef4444}.preview-banner.banner-red.style-subtle{background:#fee2e2;color:#dc2626}.preview-banner.banner-pink.style-gradient,.preview-banner.banner-pink.style-solid{background:#e11d48;color:#fff}.preview-banner.banner-pink.style-outline{background:#fff;border:2px solid #E11D48;color:#e11d48}.preview-banner.banner-pink.style-subtle{background:#fce7f3;color:#db2777}.preview-banner.banner-teal.style-gradient{background:#0d9488;color:#fff}.preview-banner.banner-teal.style-solid{background:#14b8a6;color:#fff}.preview-banner.banner-teal.style-outline{background:#fff;border:2px solid #14B8A6;color:#14b8a6}.preview-banner.banner-teal.style-subtle{background:#ccfbf1;color:#0d9488}.preview-banner.banner-indigo.style-gradient{background:#4f46e5;color:#fff}.preview-banner.banner-indigo.style-solid{background:#6366f1;color:#fff}.preview-banner.banner-indigo.style-outline{background:#fff;border:2px solid #6366F1;color:#6366f1}.preview-banner.banner-indigo.style-subtle{background:#e0e7ff;color:#4f46e5}.no-clients-page{display:flex;align-items:center;justify-content:center;min-height:400px;padding:var(--spacing-8, 32px)}.no-clients-page-content{text-align:center;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4, 16px)}.no-clients-page-icon{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#5b6cf21a,#10b9811a);display:flex;align-items:center;justify-content:center;color:var(--color-primary, var(--color-primary));margin-bottom:var(--spacing-2, 8px)}.no-clients-page-content h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #1e293b)}.no-clients-page-content>p{margin:0;font-size:var(--font-base, .95rem);color:var(--color-text-muted, #64748b);line-height:1.6}.no-clients-page-info{display:flex;align-items:center;gap:var(--spacing-3, 12px);margin-top:var(--spacing-4, 16px);padding:var(--spacing-4, 16px) var(--spacing-5, 20px);background:var(--color-bg-page, #f8fafc);border-radius:var(--radius-lg, 12px);font-size:var(--font-sm, .875rem);color:var(--color-text-secondary, #475569);text-align:left}.no-clients-page-info svg{color:var(--color-primary, var(--color-primary));flex-shrink:0}.isp-management-view{padding:0}.isp-management-view .section-header{margin-bottom:24px}.isp-management-view .section-header h2{display:flex;align-items:center;gap:10px;font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 4px}.isp-management-view .section-header h2 svg{color:var(--color-primary)}.isp-management-view .section-header p{margin:0;font-size:.9rem;color:#64748b}.isp-management-view .filters-row{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:15px 20px;background:#fff;border-radius:6px;box-shadow:0 2px 6px #0000000f}.isp-management-view .filters-row .custom-select{min-width:200px}.isp-management-view .notes-table-container{background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000014;overflow:hidden}.isp-management-view .notes-table{width:100%;border-collapse:collapse}.isp-management-view .notes-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.isp-management-view .notes-table th{padding:14px 16px;text-align:left;font-size:.85rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.isp-management-view .notes-table tbody tr{border-bottom:1px solid #e2e8f0;cursor:pointer;transition:background-color .15s ease}.isp-management-view .notes-table tbody tr:hover{background:#f8fafc}.isp-management-view .notes-table tbody tr.pending{background:#fefce8}.isp-management-view .notes-table tbody tr.pending:hover{background:#fef9c3}.isp-management-view .notes-table td{padding:14px 16px;font-size:.9rem;color:#1e293b}.isp-management-view .notes-table .actions-cell{display:flex;gap:8px;align-items:center}.isp-management-view .btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;background:#f1f5f9;color:#64748b}.isp-management-view .btn-icon:hover{background:#e2e8f0;color:#1e293b}.isp-management-view .btn-icon.approve{background:#dcfce7;color:#16a34a}.isp-management-view .btn-icon.approve:hover{background:#bbf7d0;color:#15803d}.isp-management-view .btn-icon.return{background:#fee2e2;color:#dc2626}.isp-management-view .btn-icon.return:hover{background:#fecaca;color:#b91c1c}.isp-management-view .status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.isp-management-view .status-badge.pending_review{background:#fef3c7;color:#b45309}.isp-management-view .status-badge.active{background:#dcfce7;color:#16a34a}.isp-management-view .status-badge.draft{background:#e0e7ff;color:#4f46e5}.isp-management-view .status-badge.archived{background:#f1f5f9;color:#64748b}.isp-management-view .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#64748b}.isp-management-view .empty-state svg{color:#cbd5e1;margin-bottom:16px}.isp-management-view .empty-state h3{margin:0 0 8px;font-size:1.1rem;font-weight:600;color:#475569}.isp-management-view .empty-state p{margin:0;font-size:.9rem}.isp-management-view .return-modal-content{display:flex;flex-direction:column;gap:16px}.isp-management-view .return-modal-content p{margin:0;color:#475569}.isp-management-view .return-modal-content textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;resize:vertical;min-height:100px}.isp-management-view .return-modal-content textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5b6cf21a}.isp-management-view .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.inactivity-overlay{position:fixed;top:0;left:0;width:var(--viewport-width);height:var(--viewport-height);background:#0009;display:flex;align-items:center;justify-content:center;z-index:99999;animation:fadeIn .2s ease}.inactivity-dialog{background:#fff;border-radius:8px;padding:32px;max-width:380px;width:90%;text-align:center;box-shadow:0 20px 60px #0000004d}.inactivity-dialog h3{margin:0 0 12px;font-size:1.25rem;font-weight:700;color:#1a1a2e}.inactivity-dialog p{margin:0 0 24px;font-size:.9375rem;color:#64748b;line-height:1.5}.inactivity-dialog .stay-btn{padding:10px 28px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:background .2s}.inactivity-dialog .stay-btn:hover{background:#4a5ae0}.add-session-search-bar{position:relative;margin-bottom:20px;max-width:480px}.add-session-search-bar .add-session-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none;z-index:1}.add-session-search-bar .add-session-search-input{width:100%;padding:11px 36px 11px 40px;border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;color:#1e293b;background:#fff;box-shadow:0 1px 4px #0000000f;transition:border-color .2s,box-shadow .2s}.add-session-search-bar .add-session-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5b6cf21a}.add-session-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%}.add-session-search-clear:hover{color:#64748b;background:#f1f5f9}.add-session-client-grid{display:flex;flex-direction:column;gap:6px}.add-session-empty{text-align:center;padding:60px 20px;color:#94a3b8}.add-session-empty svg{margin-bottom:12px;opacity:.35}.add-session-empty h3{font-size:1.1rem;color:#64748b;margin:0 0 6px}.add-session-empty p{font-size:.9rem;color:#94a3b8;margin:0}.add-session-client-btn{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#fff;border:1px solid #e8ecf1;border-radius:6px;cursor:pointer;transition:all .15s ease;width:100%;text-align:left;font-family:inherit;font-size:inherit}.add-session-client-btn:hover{border-color:#c7d0ff;background:#f8f9ff;box-shadow:0 2px 8px #5b6cf214}.add-session-client-btn:active{background:#f0f2ff}.add-session-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;letter-spacing:.5px;flex-shrink:0}.add-session-client-details{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.add-session-client-name{font-size:.95rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-session-client-sub{font-size:.8rem;color:#94a3b8}.add-session-chevron{color:#cbd5e1;flex-shrink:0;transition:all .15s ease}.add-session-client-btn:hover .add-session-chevron{color:var(--color-primary);transform:translate(2px)}@media(max-width:768px){.add-session-search-bar{max-width:100%}.add-session-client-btn{padding:10px 12px;gap:10px}.add-session-avatar{width:36px;height:36px;font-size:.75rem}}.nav-button .badge{background:#e53e3e;color:#fff;font-size:.7rem;padding:2px 6px;border-radius:6px;margin-left:8px}.dashboard.admin .status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-size:.75rem;font-weight:600;text-transform:uppercase}.dashboard.admin .status-badge.draft{background:#fef3cd;color:#856404}.dashboard.admin .status-badge.pending{background:#cce5ff;color:#004085}.dashboard.admin .status-badge.approved{background:#d4edda;color:#155724}.notes-list-admin{display:flex;flex-direction:column;gap:12px;margin-top:16px}.note-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:16px;flex-wrap:wrap}.note-item:hover{box-shadow:var(--shadow-md)}.note-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.note-client{font-weight:600;color:#2d3748;min-width:60px}.note-date{color:#4a5568}.note-type{color:#718096;text-transform:capitalize}.note-duration{color:#718096}.note-staff{color:#718096;font-size:.9rem}.note-submitted{color:#a0aec0;font-size:.8rem}.approved-by{color:#38a169;font-size:.85rem}.note-actions{display:flex;gap:8px}.btn-icon.success{color:#38a169}.btn-icon.success:hover{background:#c6f6d5;color:#276749}.btn-icon.warning{color:#d69e2e}.btn-icon.warning:hover{background:#fefcbf;color:#975a16}.dashboard.admin .no-data{text-align:center;padding:60px 20px;color:#718096}.dashboard.admin .no-data svg{margin-bottom:16px;color:#a0aec0}.modal.large{max-width:800px;max-height:90vh;overflow-y:auto}.note-view-content{padding:20px 0}.note-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:16px;background:#f7fafc;border-radius:8px;margin-bottom:20px}.note-meta p{margin:0;font-size:.9rem}.note-section{margin-bottom:20px}.note-section h4{color:#4a5568;font-size:.9rem;text-transform:uppercase;margin-bottom:8px;border-bottom:1px solid #e2e8f0;padding-bottom:4px}.note-section p{color:#2d3748;white-space:pre-wrap;line-height:1.6}.note-section.warning{background:#fff5f5;border:1px solid #fed7d7;padding:12px;border-radius:8px}.note-section.warning h4{color:#c53030;border-bottom-color:#fed7d7}.note-section.warning p{color:#742a2a}.modal-actions{display:flex;gap:12px;padding-top:20px;border-top:1px solid #e2e8f0;flex-wrap:wrap}.btn.success{background:#38a169;color:#fff}.btn.success:hover{background:#2f855a}.btn.danger{background:#e53e3e;color:#fff}.btn.danger:hover{background:#c53030}.btn.warning{background:#d69e2e;color:#fff}.btn.warning:hover{background:#b7791f}.modal textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:.95rem;resize:vertical}.modal textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.confirm-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.confirm-buttons .btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.note-item{flex-direction:column;align-items:flex-start}.note-info{width:100%}.note-actions{width:100%;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%;justify-content:center}}
