@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Roboto:wght@300;400;500;700&family=Fira+Code:wght@400;500;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap);@import url(https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap);@import url(https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap);:root{--color-white:#fff;--color-black:#000;--color-background:#f8f9fa;--color-surface:#fff;--color-surface-alt:#f3f4f6;--color-border:#e5e7eb;--color-border-dark:#d1d5db;--color-text-primary:#1f2937;--color-text-secondary:#4b5563;--color-text-tertiary:#6b7280;--color-text-disabled:#d1d5db;--color-primary:#10b981;--color-primary-dark:#355760;--color-primary-light:#34d399;--color-primary-lighter:#6ee7b7;--color-success:#10b981;--color-success-light:#34d399;--color-warning:#f59e0b;--color-warning-light:#fbbf24;--color-danger:#ef4444;--color-danger-light:#f87171;--color-info:#06b6d4;--color-info-light:#22d3ee;--font-family-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-family-secondary:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-family-mono:"Fira Code","Roboto Mono",monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:13px;--font-size-lg:14px;--font-size-xl:15px;--font-size-2xl:16px;--font-size-3xl:18px;--font-size-4xl:20px;--font-size-5xl:24px;--spacing-1:4px;--spacing-2:8px;--spacing-3:12px;--spacing-4:16px;--spacing-5:20px;--spacing-6:24px;--spacing-8:32px;--radius-sm:4px;--radius-base:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-base:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}html[data-theme=dark]{--color-text-primary:#f9fafb;--color-text-secondary:#d1d5db;--color-text-tertiary:#9ca3af;--color-primary-dark:#7a9ba8;--color-background:#111827;--color-surface:#1f2937;--color-surface-alt:#374151;--color-border:#374151;--color-border-dark:#4b5563}.skip-link{background:#355760;background:var(--color-primary-dark,#355760);border-radius:0 0 4px 0;color:#fff;font-size:.875rem;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-40px;transition:top .2s ease;z-index:10000}.skip-link:focus{top:0}html{scroll-behavior:smooth}body{background-color:#f8f9fa;background-color:var(--color-background);color:#4b5563;color:var(--color-text-secondary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:400;line-height:1.6}#root{min-height:100vh}h1{font-size:18px;font-size:var(--font-size-3xl)}h1,h2{color:#1f2937;color:var(--color-text-primary);font-weight:700;font-weight:var(--font-weight-bold);line-height:1.25}h2{font-size:16px;font-size:var(--font-size-2xl)}h3{font-size:15px;font-size:var(--font-size-xl);line-height:1.25}h3,h4,h5,h6{color:#1f2937;color:var(--color-text-primary);font-weight:600;font-weight:var(--font-weight-semibold)}h4,h5,h6{font-size:14px;font-size:var(--font-size-lg)}p{color:#4b5563;line-height:1.6}label{color:#1f2937;color:var(--color-text-primary);font-size:12px;font-weight:500;margin-bottom:8px;margin-bottom:var(--spacing-2)}small{color:#6b7280;font-size:11px;font-size:var(--font-size-xs)}button{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-base);cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-family-primary);font-size:13px;font-size:var(--font-size-base);font-weight:500;font-weight:var(--font-weight-medium);gap:8px;gap:var(--spacing-2);padding:8px 16px;padding:var(--spacing-2) var(--spacing-4);transition:all .2s ease;white-space:nowrap}.btn-primary{background-color:#10b981;background-color:var(--color-primary);border:none;color:var(--color-white)}.btn-primary:hover:not(:disabled){background-color:#355760;background-color:var(--color-primary-dark);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{background-color:#d1d5db;background-color:var(--color-border-dark);color:#d1d5db;color:var(--color-text-disabled);cursor:not-allowed;opacity:.6}.btn-secondary{background-color:initial;border:1px solid #10b981;border:1px solid var(--color-primary);color:#10b981;color:var(--color-primary)}.btn-secondary:hover:not(:disabled){background-color:#6ee7b7;background-color:var(--color-primary-lighter)}.btn-secondary:disabled{border-color:#d1d5db;border-color:var(--color-border-dark);color:#d1d5db;color:var(--color-text-disabled);cursor:not-allowed}.btn-destructive{border:none;color:#fff;color:var(--color-white)}.btn-destructive,.btn-destructive:hover:not(:disabled){background-color:#ef4444;background-color:var(--color-danger)}.btn-destructive:hover:not(:disabled){box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.btn-destructive:disabled{background-color:#d1d5db;background-color:var(--color-border-dark);color:#d1d5db;color:var(--color-text-disabled);cursor:not-allowed;opacity:.6}.btn-ghost{border:none;color:#4b5563;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:#f3f4f6}.btn-ghost:disabled{color:#d1d5db;color:var(--color-text-disabled);cursor:not-allowed}input,select,textarea{background-color:#fff;background-color:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-base);color:#1f2937;color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-family-primary);font-size:13px;font-size:var(--font-size-base);padding:10px 12px;padding:10px var(--spacing-3);transition:border-color .2s,box-shadow .2s;width:100%}input::placeholder,textarea::placeholder{color:#6b7280;color:var(--color-text-tertiary)}input:focus,select:focus,textarea:focus{border-color:#10b981;border-color:var(--color-primary);box-shadow:0 0 0 3px #10b9811a;outline:none}[role=button]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid #10b981;outline:2px solid var(--color-primary);outline-offset:2px}input:disabled,select:disabled,textarea:disabled{background-color:#f3f4f6;background-color:var(--color-surface-alt);color:#d1d5db;color:var(--color-text-disabled);cursor:not-allowed}table{font-size:13px;font-size:var(--font-size-base)}thead{background-color:#f3f4f6;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border)}th{color:#6b7280;color:var(--color-text-tertiary);font-size:11px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.5px}td,th{padding:12px 16px;padding:var(--spacing-3) var(--spacing-4)}td{border-bottom:1px solid #e5e7eb;color:#4b5563}tbody tr:hover{background-color:#f3f4f6}tbody tr:nth-child(2n){background-color:#fff;background-color:var(--color-white)}.card{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;border-radius:var(--radius-md);box-shadow:0 1px 2px 0 #0000000d;padding:24px;padding:var(--spacing-6)}.card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:box-shadow .2s ease}.container{margin:0 auto;max-width:1200px;padding:0 16px;padding:0 var(--spacing-4)}.text-primary{color:#1f2937;color:var(--color-text-primary)}.text-secondary{color:#4b5563}.text-tertiary{color:#6b7280}.text-success{color:#10b981;color:var(--color-success)}.text-danger{color:#ef4444;color:var(--color-danger)}.text-warning{color:#f59e0b;color:var(--color-warning)}.bg-primary{background-color:#6ee7b7;background-color:var(--color-primary-lighter)}.bg-success{background-color:#34d399;background-color:var(--color-success-light)}.bg-danger{background-color:#f87171;background-color:var(--color-danger-light)}.bg-warning{background-color:#fbbf24;background-color:var(--color-warning-light)}.gap-sm{gap:8px;gap:var(--spacing-2)}.gap-md{gap:16px;gap:var(--spacing-4)}.gap-lg{gap:24px;gap:var(--spacing-6)}.p-2{padding:8px;padding:var(--spacing-2)}.p-3{padding:12px;padding:var(--spacing-3)}.p-4{padding:16px;padding:var(--spacing-4)}.p-6{padding:24px;padding:var(--spacing-6)}.m-2{margin:8px;margin:var(--spacing-2)}.m-4{margin:16px;margin:var(--spacing-4)}.m-6{margin:24px;margin:var(--spacing-6)}.rounded-sm{border-radius:4px;border-radius:var(--radius-sm)}.rounded-base{border-radius:6px;border-radius:var(--radius-base)}.rounded-md{border-radius:8px;border-radius:var(--radius-md)}.shadow-sm{box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm)}.shadow-base{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-base)}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f8f9fa;background:var(--color-background)}::-webkit-scrollbar-thumb{background:#d1d5db;background:var(--color-border-dark);border-radius:6px;border-radius:var(--radius-base)}::-webkit-scrollbar-thumb:hover{background:#6b7280;background:var(--color-text-tertiary)}.animate-spin{animation:spin 1s linear infinite}@media (max-width:768px){h1{font-size:16px;font-size:var(--font-size-2xl)}h2{font-size:15px;font-size:var(--font-size-xl)}.container{padding:0 12px;padding:0 var(--spacing-3)}table{font-size:12px;font-size:var(--font-size-sm)}td,th{padding:8px 12px;padding:var(--spacing-2) var(--spacing-3)}}.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp{align-items:center;cursor:inherit;display:inline-flex;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;justify-content:center;-webkit-user-select:none;user-select:none;vertical-align:middle}.icon-xs{font-size:16px}.icon-sm{font-size:20px}.icon-md{font-size:24px}.icon-lg{font-size:32px}.icon-xl{font-size:40px}.icon-2xl{font-size:48px}.icon-light{font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.icon-regular{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.icon-medium{font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.icon-bold{font-variation-settings:"FILL" 0,"wght" 700,"GRAD" 0,"opsz" 24}.icon-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.icon-primary{color:#10b981;color:var(--color-primary)}.icon-success{color:#10b981;color:var(--color-success)}.icon-danger{color:#ef4444;color:var(--color-danger)}.icon-warning{color:#f59e0b;color:var(--color-warning)}.icon-info{color:#06b6d4;color:var(--color-info)}.icon-text-primary{color:#1f2937;color:var(--color-text-primary)}.icon-text-secondary{color:#4b5563;color:var(--color-text-secondary)}.icon-text-tertiary{color:#6b7280;color:var(--color-text-tertiary)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:var(--color-bg);font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);transition:background-color var(--transition-base)}body,h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--space-3)}h1{font-size:var(--font-size-4xl);letter-spacing:-.02em}h2{font-size:var(--font-size-3xl);letter-spacing:-.01em}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h4,h5{font-weight:var(--font-weight-semibold)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}small{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}strong{font-weight:var(--font-weight-bold)}em{font-style:italic}code{border-radius:var(--radius-sm);color:var(--danger-600);font-family:var(--font-family-mono);font-size:.875em;padding:.125rem .375rem}code,pre{background-color:var(--color-surface-alt)}pre{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-4);overflow-x:auto;padding:var(--space-4)}pre code{background:none;color:inherit;padding:0}label{color:var(--color-text);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2);text-align:left}input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],input[type=time],input[type=url],select,textarea{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);display:block;font-size:var(--font-size-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-base);width:100%}input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,select:focus,textarea:focus{background-color:var(--color-surface);border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a;outline:none}input[type=email]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=text]::placeholder,input[type=url]::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}input[type=email]:disabled,input[type=number]:disabled,input[type=password]:disabled,input[type=text]:disabled,select:disabled,textarea:disabled{background-color:var(--color-surface-alt);color:var(--color-text-tertiary);cursor:not-allowed;opacity:.6}textarea{min-height:100px;resize:vertical}select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%234b5563' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:var(--space-10)}[dir=rtl] select{background-position:left var(--space-3) center;padding-left:var(--space-10);padding-right:var(--space-3)}input[type=checkbox],input[type=radio]{accent-color:var(--primary-500);cursor:pointer;height:1.25rem;width:1.25rem}.button,button,input[type=button],input[type=reset],input[type=submit]{align-items:center;border:1px solid #0000;border-radius:var(--radius-base);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--space-2);justify-content:center;line-height:var(--line-height-tight);padding:var(--space-3) var(--space-5);text-decoration:none;transition:all var(--transition-base);user-select:none;-webkit-user-select:none;white-space:nowrap}.btn-primary,button:not([class]){background-color:var(--primary-dark);border-color:var(--primary-dark);box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover:not(:disabled),button:not([class]):hover:not(:disabled){background-color:var(--primary-dark-light);border-color:var(--primary-dark-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled),button:not([class]):active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-secondary{color:var(--color-text)}.btn-danger:hover:not(:disabled),.btn-secondary:hover:not(:disabled){transform:translateY(-1px)}.btn-ghost{color:var(--color-text)}.button:disabled,button:disabled,input[type=button]:disabled,input[type=reset]:disabled,input[type=submit]:disabled{cursor:not-allowed;opacity:.5}a{color:var(--primary-500);cursor:pointer;text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--primary-600);text-decoration:underline}a:active{color:var(--primary-700)}a:visited{color:var(--primary-600)}.card,.container{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:var(--primary-300)}.card-elevated{box-shadow:var(--shadow-lg)}table{background-color:var(--color-surface);border-collapse:collapse;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;width:100%}thead{background-color:var(--color-surface-alt);border-bottom:2px solid var(--color-border)}th{color:var(--color-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-align:left;text-transform:uppercase}td,th{padding:var(--space-4) var(--space-6)}td{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}tbody tr:hover{background-color:var(--color-surface-alt)}tbody tr:last-child td{border-bottom:none}.alert{align-items:flex-start;border-left:4px solid;border-radius:var(--radius-md);display:flex;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4) var(--space-5)}.alert-success{background-color:var(--success-50);border-color:var(--success-600);color:var(--success-700)}.alert-warning{background-color:var(--warning-50);border-color:var(--warning-600);color:var(--warning-700)}.alert-danger{background-color:var(--danger-50);border-color:var(--danger-600);color:var(--danger-700)}.alert-info{background-color:var(--info-50);border-color:var(--info-600);color:var(--info-600)}.badge-success{background-color:var(--success-100)}.badge-warning{background-color:var(--warning-100)}.badge-danger{background-color:var(--danger-100)}.badge-info{background-color:var(--info-100);color:var(--info-600)}.badge-primary{background-color:var(--primary-100);color:var(--primary-700)}.text-primary{color:var(--color-text)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-danger{color:var(--danger-600)}.text-success{color:var(--success-600)}.text-warning{color:var(--warning-600)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.font-bold{font-weight:var(--font-weight-bold)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-medium{font-weight:var(--font-weight-medium)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-4{padding-bottom:var(--space-4);padding-top:var(--space-4)}.rounded{border-radius:var(--radius-base)}.rounded-lg{border-radius:var(--radius-lg)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.flex{display:flex}.flex-col{flex-direction:column}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.w-full{width:100%}.h-full{height:100%}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}@media (max-width:768px){h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}.card,.container{padding:var(--space-4)}table{font-size:var(--font-size-sm)}td,th{padding:var(--space-3) var(--space-4)}}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}a:focus-visible,button:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}@media print{body{background-color:#fff}.no-print{display:none}a{text-decoration:underline}}:root{--primary-50:#f0f7ff;--primary-100:#e0efff;--primary-200:#bad9ff;--primary-300:#7cc3ff;--primary-400:#36aafb;--primary-500:#0ea5e9;--primary-600:#0284c7;--primary-700:#0369a1;--primary-800:#075985;--primary-900:#0c3554;--primary-dark:#355760;--primary-dark-light:#4a6b79;--primary-dark-lighter:#5f7f8d;--neutral-0:#fff;--neutral-50:#f9fafb;--neutral-100:#f3f4f6;--neutral-150:#eeeff2;--neutral-200:#e5e7eb;--neutral-300:#d1d5db;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-600:#4b5563;--neutral-700:#374151;--neutral-800:#1f2937;--neutral-900:#111827;--success-50:#f0fdf4;--success-100:#dcfce7;--success-500:#22c55e;--success-600:#16a34a;--success-700:#15803d;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#b45309;--danger-50:#fef2f2;--danger-100:#fee2e2;--danger-500:#ef4444;--danger-600:#dc2626;--danger-700:#b91c1c;--info-50:#f0f9ff;--info-100:#e0f2fe;--info-500:#06b6d4;--info-600:#0891b2;--text-primary:#111827;--text-secondary:#4b5563;--text-tertiary:#9ca3af;--text-disabled:#d1d5db;--text-inverse:#fff;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--bg-dark:#1f2937;--border-light:#e5e7eb;--border-default:#d1d5db;--border-dark:#9ca3af;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #00000014,0 1px 2px 0 #0000000a;--shadow-md:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--font-family-primary:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",sans-serif;--font-family-secondary:"Segoe UI","Roboto","Helvetica Neue",sans-serif;--font-family-mono:"Menlo","Monaco","Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-none:0;--radius-xs:0.25rem;--radius-sm:0.375rem;--radius-base:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.25rem;--radius-full:9999px;--color-chart-accent:#355760;--color-chart-accent-fill:#35576033;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}html:not([data-theme]),html[data-theme=light]{--color-bg:var(--neutral-50);--color-surface:var(--neutral-0);--color-surface-alt:var(--neutral-100);--color-text:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-tertiary:var(--text-tertiary);--color-border:var(--border-light)}html[data-theme=dark]{--color-bg:var(--neutral-900);--color-surface:var(--neutral-800);--color-surface-alt:var(--neutral-700);--color-text:var(--neutral-0);--color-text-secondary:var(--neutral-300);--color-text-tertiary:var(--neutral-400);--color-border:var(--neutral-700);--primary-dark:#7a9ba8;--primary-dark-light:#8fabb6;--primary-dark-lighter:#a4bcc5;--text-primary:#f9fafb;--text-secondary:#d1d5db;--color-chart-accent:#7a9ba8;--color-chart-accent-fill:#7a9ba840}[data-center-type=therapy]{--color-primary:#6366f1;--color-primary-dark:#4f46e5;--color-primary-light:#e0e7ff;--primary-dark:#4f46e5}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:280px;z-index:var(--z-sticky)}.sidebar-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-3);padding:var(--space-6) var(--space-4)}.sidebar-logo{flex-shrink:0;height:2.5rem;object-fit:contain;width:2.5rem}.sidebar-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:var(--space-4) 0}.sidebar-nav-item{align-items:center;border-left:3px solid #0000;border-radius:var(--radius-base);color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--space-3);margin:var(--space-1) var(--space-2);padding:var(--space-3) var(--space-4);text-decoration:none;transition:all var(--transition-base)}.sidebar-nav-item:hover{background-color:var(--color-surface-alt);border-left-color:var(--primary-dark);color:var(--text-primary)}.sidebar-nav-item.active{background-color:#3557601a;border-left-color:var(--primary-dark);color:var(--primary-dark);font-weight:var(--font-weight-semibold)}.sidebar-footer{border-top:1px solid var(--color-border);padding:var(--space-4)}.header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);height:70px;justify-content:space-between;padding:var(--space-4) var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.header,.header-left{align-items:center;display:flex}.header-left{flex:1 1;gap:var(--space-3)}.header-logo{height:2rem;object-fit:contain;width:2rem}.header-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0}.header-right{gap:var(--space-4)}.header-right,.modal-backdrop{align-items:center;display:flex}.modal-backdrop{animation:fadeIn var(--transition-base);background-color:#00000080;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal-backdrop)}.modal{animation:slideUp var(--transition-slow);background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);max-height:90vh;max-width:500px;overflow:auto;padding:var(--space-8);position:relative;width:100%;z-index:var(--z-modal)}.modal-large{max-width:800px}.modal-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.modal-title{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.modal-body{margin-bottom:var(--space-6)}.modal-footer{border-top:1px solid var(--color-border);display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:var(--space-4)}.modal-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:var(--font-size-xl);position:absolute;right:var(--space-4);top:var(--space-4);transition:color var(--transition-base)}.modal-close:hover{color:var(--text-primary)}.dropdown{display:inline-block;position:relative}.dropdown-trigger{align-items:center;background-color:initial;border:none;border-radius:var(--radius-base);color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--space-2);padding:var(--space-2);transition:all var(--transition-base)}.dropdown-trigger:hover{background-color:var(--color-surface-alt);color:var(--text-primary)}.dropdown-menu{animation:slideDown var(--transition-base);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.dropdown-item{background:none;border:none;color:var(--text-secondary);cursor:pointer;display:block;font-size:var(--font-size-base);padding:var(--space-3) var(--space-4);text-align:left;transition:all var(--transition-base);width:100%}.dropdown-item:hover{background-color:var(--color-surface-alt);color:var(--text-primary);padding-left:var(--space-5)}.dropdown-divider{background-color:var(--color-border);height:1px;margin:var(--space-1) 0}.form-group{margin-bottom:var(--space-6)}.form-group:last-child{margin-bottom:0}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;margin-bottom:var(--space-2);text-transform:uppercase}.form-input,.form-label{color:var(--text-primary);display:block}.form-input{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);font-size:var(--font-size-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-base);width:100%}.form-input:focus{border-color:var(--primary-dark);box-shadow:0 0 0 3px #3557601a;outline:none}.form-input:disabled{background-color:var(--color-surface-alt);color:var(--text-tertiary);cursor:not-allowed}.form-error{color:var(--danger-600);margin-top:var(--space-2)}.form-error,.form-helper{font-size:var(--font-size-sm)}.form-helper{color:var(--text-tertiary);margin-top:var(--space-1)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:var(--primary-500);box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4);padding-bottom:var(--space-4)}.card-title{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0}.card-subtitle{font-size:var(--font-size-sm);margin-bottom:0;margin-top:var(--space-2)}.card-body,.card-subtitle{color:var(--text-secondary)}.card-footer{border-top:1px solid var(--color-border);margin-top:var(--space-4);padding-top:var(--space-4)}.table-container{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.table{background-color:var(--color-surface);border-collapse:collapse;width:100%}.table thead{background-color:var(--color-surface-alt);border-bottom:2px solid var(--color-border)}.table th{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-align:left;text-transform:uppercase}.table td,.table th{padding:var(--space-4) var(--space-6)}.table td{border-bottom:1px solid var(--color-border);color:var(--text-secondary)}.table tbody tr:hover{background-color:var(--color-surface-alt);transition:background-color var(--transition-base)}.table tbody tr:last-child td{border-bottom:none}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-base);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--space-2);justify-content:center;padding:var(--space-3) var(--space-5);text-decoration:none;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--primary-dark);border-color:var(--primary-dark);box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-dark-light);border-color:var(--primary-dark-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-secondary{background-color:var(--color-surface-alt);border-color:var(--color-border);box-shadow:var(--shadow-sm);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--color-border);border-color:var(--neutral-400);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-danger{background-color:var(--danger-600);border-color:var(--danger-600);box-shadow:var(--shadow-sm);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--danger-700);border-color:var(--danger-700);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-ghost{background-color:initial;border-color:#0000;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-surface-alt);border-color:var(--color-border);color:var(--text-primary)}.btn-small{font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3)}.btn-large{font-size:var(--font-size-lg);padding:var(--space-4) var(--space-6)}.badge{border-radius:var(--radius-full);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:var(--space-1) var(--space-3);text-transform:uppercase;white-space:nowrap}.badge-primary{background-color:#3557601a;color:var(--primary-dark)}.badge-success{background-color:var(--success-50);color:var(--success-700)}.badge-warning{background-color:var(--warning-50);color:var(--warning-700)}.badge-danger{background-color:var(--danger-50);color:var(--danger-700)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loader{animation:spin .8s linear infinite;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--primary-dark);display:inline-block;height:20px;width:20px}@media (max-width:768px){.sidebar{width:60px}.sidebar-nav-item span{display:none}.modal{padding:var(--space-4)}.table td,.table th{padding:var(--space-3) var(--space-4)}.btn,.table td,.table th{font-size:var(--font-size-sm)}.btn{padding:var(--space-2) var(--space-4)}}:root{--mobile-primary:#10b981;--mobile-primary-hover:#059669;--mobile-primary-light:#10b9811a;--mobile-bg-app:#f3f4f6;--mobile-bg-card:#fff;--mobile-bg-surface:#f9fafb;--mobile-text-heading:#1f2937;--mobile-text-body:#4b5563;--mobile-text-secondary:#6b7280;--mobile-text-tertiary:#9ca3af;--mobile-border-light:#e5e7eb;--mobile-border-default:#d1d5db;--mobile-shadow-sm:0 1px 2px 0 #0000000d;--mobile-shadow-md:0 4px 6px -1px #0000001a;--mobile-touch-min:48px;--mobile-input-height:50px;--mobile-button-height:50px;--mobile-padding-screen:16px;--mobile-padding-card:16px;--mobile-gap-sm:8px;--mobile-gap-md:16px;--mobile-gap-lg:24px;--mobile-radius-sm:8px;--mobile-radius-md:12px;--mobile-radius-lg:16px;--mobile-radius-full:9999px;--mobile-font-xs:12px;--mobile-font-sm:14px;--mobile-font-base:16px;--mobile-font-lg:18px;--mobile-font-xl:20px;--mobile-font-2xl:24px}@media (max-width:768px){body{background-color:#f3f4f6;background-color:var(--mobile-bg-app);color:#4b5563;color:var(--mobile-text-body);font-size:16px;font-size:var(--mobile-font-base);line-height:1.6}h1{font-size:24px;font-size:var(--mobile-font-2xl)}h1,h2{color:#1f2937;color:var(--mobile-text-heading);font-weight:700;line-height:1.25}h2{font-size:20px;font-size:var(--mobile-font-xl)}h3{font-size:18px;font-size:var(--mobile-font-lg);line-height:1.3}h3,h4,h5,h6{color:#1f2937;color:var(--mobile-text-heading);font-weight:600}h4,h5,h6,p{font-size:16px;font-size:var(--mobile-font-base)}p{color:#4b5563;color:var(--mobile-text-body);line-height:1.6}small{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm)}input,select,textarea{background-color:#fff;background-color:var(--mobile-bg-card);border:1px solid #d1d5db;border:1px solid var(--mobile-border-default);border-radius:12px;border-radius:var(--mobile-radius-md);color:#1f2937;color:var(--mobile-text-heading);font-size:16px!important;font-size:var(--mobile-font-base)!important;min-height:50px;min-height:var(--mobile-input-height);padding:12px 16px;transition:all .2s ease}input:focus,select:focus,textarea:focus{border-color:#10b981;border-color:var(--mobile-primary);border-width:2px;box-shadow:0 0 0 3px #10b9811a;box-shadow:0 0 0 3px var(--mobile-primary-light);outline:none}input[type=checkbox],input[type=radio]{height:24px;min-height:24px;width:24px}label{color:#1f2937;color:var(--mobile-text-heading);display:block;font-size:16px;font-size:var(--mobile-font-base);font-weight:500;margin-bottom:8px}.form-group{margin-bottom:16px;margin-bottom:var(--mobile-gap-md)}.btn,button{align-items:center;border:none;border-radius:12px;border-radius:var(--mobile-radius-md);cursor:pointer;display:inline-flex;font-size:16px;font-size:var(--mobile-font-base);font-weight:600;gap:8px;justify-content:center;min-height:50px;min-height:var(--mobile-button-height);padding:12px 24px;touch-action:manipulation;transition:all .2s ease}.btn-primary,button[type=submit]{background-color:#10b981;background-color:var(--mobile-primary);color:#fff;font-weight:600;width:100%}.btn-primary:hover,button[type=submit]:hover{background-color:#059669;background-color:var(--mobile-primary-hover);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--mobile-shadow-md)}.btn-primary:active{transform:scale(.98)}.btn-cancel,.btn-secondary{background-color:initial;border:none;color:#6b7280;color:var(--mobile-text-secondary)}.fab{align-items:center;background-color:#10b981;background-color:var(--mobile-primary);border:none;border-radius:9999px;border-radius:var(--mobile-radius-full);bottom:80px;box-shadow:0 4px 12px #10b9814d;color:#fff;display:flex;height:56px;justify-content:center;left:16px;padding:0;position:fixed;width:56px;z-index:100}.fab:hover{box-shadow:0 6px 16px #10b98166;transform:scale(1.05)}}@media (min-width:769px){.bottom-nav{display:none!important}}@media (max-width:768px){.bottom-nav{background-color:#fff;background-color:var(--mobile-bg-card);border-top:1px solid #e5e7eb;border-top:1px solid var(--mobile-border-light);bottom:0;box-shadow:0 -2px 8px #0000000d;height:64px;justify-content:space-around;left:0;padding:8px 0;position:fixed;right:0;z-index:1000}.bottom-nav,.bottom-nav-item{align-items:center;display:flex}.bottom-nav-item{background:#0000;border:none;color:#6b7280;color:var(--mobile-text-secondary);cursor:pointer;flex:1 1;flex-direction:column;gap:4px;justify-content:center;min-height:48px;padding:8px;text-decoration:none;transition:color .2s}.bottom-nav-item.active{color:#10b981;color:var(--mobile-primary)}.bottom-nav-item .icon{font-size:24px}.bottom-nav-item .label{font-size:11px;font-weight:500}.sidebar{display:none}.main-content{padding-bottom:80px}.card{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:12px;border-radius:var(--mobile-radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);margin-bottom:16px;margin-bottom:var(--mobile-gap-md);padding:16px;padding:var(--mobile-padding-card)}.card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--mobile-shadow-md)}.container,.page-container{padding:16px;padding:var(--mobile-padding-screen)}.stats-container{-webkit-overflow-scrolling:touch;display:flex;gap:16px;gap:var(--mobile-gap-md);overflow-x:auto;padding-bottom:8px}}@media (max-width:768px){.stats-container::-webkit-scrollbar{height:4px}.stat-card{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:12px;border-radius:var(--mobile-radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);flex-shrink:0;min-width:140px;padding:16px}.stat-card .icon-container{align-items:center;background-color:#10b9811a;background-color:var(--mobile-primary-light);border-radius:9999px;border-radius:var(--mobile-radius-full);display:flex;height:40px;justify-content:center;margin-bottom:8px;width:40px}.stat-card .value{color:#1f2937;color:var(--mobile-text-heading);font-size:32px;font-weight:700;line-height:1}.stat-card .label{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm);margin-top:4px}.modal.centered{display:none}.bottom-sheet{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:16px 16px 0 0;border-radius:var(--mobile-radius-lg) var(--mobile-radius-lg) 0 0;bottom:0;box-shadow:0 -4px 20px #00000026;left:0;max-height:90vh;overflow-y:auto;padding:24px 16px 32px;padding:24px var(--mobile-padding-screen) 32px;position:fixed;right:0;transform:translateY(100%);transition:transform .3s ease;z-index:1050;z-index:var(--z-modal,1050)}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{background-color:#d1d5db;background-color:var(--mobile-border-default);border-radius:2px;height:4px;margin:0 auto 20px;width:40px}.bottom-sheet-title{color:#1f2937;color:var(--mobile-text-heading);font-size:20px;font-size:var(--mobile-font-xl);font-weight:700;margin-bottom:16px;margin-bottom:var(--mobile-gap-md)}.bottom-sheet-content{display:flex;flex-direction:column;gap:16px;gap:var(--mobile-gap-md)}.bottom-sheet-actions{display:flex;flex-direction:column;gap:8px;gap:var(--mobile-gap-sm);margin-top:24px;margin-top:var(--mobile-gap-lg)}.bottom-sheet-backdrop{background-color:#00000080;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:1040;z-index:var(--z-modal-backdrop,1040)}.bottom-sheet-backdrop.open{opacity:1;pointer-events:all}.list-item{align-items:center;background-color:#fff;background-color:var(--mobile-bg-card);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--mobile-border-light);display:flex;gap:12px;min-height:48px;min-height:var(--mobile-touch-min);padding:12px 16px;transition:background-color .2s}.list-item:hover{background-color:#f9fafb;background-color:var(--mobile-bg-surface)}.list-item-avatar{align-items:center;background-color:#10b981;background-color:var(--mobile-primary);border-radius:9999px;border-radius:var(--mobile-radius-full);color:#fff;display:flex;flex-shrink:0;font-size:16px;font-size:var(--mobile-font-base);font-weight:600;height:40px;justify-content:center;width:40px}.list-item-content{flex:1 1;min-width:0}.list-item-title{color:#1f2937;color:var(--mobile-text-heading);font-size:16px;font-size:var(--mobile-font-base);font-weight:600;margin-bottom:2px}.list-item-subtitle,.list-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-subtitle{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm)}.list-item-action{color:#9ca3af;color:var(--mobile-text-tertiary);flex-shrink:0;font-size:20px}.search-bar{background-color:#f3f4f6;background-color:var(--mobile-bg-app);padding:16px;padding:var(--mobile-padding-screen);padding-bottom:8px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.search-input{background-color:#f9fafb;background-color:var(--mobile-bg-surface);border:none;border-radius:9999px;border-radius:var(--mobile-radius-full);color:#1f2937;color:var(--mobile-text-heading);font-size:16px;font-size:var(--mobile-font-base);height:44px;padding:0 16px 0 40px;width:100%}.search-icon,.search-input::placeholder{color:#9ca3af;color:var(--mobile-text-tertiary)}.search-icon{left:28px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.mobile-header{background-color:#fff;background-color:var(--mobile-bg-card);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--mobile-border-light);padding:16px;padding:16px var(--mobile-padding-screen);position:-webkit-sticky;position:sticky;top:0;z-index:100}.mobile-header-greeting{color:#1f2937;color:var(--mobile-text-heading);font-size:24px;font-size:var(--mobile-font-2xl);font-weight:700;margin-bottom:4px}.mobile-header-subtitle{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm)}.mobile-header-actions{align-items:center;display:flex;gap:8px}.mobile-header-icon{border:none;border-radius:9999px;border-radius:var(--mobile-radius-full);color:#6b7280;color:var(--mobile-text-secondary);display:flex;height:40px;justify-content:center;width:40px}.date-pill-selector,.mobile-header-icon{align-items:center;background-color:#f9fafb;background-color:var(--mobile-bg-surface);cursor:pointer}.date-pill-selector{border:1px solid #e5e7eb;border:1px solid var(--mobile-border-light);border-radius:9999px;border-radius:var(--mobile-radius-full);color:#1f2937;color:var(--mobile-text-heading);display:inline-flex;font-size:14px;font-size:var(--mobile-font-sm);gap:8px;min-height:40px;padding:8px 16px}.date-pill-selector:hover{background-color:#e5e7eb;background-color:var(--mobile-border-light)}.calendar-week-grid{display:none}.calendar-agenda-view{display:block}.calendar-event-item{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:12px;border-radius:var(--mobile-radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);display:flex;gap:12px;margin-bottom:8px;margin-bottom:var(--mobile-gap-sm);padding:16px}.calendar-event-time{color:#1f2937;color:var(--mobile-text-heading);font-size:18px;font-size:var(--mobile-font-lg);font-weight:600;min-width:60px}.calendar-event-details{flex:1 1}.calendar-event-title{color:#1f2937;color:var(--mobile-text-heading);font-size:16px;font-size:var(--mobile-font-base);font-weight:600;margin-bottom:4px}.calendar-event-meta{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm)}.view-switcher{background-color:#f9fafb;background-color:var(--mobile-bg-surface);border-radius:12px;border-radius:var(--mobile-radius-md);display:flex;margin-bottom:16px;margin-bottom:var(--mobile-gap-md);padding:4px}.view-switcher-button{background:#0000;border:none;border-radius:8px;border-radius:var(--mobile-radius-sm);color:#6b7280;color:var(--mobile-text-secondary);flex:1 1;font-size:14px;font-size:var(--mobile-font-sm);font-weight:500;padding:8px 16px;transition:all .2s}.view-switcher-button.active{box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);color:#10b981;color:var(--mobile-primary)}.selection-card,.view-switcher-button.active{background-color:#fff;background-color:var(--mobile-bg-card)}.selection-card{align-items:center;border:2px solid #d1d5db;border:2px solid var(--mobile-border-default);border-radius:12px;border-radius:var(--mobile-radius-md);color:#1f2937;color:var(--mobile-text-heading);cursor:pointer;display:flex;font-size:16px;font-size:var(--mobile-font-base);justify-content:center;margin-bottom:8px;min-height:48px;min-height:var(--mobile-touch-min);padding:16px;text-align:right;transition:all .2s;width:100%}.selection-card:hover{background-color:#10b9811a;background-color:var(--mobile-primary-light)}.selection-card.selected,.selection-card:hover{border-color:#10b981;border-color:var(--mobile-primary)}.selection-card.selected{background-color:#10b981;background-color:var(--mobile-primary);color:#fff;font-weight:600}.selection-card input[type=radio]{display:none}.upload-zone{align-items:center;background-color:#f9fafb;background-color:var(--mobile-bg-surface);border:2px dashed #d1d5db;border:2px dashed var(--mobile-border-default);border-radius:12px;border-radius:var(--mobile-radius-md);cursor:pointer;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:160px;padding:24px;transition:all .2s;width:100%}.upload-zone:hover{background-color:#10b9811a;background-color:var(--mobile-primary-light);border-color:#10b981;border-color:var(--mobile-primary)}.upload-icon{color:#10b981;color:var(--mobile-primary);font-size:48px}.upload-text{color:#6b7280;color:var(--mobile-text-secondary);font-size:16px;font-size:var(--mobile-font-base);text-align:center}.upload-preview{overflow:hidden;position:relative}.upload-preview,.upload-preview img{border-radius:12px;border-radius:var(--mobile-radius-md)}.upload-preview img{height:auto;width:100%}.upload-preview-remove{align-items:center;background-color:#0009;border:none;border-radius:9999px;border-radius:var(--mobile-radius-full);color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;left:8px;position:absolute;top:8px;width:32px}table.desktop-table{display:none}.mobile-table-card{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:12px;border-radius:var(--mobile-radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);margin-bottom:8px;margin-bottom:var(--mobile-gap-sm);padding:16px}.mobile-table-row{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--mobile-border-light);display:flex;justify-content:space-between;padding:8px 0}.mobile-table-row:last-child{border-bottom:none}.mobile-table-label{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm);font-weight:500}.mobile-table-value{color:#1f2937;color:var(--mobile-text-heading);font-size:16px;font-size:var(--mobile-font-base);font-weight:400}.auth-container{background-color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:16px;padding:var(--mobile-padding-screen)}.auth-logo{height:auto;margin:0 auto 40px;width:120px}.auth-title{color:#1f2937;color:var(--mobile-text-heading);font-size:24px;font-size:var(--mobile-font-2xl);font-weight:700;margin-bottom:32px;text-align:center}.auth-form{display:flex;flex-direction:column;gap:16px;gap:var(--mobile-gap-md)}.auth-input{border:1px solid #e5e7eb;border:1px solid var(--mobile-border-light);border-radius:12px;border-radius:var(--mobile-radius-md);font-size:16px;font-size:var(--mobile-font-base);height:56px}.auth-button{border-radius:12px;border-radius:var(--mobile-radius-md);font-weight:700;height:50px;margin-top:8px}.activity-item{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--mobile-border-light);display:flex;gap:12px;padding:12px}.activity-icon{align-items:center;background-color:#10b9811a;background-color:var(--mobile-primary-light);border-radius:9999px;border-radius:var(--mobile-radius-full);color:#10b981;color:var(--mobile-primary);display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.activity-content{flex:1 1}.activity-title{color:#1f2937;color:var(--mobile-text-heading);font-size:16px;font-size:var(--mobile-font-base);font-weight:600;margin-bottom:2px}.activity-time{color:#6b7280;color:var(--mobile-text-secondary);font-size:14px;font-size:var(--mobile-font-sm)}.chart-container{background-color:#fff;background-color:var(--mobile-bg-card);border-radius:12px;border-radius:var(--mobile-radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--mobile-shadow-sm);margin-bottom:16px;margin-bottom:var(--mobile-gap-md);padding:16px}.chart-title{color:#1f2937;color:var(--mobile-text-heading);font-size:18px;font-size:var(--mobile-font-lg);font-weight:600;margin-bottom:16px}.chart-container canvas{max-height:200px}.badge{align-items:center;border-radius:9999px;border-radius:var(--mobile-radius-full);display:inline-flex;font-size:12px;font-size:var(--mobile-font-xs);font-weight:600;line-height:1;padding:4px 12px}.badge-success{background-color:#dcfce7;color:#15803d}.badge-pending{background-color:#fef3c7;color:#b45309}.badge-danger{background-color:#fee2e2;color:#b91c1c}.mobile-only{display:block!important}.desktop-only{display:none!important}.full-width{width:100%!important}.text-center-mobile{text-align:center}.mt-mobile{margin-top:16px;margin-top:var(--mobile-gap-md)}.mb-mobile{margin-bottom:16px;margin-bottom:var(--mobile-gap-md)}.px-mobile{padding-left:16px;padding-left:var(--mobile-padding-screen);padding-right:16px;padding-right:var(--mobile-padding-screen)}.py-mobile{padding-bottom:16px;padding-bottom:var(--mobile-gap-md);padding-top:16px;padding-top:var(--mobile-gap-md)}[dir=rtl] .activity-icon,[dir=rtl] .list-item-avatar{margin-left:12px;margin-right:0}[dir=rtl] .search-icon{left:auto;right:28px}[dir=rtl] .fab{left:auto;right:16px}[dir=rtl] .upload-preview-remove{left:auto;right:8px}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.scrollable{overflow-y:auto}.horizontal-scroll,.scrollable{-webkit-overflow-scrolling:touch}.horizontal-scroll{overflow-x:auto;overflow-y:hidden}}:root{--color-primary:var(--primary-500);--color-primary-dark:var(--primary-dark);--color-primary-light:var(--primary-300);--color-primary-lighter:var(--primary-200);--color-background:var(--color-bg);--color-surface:var(--bg-primary);--color-surface-alt:var(--bg-secondary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-tertiary:var(--text-tertiary);--color-success:var(--success-600);--color-success-light:var(--success-100);--color-warning:var(--warning-600);--color-warning-light:var(--warning-100);--color-danger:var(--danger-600);--color-danger-light:var(--danger-100);--color-error:var(--danger-600);--color-info:var(--info-600);--color-info-light:var(--info-100);--color-border:var(--border-light);--color-border-dark:var(--border-dark);--color-primary:var(--primary-dark);--primary:var(--primary-dark);--primary-light:#3557601a;--secondary:#6366f1;--success:var(--primary-dark);--danger:var(--danger-600);--warning:var(--warning-600);--info:var(--info-600);--white:var(--bg-primary);--black:#000;--gray-50:var(--color-bg);--gray-100:var(--color-surface-alt);--gray-200:var(--color-border);--gray-300:var(--color-border);--gray-400:var(--color-text-tertiary);--gray-500:var(--color-border);--gray-600:#4b5563;--gray-700:var(--color-text-secondary);--gray-800:var(--color-text-primary);--gray-900:var(--color-text-primary)}

/*!
 * Quill Editor v2.0.3
 * https://quilljs.com
 * Copyright (c) 2017-2024, Slab
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;height:100%;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre{margin:0;padding:0}@supports (counter-set:none){.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor p{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor p{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor li,.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"\2022"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"\2611"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"\2610"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor .ql-code-block-container,.ql-snow .ql-editor code{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes skeleton-shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{animation:skeleton-shimmer 2s linear infinite;background:linear-gradient(90deg,#e2e8f0,#f1f5f9 50%,#e2e8f0);background-size:1000px 100%;display:inline-block}[dir=rtl] .skeleton{background:linear-gradient(-90deg,#e2e8f0,#f1f5f9 50%,#e2e8f0);background-size:1000px 100%}@media (prefers-color-scheme:dark){.skeleton{background-size:1000px 100%}[dir=rtl] .skeleton{background:linear-gradient(-90deg,#334155,#475569 50%,#334155);background-size:1000px 100%}}.tutorial-overlay{animation:fadeIn .3s ease-in}.tutorial-spotlight{animation:pulseSpotlight 2s ease-in-out infinite}.tutorial-tooltip{animation:slideIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseSpotlight{0%,to{box-shadow:0 0 0 9999px #00000080,0 0 0 4px #10b9814d}50%{box-shadow:0 0 0 9999px #00000080,0 0 0 8px #10b98180}}.tutorial-tooltip:before{border-style:solid;content:"";height:0;position:absolute;width:0}.tutorial-tooltip-top:before{border-color:#fff #0000 #0000;border-width:10px 10px 0;bottom:-10px;left:50%;transform:translateX(-50%)}.tutorial-tooltip-bottom:before{border-color:#0000 #0000 #fff;border-width:0 10px 10px;left:50%;top:-10px;transform:translateX(-50%)}.tutorial-tooltip-left:before{border-color:#0000 #0000 #0000 #fff;border-width:10px 0 10px 10px;right:-10px;top:50%;transform:translateY(-50%)}.tutorial-tooltip-right:before{border-color:#0000 #fff #0000 #0000;border-width:10px 10px 10px 0;left:-10px;top:50%;transform:translateY(-50%)}.tutorial-tooltip-center:before{display:none}.tutorial-tooltip button:hover{opacity:.8;transition:opacity .2s ease}.tutorial-tooltip button:active{transform:scale(.98)}@media (max-width:768px){.tutorial-tooltip{left:5vw!important;max-width:90vw!important;right:5vw!important;width:auto!important}.tutorial-tooltip:before{display:none}}
/*# sourceMappingURL=main.0bd8c8d0.css.map*/