:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:var(--font-weight-normal);color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:var(--font-weight-medium);color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}#root{display:flex;flex-direction:column;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:var(--border-radius-lg);border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:var(--font-weight-medium);font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:var(--color-bg-white)}a:hover{color:#747bff}button{background-color:var(--color-bg-primary)}}:root{--color-brand-primary: #667eea;--color-brand-primary-dark: #5568d3;--color-brand-primary-light: rgba(102, 126, 234, .1);--color-brand-secondary: #764ba2;--color-success: #10b981;--color-success-dark: #059669;--color-success-light: #d1fae5;--color-success-text: #047857;--color-danger: #dc2626;--color-danger-dark: #b91c1c;--color-danger-light: #fee2e2;--color-danger-text: #991b1b;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-warning-light: #fef3c7;--color-warning-text: #92400e;--color-info: #2563eb;--color-info-dark: #1d4ed8;--color-info-light: #dbeafe;--color-info-text: #1e40af;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-tertiary: #6b7280;--color-text-disabled: #9ca3af;--color-text-inverse: #ffffff;--color-bg-white: #ffffff;--color-bg-primary: #f9fafb;--color-bg-secondary: #f3f4f6;--color-bg-success: #d1fae5;--color-bg-warning: #fef3c7;--color-bg-danger: #fee2e2;--color-bg-info: #dbeafe;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border-light: #e5e7eb;--color-border-medium: #d1d5db;--color-border-dark: #6b7280;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 2.5rem;--spacing-4xl: 3rem;--font-family-base: system-ui, Avenir, Helvetica, Arial, sans-serif;--font-family-mono: "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--border-radius-2xl: 1rem;--border-radius-full: 9999px;--shadow-xs: 0 1px 1px 0 rgba(0, 0, 0, .03);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .1);--shadow-xl: 0 10px 40px rgba(0, 0, 0, .2);--shadow-2xl: 0 20px 60px rgba(0, 0, 0, .3);--shadow-color-light: rgba(0, 0, 0, .05);--shadow-color-medium: rgba(0, 0, 0, .1);--shadow-color-dark: rgba(0, 0, 0, .2);--shadow-color-brand: rgba(102, 126, 234, .4);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-slower: .5s ease;--gradient-brand: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-danger: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);--z-hide: -1;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--breakpoint-xs: 0;--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1400px;--opacity-0: 0;--opacity-5: .05;--opacity-10: .1;--opacity-20: .2;--opacity-30: .3;--opacity-40: .4;--opacity-50: .5;--opacity-60: .6;--opacity-70: .7;--opacity-80: .8;--opacity-90: .9;--opacity-100: 1}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-disabled{color:var(--color-text-disabled)}.text-brand{color:var(--color-brand-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.text-white{color:var(--color-text-inverse)}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.m-0{margin:0}.m-auto{margin:auto}.mt-0{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.px-sm{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.py-sm{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-1{flex:1}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.align-baseline{align-items:baseline}.align-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.bg-white{background-color:var(--color-bg-white)}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-success{background-color:var(--color-bg-success)}.bg-warning{background-color:var(--color-bg-warning)}.bg-danger{background-color:var(--color-bg-danger)}.bg-info{background-color:var(--color-bg-info)}.bg-brand{background:var(--gradient-brand)}.border{border:var(--border-width-thin) solid var(--color-border-light)}.border-none{border:none}.border-t{border-top:var(--border-width-thin) solid var(--color-border-light)}.border-b{border-bottom:var(--border-width-thin) solid var(--color-border-light)}.border-l{border-left:var(--border-width-thin) solid var(--color-border-light)}.border-r{border-right:var(--border-width-thin) solid var(--color-border-light)}.border-brand{border-color:var(--color-brand-primary)}.border-success{border-color:var(--color-success)}.border-danger{border-color:var(--color-danger)}.border-warning{border-color:var(--color-warning)}.rounded-sm{border-radius:var(--border-radius-sm)}.rounded-md{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:var(--border-radius-xl)}.rounded-2xl{border-radius:var(--border-radius-2xl)}.rounded-full{border-radius:var(--border-radius-full)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-brand{box-shadow:var(--shadow-color-brand) 0 4px 12px}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}.max-w-sm{max-width:var(--container-sm)}.max-w-md{max-width:var(--container-md)}.max-w-lg{max-width:var(--container-lg)}.max-w-xl{max-width:var(--container-xl)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-full{max-width:100%}.opacity-50{opacity:var(--opacity-50)}.opacity-75{opacity:var(--opacity-75)}.opacity-100{opacity:var(--opacity-100)}.cursor-auto{cursor:auto}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.visible{visibility:visible}.invisible{visibility:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.static{position:static}@media(max-width:768px){.hidden-sm{display:none}}@media(min-width:769px){.hidden-lg{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:var(--border-width-thin) solid transparent;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:inherit;line-height:var(--line-height-tight);text-decoration:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;text-align:center;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--color-brand-primary);color:var(--color-text-inverse);border-color:var(--color-brand-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-brand-primary-dark);border-color:var(--color-brand-primary-dark);box-shadow:var(--shadow-color-brand) 0 4px 12px}.btn-primary:active:not(:disabled){background-color:#4a56be;transform:translateY(1px)}.btn-secondary{background-color:var(--color-bg-white);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-medium)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-border-medium);box-shadow:0 2px 4px #0000001a}.btn-secondary:active:not(:disabled){background-color:var(--color-border-light);border-color:var(--color-border-medium)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-success{background-color:var(--color-success);color:var(--color-text-inverse);border-color:var(--color-success)}.btn-success:hover:not(:disabled){background-color:var(--color-success-dark);border-color:var(--color-success-dark);box-shadow:0 4px 12px #10b98166}.btn-danger{background-color:var(--color-danger);color:var(--color-text-inverse);border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-dark);border-color:var(--color-danger-dark);box-shadow:0 4px 12px #dc262666}.btn-warning{background-color:var(--color-warning);color:var(--color-text-primary);border-color:var(--color-warning)}.btn-warning:hover:not(:disabled){background-color:var(--color-warning-dark);border-color:var(--color-warning-dark)}.btn-info{background-color:var(--color-info);color:var(--color-text-inverse);border-color:var(--color-info)}.btn-info:hover:not(:disabled){background-color:var(--color-info-dark);border-color:var(--color-info-dark)}.btn-outline-primary{background-color:transparent;color:var(--color-brand-primary);border-color:var(--color-brand-primary)}.btn-outline-primary:hover:not(:disabled){background-color:var(--color-brand-primary-light);color:var(--color-brand-primary-dark)}.btn-outline-danger{background-color:transparent;color:var(--color-danger);border-color:var(--color-danger)}.btn-outline-danger:hover:not(:disabled){background-color:var(--color-bg-danger);color:var(--color-danger-dark)}.btn-outline-success{background-color:transparent;color:var(--color-success);border-color:var(--color-success)}.btn-outline-success:hover:not(:disabled){background-color:var(--color-bg-success);color:var(--color-success-dark)}.btn-ghost{background:none;border:none;color:var(--color-brand-primary);padding:var(--spacing-sm) var(--spacing-md)}.btn-ghost:hover:not(:disabled){background-color:var(--color-brand-primary-light);color:var(--color-brand-primary-dark)}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-base)}.btn-block{width:100%;display:flex}.btn-icon{padding:var(--spacing-sm);width:2.5rem;height:2.5rem;min-width:2.5rem}.btn-group{display:flex;gap:0}.btn-group .btn{border-radius:0;border-right:none}.btn-group .btn:first-child{border-top-left-radius:var(--border-radius-md);border-bottom-left-radius:var(--border-radius-md)}.btn-group .btn:last-child{border-right:var(--border-width-thin) solid;border-top-right-radius:var(--border-radius-md);border-bottom-right-radius:var(--border-radius-md)}.btn.loading{pointer-events:none;opacity:.8}.btn.loading:after{content:"";display:inline-block;width:1rem;height:1rem;margin-left:var(--spacing-sm);border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl);transition:box-shadow var(--transition-base),transform var(--transition-base);border:var(--border-width-thin) solid transparent}.card:hover{box-shadow:var(--shadow-md)}.card-header{padding-bottom:var(--spacing-lg);margin-bottom:var(--spacing-lg);border-bottom:var(--border-width-thin) solid var(--color-border-light);display:flex;justify-content:space-between;align-items:flex-start}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;line-height:var(--line-height-tight)}.card-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:var(--spacing-xs) 0 0 0}.card-body{padding:var(--spacing-xl)}.card-footer{padding-top:var(--spacing-lg);margin-top:var(--spacing-lg);border-top:var(--border-width-thin) solid var(--color-border-light);display:flex;justify-content:flex-end;gap:var(--spacing-lg)}.card-bordered{border-color:var(--color-border-light)}.card-elevated{box-shadow:var(--shadow-md)}.card-elevated:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-highlighted{border:var(--border-width-medium) solid var(--color-brand-primary);box-shadow:0 4px 16px #667eea33}.card-success{border-left:var(--border-width-thick) solid var(--color-success)}.card-danger{border-left:var(--border-width-thick) solid var(--color-danger)}.card-warning{border-left:var(--border-width-thick) solid var(--color-warning)}.card-info{border-left:var(--border-width-thick) solid var(--color-info)}.dashboard-card{background:var(--color-bg-white);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-md);transition:box-shadow var(--transition-slow),transform var(--transition-slow);border:var(--border-width-thin) solid var(--color-border-light)}.dashboard-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.dashboard-card h1,.dashboard-card h2,.dashboard-card h3{margin-top:0;color:var(--color-brand-primary)}.dashboard-card h2{font-size:var(--font-size-2xl)}.card-compact{padding:var(--spacing-lg)}.card-compact .card-header{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md)}.card-compact .card-body{padding:var(--spacing-lg)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}@media(max-width:768px){.card-grid{grid-template-columns:1fr}}.card-empty{text-align:center;padding:var(--spacing-4xl) var(--spacing-xl);color:var(--color-text-secondary)}.card-empty svg{width:4rem;height:4rem;margin-bottom:var(--spacing-xl);opacity:.5}.card-empty p{margin:0}.form-group{display:flex;flex-direction:column;margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm);color:var(--color-text-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.form-group label.required:after{content:" *";color:var(--color-danger);font-weight:var(--font-weight-bold)}.form-control,.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-md);border:var(--border-width-thin) solid var(--color-border-medium);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-family:inherit;line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-white);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base)}.form-control::placeholder,.form-group input::placeholder{color:var(--color-text-disabled)}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-light);background-color:var(--color-bg-white)}.form-control:disabled,.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:var(--color-bg-primary);cursor:not-allowed;opacity:.7}.form-select,.form-group select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--spacing-md) center;background-size:20px;padding-right:2.5rem;cursor:pointer}.form-group textarea{resize:vertical;min-height:100px;font-family:var(--font-family-mono)}.form-row-3{grid-template-columns:1fr 1fr 1fr}@media(max-width:768px){.form-row,.form-row-3{grid-template-columns:1fr}}.form-control.is-valid,.form-group input.is-valid{border-color:var(--color-success)}.form-control.is-valid:focus,.form-group input.is-valid:focus{box-shadow:0 0 0 3px #10b9811a;border-color:var(--color-success)}.form-control.is-invalid,.form-group input.is-invalid{border-color:var(--color-danger)}.form-control.is-invalid:focus,.form-group input.is-invalid:focus{box-shadow:0 0 0 3px #dc26261a;border-color:var(--color-danger)}.field-error{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-danger);font-weight:var(--font-weight-medium)}.field-success{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-success);font-weight:var(--font-weight-medium)}.field-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.error-message{background-color:var(--color-bg-danger);color:var(--color-danger-dark);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);border-left:var(--border-width-thick) solid var(--color-danger);line-height:var(--line-height-normal)}.error-message a{color:var(--color-danger-dark);text-decoration:underline}.success-message{background-color:var(--color-bg-success);color:var(--color-success-text);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);border-left:var(--border-width-thick) solid var(--color-success);line-height:var(--line-height-normal)}.warning-message{background-color:var(--color-bg-warning);color:var(--color-warning-text);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);border-left:var(--border-width-thick) solid var(--color-warning);line-height:var(--line-height-normal)}.info-message{background-color:var(--color-bg-info);color:var(--color-info-text);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);border-left:var(--border-width-thick) solid var(--color-info);line-height:var(--line-height-normal)}.form-check{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.form-check input[type=checkbox],.form-check input[type=radio]{width:auto;margin:0;cursor:pointer;accent-color:var(--color-brand-primary)}.form-check label{margin:0;cursor:pointer;font-weight:var(--font-weight-normal)}.form-switch{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.form-switch input[type=checkbox]{display:none}.form-switch-slider{position:relative;display:inline-block;width:3rem;height:1.5rem;background-color:var(--color-border-medium);border-radius:var(--border-radius-full);cursor:pointer;transition:background-color var(--transition-base)}.form-switch-slider:before{content:"";position:absolute;height:1.25rem;width:1.25rem;left:.125rem;bottom:.125rem;background-color:#fff;border-radius:50%;transition:transform var(--transition-base)}.form-switch input[type=checkbox]:checked+.form-switch-slider{background-color:var(--color-brand-primary)}.form-switch input[type=checkbox]:checked+.form-switch-slider:before{transform:translate(1.5rem)}fieldset{border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--border-radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}legend{padding:0 var(--spacing-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.table-wrapper{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:var(--border-width-thin) solid var(--color-border-light);margin-bottom:var(--spacing-xl)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table thead{background-color:var(--color-bg-primary);border-bottom:var(--border-width-thin) solid var(--color-border-light)}.table th{padding:var(--spacing-lg) var(--spacing-xl);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-gray-600);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.025em}.table th[data-sortable=true]{cursor:pointer;-webkit-user-select:none;user-select:none}.table th[data-sortable=true]:hover{background-color:var(--color-bg-secondary)}.table tbody{background-color:var(--color-bg-white)}.table tbody tr{border-bottom:var(--border-width-thin) solid var(--color-border-light);transition:background-color var(--transition-fast)}.table tbody tr:hover{background-color:var(--color-bg-primary);cursor:pointer}.table tbody tr:last-child{border-bottom:none}.table td{padding:var(--spacing-lg) var(--spacing-xl);color:var(--color-text-primary);vertical-align:middle}.table-striped tbody tr:nth-child(odd){background-color:var(--color-bg-primary)}.table-striped tbody tr:nth-child(odd):hover{background-color:var(--color-bg-secondary)}.table-compact td,.table-compact th{padding:var(--spacing-md) var(--spacing-lg)}.table-status{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs)}.table-status.status-active{background-color:var(--color-bg-success);color:var(--color-success-text)}.table-status.status-inactive{background-color:var(--color-bg-secondary);color:var(--color-text-secondary)}.table-status.status-error{background-color:var(--color-bg-danger);color:var(--color-danger-dark)}.table-status.status-warning{background-color:var(--color-bg-warning);color:var(--color-warning-text)}.table-empty{padding:var(--spacing-4xl);text-align:center;color:var(--color-text-tertiary);background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.table-empty svg{width:3rem;height:3rem;margin-bottom:var(--spacing-lg);opacity:.5}.table-empty p{margin:0}.table-loading{padding:var(--spacing-2xl);text-align:center;color:var(--color-text-secondary);background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.table-pagination{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-top:var(--border-width-thin) solid var(--color-border-light);background-color:var(--color-bg-primary)}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pagination-controls{display:flex;gap:var(--spacing-sm)}.pagination-controls button{padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--border-radius-md);background-color:var(--color-bg-white);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base)}.pagination-controls button:hover{background-color:var(--color-border-light)}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.table-wrapper{border:none;box-shadow:none;background:transparent;overflow:visible;margin-bottom:var(--spacing-lg)}.table{display:block}.table thead{display:none}.table tbody{display:block}.table tbody tr{display:block;background:var(--color-bg-white);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg);padding:0}.table tbody tr:hover{background-color:var(--color-bg-white);border-color:var(--color-border-medium)}.table td{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);text-align:right;border-bottom:var(--border-width-thin) solid var(--color-border-light)}.table td:first-child{border-radius:var(--border-radius-md) var(--border-radius-md) 0 0}.table td:last-child{border-bottom:none;border-radius:0 0 var(--border-radius-md) var(--border-radius-md)}.table td:before{content:attr(data-label);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.025em;text-align:left;flex:1}.table-striped tbody tr:nth-child(odd){background-color:var(--color-bg-white)}.table-pagination{flex-direction:column;gap:var(--spacing-lg)}}.modal-backdrop{position:fixed;inset:0;background-color:var(--color-bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.modal-backdrop.active{opacity:1;visibility:visible}.modal{background-color:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;z-index:var(--z-modal);opacity:0;transform:scale(.9);transition:opacity var(--transition-base),transform var(--transition-base)}.modal-backdrop.active .modal{opacity:1;transform:scale(1)}.modal.modal-sm{max-width:400px}.modal.modal-lg{max-width:800px}.modal.modal-xl{max-width:1000px}.modal.modal-fullscreen{width:95%;max-width:1400px;max-height:95vh}.modal-header{padding:var(--spacing-xl);border-bottom:var(--border-width-thin) solid var(--color-border-light);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.modal-close{background:none;border:none;font-size:var(--font-size-2xl);cursor:pointer;color:var(--color-text-secondary);padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-md);transition:all var(--transition-base)}.modal-close:hover{background-color:var(--color-bg-primary);color:var(--color-text-primary)}.modal-body{padding:var(--spacing-xl)}.modal-footer{padding:var(--spacing-xl);border-top:var(--border-width-thin) solid var(--color-border-light);display:flex;justify-content:flex-end;gap:var(--spacing-lg);background-color:var(--color-bg-primary)}.modal-footer .btn{min-width:100px}.modal-scrollable{max-height:70vh;overflow-y:auto}.modal-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-4xl) var(--spacing-xl)}.modal-alert{max-width:500px}.modal-alert .modal-body{padding:var(--spacing-2xl);text-align:center}.modal-alert.alert-danger .modal-header{background-color:var(--color-bg-danger);border-color:var(--color-danger)}.modal-alert.alert-danger .modal-title{color:var(--color-danger-dark)}.modal-alert.alert-success .modal-header{background-color:var(--color-bg-success);border-color:var(--color-success)}.modal-alert.alert-success .modal-title{color:var(--color-success-text)}.modal-alert.alert-warning .modal-header{background-color:var(--color-bg-warning);border-color:var(--color-warning)}.modal-alert.alert-warning .modal-title{color:var(--color-warning-text)}.modal-confirm{max-width:450px}.modal-confirm .modal-body{padding:var(--spacing-2xl)}.modal-confirm p{margin:var(--spacing-lg) 0;line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.modal-loading{max-width:300px}.modal-loading .modal-body{padding:var(--spacing-2xl);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.loading-spinner{width:2rem;height:2rem;border:3px solid var(--color-border-light);border-top-color:var(--color-brand-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.modal{width:95%;max-height:95vh}.modal.modal-lg,.modal.modal-xl,.modal.modal-fullscreen{max-width:95%}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;line-height:var(--line-height-tight);text-decoration:none}.badge-primary{background-color:var(--color-brand-primary);color:var(--color-text-inverse)}.badge-primary.outline{background-color:transparent;color:var(--color-brand-primary);border:var(--border-width-thin) solid var(--color-brand-primary)}.badge-success{background-color:var(--color-bg-success);color:var(--color-success-text)}.badge-success.outline{background-color:transparent;color:var(--color-success);border:var(--border-width-thin) solid var(--color-success)}.badge-danger{background-color:var(--color-bg-danger);color:var(--color-danger-dark)}.badge-danger.outline{background-color:transparent;color:var(--color-danger);border:var(--border-width-thin) solid var(--color-danger)}.badge-warning{background-color:var(--color-bg-warning);color:var(--color-warning-text)}.badge-warning.outline{background-color:transparent;color:var(--color-warning);border:var(--border-width-thin) solid var(--color-warning)}.badge-info{background-color:var(--color-bg-info);color:var(--color-info-text)}.badge-info.outline{background-color:transparent;color:var(--color-info);border:var(--border-width-thin) solid var(--color-info)}.badge-light{background-color:var(--color-bg-primary);color:var(--color-text-primary)}.badge-light.outline{background-color:transparent;color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-light)}.badge-dark{background-color:var(--color-gray-900);color:var(--color-text-inverse)}.badge-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:10px}.badge-lg{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}.badge-with-icon{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.badge-with-icon svg{width:14px;height:14px}.badge-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background-color:var(--color-danger)}.badge-dot.primary{background-color:var(--color-brand-primary)}.badge-dot.success{background-color:var(--color-success)}.badge-dot.warning{background-color:var(--color-warning)}.badge-dot.info{background-color:var(--color-info)}.badge-notification{position:relative;display:inline-block}.badge-notification .badge{position:absolute;top:-.5rem;right:-.5rem;margin:0;padding:.125rem .375rem;font-size:11px;min-width:1.25rem;text-align:center;border-radius:var(--border-radius-full)}.badge-status{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.badge-status.active{background-color:var(--color-bg-success);color:var(--color-success-text)}.badge-status.inactive{background-color:var(--color-bg-primary);color:var(--color-text-secondary)}.badge-status.pending{background-color:var(--color-bg-warning);color:var(--color-warning-text)}.badge-status.error{background-color:var(--color-bg-danger);color:var(--color-danger-dark)}.badge-status.processing{background-color:var(--color-bg-info);color:var(--color-info-text)}.badge-label{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:none;letter-spacing:normal}.badge-pill{padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--border-radius-full);font-size:var(--font-size-sm)}.badge-group{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.badge-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gradient-brand);padding:var(--spacing-lg)}.auth-wrapper{width:100%;max-width:500px}.auth-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-3xl);width:100%}.auth-logo{display:block;margin:0 auto var(--spacing-xl);height:80px;width:auto;text-align:center}.auth-logo img{max-height:100%;width:auto}.auth-title{text-align:center;color:var(--color-text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-md) 0;line-height:var(--line-height-tight)}.auth-subtitle{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--spacing-2xl) 0;line-height:var(--line-height-normal)}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.auth-form .form-group{margin-bottom:0}.auth-buttons{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-buttons .btn{width:100%}.auth-links{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.auth-links a{font-size:var(--font-size-sm);color:var(--color-brand-primary)}.auth-links a:hover{color:var(--color-brand-primary-dark);text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:var(--spacing-lg);margin:var(--spacing-xl) 0;color:var(--color-text-disabled)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background-color:var(--color-border-light)}.auth-divider span{font-size:var(--font-size-sm)}.auth-toggle{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:var(--border-width-thin) solid var(--color-border-light)}.auth-toggle p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-toggle a{color:var(--color-brand-primary);font-weight:var(--font-weight-semibold)}.auth-toggle a:hover{color:var(--color-brand-primary-dark);text-decoration:underline}.auth-message{padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.auth-message.error{background-color:var(--color-bg-danger);color:var(--color-danger-dark);border-left:var(--border-width-thick) solid var(--color-danger)}.auth-message.success{background-color:var(--color-bg-success);color:var(--color-success-text);border-left:var(--border-width-thick) solid var(--color-success)}.auth-message.info{background-color:var(--color-bg-info);color:var(--color-info-text);border-left:var(--border-width-thick) solid var(--color-info)}.auth-social{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.auth-social button{flex:1;padding:var(--spacing-md);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--border-radius-md);background-color:var(--color-bg-white);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:var(--font-weight-medium)}.auth-social button:hover{background-color:var(--color-bg-primary);border-color:var(--color-border-medium)}.auth-social button svg{width:20px;height:20px}@media(max-width:480px){.auth-container{padding:var(--spacing-md)}.auth-card{padding:var(--spacing-xl)}.auth-title{font-size:var(--font-size-2xl)}.auth-subtitle{font-size:var(--font-size-xs)}}.dashboard-page{min-height:100vh;background-color:var(--color-bg-primary);padding:var(--spacing-xl)}.dashboard-container{max-width:80rem;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-medium) solid var(--color-brand-primary);gap:var(--spacing-xl)}.dashboard-header-content{flex:1}.dashboard-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0;line-height:var(--line-height-tight)}.dashboard-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-normal)}.dashboard-header-actions{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;justify-content:flex-end;align-items:center}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.stat-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border-left:var(--border-width-thick) solid var(--color-brand-primary)}.stat-card.success{border-left-color:var(--color-success)}.stat-card.danger{border-left-color:var(--color-danger)}.stat-card.warning{border-left-color:var(--color-warning)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.stat-change{font-size:var(--font-size-sm);margin-top:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.stat-change.positive{color:var(--color-success)}.stat-change.negative{color:var(--color-danger)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.dashboard-grid.two-col{grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.dashboard-grid.full{grid-template-columns:1fr}.dashboard-with-sidebar{display:grid;grid-template-columns:250px 1fr;gap:var(--spacing-xl)}.dashboard-sidebar{display:flex;flex-direction:column;gap:var(--spacing-lg)}.sidebar-section{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.sidebar-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.sidebar-nav{display:flex;flex-direction:column;gap:var(--spacing-sm)}.sidebar-nav a{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);transition:all var(--transition-base)}.sidebar-nav a:hover{background-color:var(--color-bg-primary);color:var(--color-brand-primary)}.sidebar-nav a.active{background-color:var(--color-brand-primary-light);color:var(--color-brand-primary);font-weight:var(--font-weight-semibold)}.dashboard-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.dashboard-section{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm)}.dashboard-section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-thin) solid var(--color-border-light)}.dashboard-empty{text-align:center;padding:var(--spacing-4xl) var(--spacing-xl);background:var(--color-bg-primary);border-radius:var(--border-radius-lg);color:var(--color-text-secondary)}.dashboard-empty svg{width:4rem;height:4rem;margin-bottom:var(--spacing-xl);opacity:.5}.dashboard-empty p{margin:0;line-height:var(--line-height-relaxed)}.dashboard-empty .btn{margin-top:var(--spacing-xl)}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:300px;background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}@media(max-width:1024px){.dashboard-grid,.dashboard-grid.two-col,.dashboard-with-sidebar{grid-template-columns:1fr}.dashboard-header{flex-direction:column}.dashboard-header-actions{justify-content:flex-start}}@media(max-width:768px){.dashboard-page{padding:var(--spacing-lg)}.dashboard-stats{grid-template-columns:1fr}.dashboard-title,.stat-value{font-size:var(--font-size-2xl)}}.public-container{max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg);width:100%;flex:1}.page-section{padding:var(--spacing-4xl) 0}.page-section.dark{background-color:var(--color-gray-900);color:var(--color-text-inverse)}.page-section.light{background-color:var(--color-bg-white)}.page-section.primary{background:var(--gradient-brand);color:var(--color-text-inverse)}.section-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:center;margin-bottom:var(--spacing-xl);line-height:var(--line-height-tight)}.page-section.dark .section-title,.page-section.primary .section-title{color:var(--color-text-inverse)}.section-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);text-align:center;margin-bottom:var(--spacing-2xl);line-height:var(--line-height-normal)}.page-section.dark .section-subtitle,.page-section.primary .section-subtitle{color:#fffc}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.section-grid.three{grid-template-columns:repeat(3,1fr)}.section-grid.two{grid-template-columns:repeat(2,1fr)}.section-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base);text-align:center}.section-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.section-card h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.section-card p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-2xl)}.feature-card{display:flex;flex-direction:column;align-items:center;text-align:center}.feature-icon{width:80px;height:80px;border-radius:var(--border-radius-full);background-color:var(--color-brand-primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);color:var(--color-brand-primary);font-size:2rem}.feature-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.feature-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.cta-section{text-align:center;padding:var(--spacing-4xl) var(--spacing-xl);background:var(--gradient-brand);border-radius:var(--border-radius-lg);color:var(--color-text-inverse)}.cta-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-lg)}.cta-description{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl);line-height:var(--line-height-relaxed)}.cta-buttons{display:flex;gap:var(--spacing-lg);justify-content:center;flex-wrap:wrap}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.testimonial-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border-left:var(--border-width-thick) solid var(--color-brand-primary)}.testimonial-quote{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-lg);font-style:italic}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md)}.testimonial-avatar{width:48px;height:48px;border-radius:50%;background:var(--color-brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold)}.testimonial-info h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.testimonial-info p{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0}@media(max-width:768px){.page-section{padding:var(--spacing-2xl) 0}.section-title{font-size:var(--font-size-2xl)}.section-grid.three,.section-grid.two,.features-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column}.cta-buttons .btn{width:100%}.testimonials-grid{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}p{margin:0}a{color:var(--color-brand-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-brand-primary-dark);text-decoration:underline}ul,ol{list-style:none}input,select,textarea,button{font-family:inherit;font-size:inherit}img{max-width:100%;height:auto;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}@media print{body{background-color:var(--color-bg-white);color:var(--color-text-primary)}a{text-decoration:underline}button,input[type=button]{display:none}}#root{display:flex;flex-direction:column;width:100%;min-height:100vh}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.auth-card{max-width:500px;margin:0 auto}.auth-card .btn{width:100%;margin-top:var(--spacing-md)}.auth-card .btn-secondary{margin-top:0;width:auto}.link-button{background:none;border:none;color:var(--color-brand-primary);font-weight:var(--font-weight-semibold);cursor:pointer;padding:0;text-decoration:underline;font-size:var(--font-size-sm);transition:color var(--transition-base)}.link-button:hover:not(:disabled){color:var(--color-brand-primary-dark)}.link-button:disabled{cursor:not-allowed;opacity:.6}.dashboard{min-height:100vh;background-color:var(--color-bg-primary)}.navbar{background-color:var(--color-bg-white);border-bottom:var(--border-width-thin) solid var(--color-border-light);padding:0;position:sticky;top:0;z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.navbar-content{max-width:80rem;margin:0 auto;padding:var(--spacing-lg) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.navbar-brand{margin:0;font-size:var(--font-size-xl);color:var(--color-brand-primary);font-weight:var(--font-weight-bold)}.navbar-right{display:flex;align-items:center;gap:var(--spacing-xl)}.user-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.user-info strong{color:var(--color-text-primary)}.dashboard-content{padding:var(--spacing-2xl) var(--spacing-lg)}.container{max-width:80rem;margin:0 auto}.container h2{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:var(--font-size-2xl)}.container>p{color:var(--color-text-secondary);margin-bottom:var(--spacing-2xl);font-size:var(--font-size-base)}.info-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-sm)}.info-card h3{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--color-text-primary);font-size:var(--font-size-lg)}.info-card dl{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-xl)}.info-card dt{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.info-card dd{color:var(--color-text-primary);margin:0;margin-top:var(--spacing-xs);font-size:var(--font-size-sm)}.coming-soon{background:var(--color-bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm)}.coming-soon h3{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--color-text-primary);font-size:var(--font-size-lg)}.coming-soon ul{margin:0;padding-left:var(--spacing-2xl);list-style-type:none}.coming-soon li{color:var(--color-text-secondary);padding:var(--spacing-sm) 0;position:relative;padding-left:var(--spacing-xl)}.coming-soon li:before{content:"✓";position:absolute;left:0;color:var(--color-brand-primary);font-weight:var(--font-weight-bold)}@media(max-width:768px){.navbar-content{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.navbar-right{width:100%;justify-content:space-between}.info-card dl{grid-template-columns:1fr}.dashboard-content{padding:var(--spacing-lg)}.container{padding:0}}.header{background-color:var(--color-bg-white);border-bottom:1px solid var(--color-border-light);padding:0;position:sticky;top:0;z-index:100;box-shadow:0 2px 4px #0000000d}.header-content{max-width:1280px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px;gap:40px}.logo{text-decoration:none;display:flex;align-items:center;gap:10px;flex-shrink:0}.logo-image{height:40px;width:auto;display:block}.logo-text{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-brand-primary)}.nav-menu{display:flex;align-items:center;gap:30px;flex:1}.nav-link{color:var(--color-text-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) 0;border:none;background:none;cursor:pointer;transition:color .2s;white-space:nowrap}.nav-link:hover{color:var(--color-brand-primary)}.nav-dropdown{position:relative}.nav-dropdown-btn{display:flex;align-items:center;gap:6px}.dropdown-arrow{font-size:10px;transition:transform .2s}.nav-dropdown-btn:hover .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;background:var(--color-bg-white);border:1px solid var(--color-border-light);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);min-width:220px;margin-top:8px;z-index:1000}.dropdown-item{display:block;padding:var(--spacing-md) 16px;color:var(--color-text-primary);text-decoration:none;font-size:var(--font-size-sm);transition:background-color .2s;border:none;width:100%;text-align:left}.dropdown-item:first-child{border-radius:var(--border-radius-lg) 8px 0 0}.dropdown-item:last-child{border-radius:0 0 8px 8px}.dropdown-item:hover{background-color:var(--color-bg-primary);color:var(--color-brand-primary)}.nav-actions{display:flex;align-items:center;gap:var(--spacing-xl);flex-shrink:0}.btn-badge{background-color:var(--color-brand-primary);color:#fff;padding:10px 20px;border-radius:20px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);transition:background-color .2s,box-shadow .2s}.btn-badge:hover{background-color:var(--color-brand-primary-dark);box-shadow:0 4px 12px #667eea66}.hamburger-menu{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:var(--spacing-sm);margin:0;width:44px;height:44px;align-items:center;justify-content:center;overflow:visible}.hamburger-menu span{width:24px;height:2.5px;background-color:var(--color-text-primary);border-radius:2px;transition:all var(--transition-slow) ease;display:block}.hamburger-menu.active span:nth-child(1){transform:rotate(45deg) translate(10px,10px)}.hamburger-menu.active span:nth-child(2){opacity:0}.hamburger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}.nav-actions-mobile{display:none}@media(max-width:768px){.header{position:sticky;top:0;z-index:100}.header-content{height:60px;padding:10px 20px;gap:0;flex-wrap:nowrap;align-items:center}.hamburger-menu{display:flex;order:2;margin-left:auto}.logo{order:1;flex-shrink:0}.nav-menu{order:3;position:absolute;top:100%;right:20px;display:none;flex-direction:column;gap:0;background-color:var(--color-bg-white);border:1px solid var(--color-border-light);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);flex:none;margin:0;padding:0;width:auto;max-width:none;z-index:50;min-width:220px}.nav-menu.open{display:flex}.nav-link{padding:var(--spacing-md) 16px;border:none;border-bottom:1px solid var(--color-bg-secondary);text-align:center;color:var(--color-text-primary);display:block;width:auto;box-sizing:border-box;white-space:nowrap;background:none}.nav-link:hover{background-color:var(--color-bg-primary)}.nav-dropdown{width:auto}.nav-dropdown-btn{padding:var(--spacing-md) 16px;width:auto;text-align:center;gap:var(--spacing-md);background:none;border:none;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-bottom:1px solid var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;white-space:nowrap}.nav-dropdown-btn:hover{background-color:var(--color-bg-primary)}.dropdown-menu{position:static;border:none;box-shadow:none;background-color:var(--color-bg-primary);margin-top:0;border-radius:0;width:auto;min-width:200px}.dropdown-item{padding:var(--spacing-md) 16px;border:none;border-bottom:1px solid var(--color-bg-secondary);border-radius:0;width:auto;box-sizing:border-box;white-space:nowrap;text-align:center}.dropdown-item:first-child{border-radius:0}.dropdown-item:last-child{border-radius:0}.nav-actions{display:none}.nav-actions-mobile{display:flex;flex-direction:column;gap:0;width:auto;border-top:1px solid var(--color-border-light)}.nav-actions-mobile .nav-link{padding:var(--spacing-md) 16px;border:none;border-bottom:1px solid var(--color-bg-secondary);width:auto}.nav-actions-mobile .btn-badge{background-color:var(--color-brand-primary);color:#fff;border:none;border-radius:0;padding:var(--spacing-md) 16px;margin:0;width:auto;text-align:center;text-decoration:none;display:block;box-sizing:border-box;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap}.nav-actions-mobile .btn-badge:hover{background-color:var(--color-brand-primary-dark)}}.footer{background-color:#1a1a1a;color:var(--color-border-light);margin-top:80px;padding-top:60px;padding-bottom:20px}.footer-content{max-width:1280px;margin:0 auto 40px;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px}.footer-section h4{color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 20px}.footer-section ul{list-style:none;margin:0;padding:0}.footer-section li{margin-bottom:12px}.footer-section a{color:var(--color-border-light);text-decoration:none;font-size:var(--font-size-sm);transition:color .2s}.footer-section a:hover{color:var(--color-brand-primary)}.social-links{display:flex;gap:var(--spacing-lg)}.social-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:#2a2a2a;border-radius:50%;font-size:var(--font-size-base);color:var(--color-border-light);text-decoration:none;transition:background-color .2s,color .2s}.social-icon:hover{background-color:var(--color-brand-primary);color:#fff}.footer-bottom{max-width:1280px;margin:0 auto;padding:var(--spacing-xl) 20px 0;border-top:1px solid var(--color-text-primary);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl)}.footer-legal{display:flex;gap:30px}.footer-legal a{color:var(--color-border-light);text-decoration:none;font-size:var(--font-size-sm);transition:color .2s}.footer-legal a:hover{color:var(--color-brand-primary)}.footer-copyright{text-align:right;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.footer-copyright p{margin:4px 0}@media(max-width:768px){.footer-content{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;text-align:center}.footer-legal{justify-content:center;width:100%}.footer-copyright{text-align:center}}.public-page{display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1;max-width:1280px;margin:0 auto;width:100%;padding:60px 20px}.page-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 20px}.page-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;margin:0 0 40px}.page-section{margin-bottom:60px}.page-section h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 20px}.page-section p{color:var(--color-text-secondary);line-height:1.8;margin:0 0 16px}.placeholder-text{color:var(--color-text-tertiary);font-style:italic;padding:40px;background-color:var(--color-bg-primary);border-radius:var(--border-radius-lg);border-left:4px solid var(--color-border-light)}.hero{text-align:center;padding:80px 20px;background:linear-gradient(135deg,var(--color-brand-primary) 0%,var(--color-brand-secondary) 100%);color:#fff;border-radius:var(--border-radius-xl);margin:-60px -20px 60px}.hero-content h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin:0 0 20px;line-height:1.2}.hero-subtitle{font-size:var(--font-size-xl);margin:0 0 40px;opacity:.95}.hero-buttons{display:flex;gap:var(--spacing-xl);justify-content:center;flex-wrap:wrap}.btn{padding:var(--spacing-md) 28px;border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-decoration:none;border:none;cursor:pointer;transition:all var(--transition-base);display:inline-block;width:fit-content}.btn-primary{background-color:var(--color-brand-primary);color:#fff}.btn-primary:hover{background-color:var(--color-brand-primary-dark);box-shadow:0 4px 12px #667eea66}.hero .btn-secondary{background-color:transparent;color:#fff;border:2px solid white}.hero .btn-secondary:hover{background-color:#ffffff1a;border-color:#fff}.testimonials{margin-bottom:80px}.testimonials h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-align:center;color:var(--color-text-primary);margin:0 0 50px}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.testimonial-card{background:var(--color-bg-white);padding:30px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border-left:4px solid var(--color-brand-primary)}.testimonial-text{color:var(--color-text-secondary);line-height:1.6;margin:0 0 16px;font-size:var(--font-size-sm)}.testimonial-author{color:var(--color-text-tertiary);font-size:var(--font-size-xs);margin:0;font-weight:var(--font-weight-medium)}.features-overview{margin-bottom:80px}.features-overview h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-align:center;color:var(--color-text-primary);margin:0 0 50px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.feature-card{background:var(--color-bg-white);padding:30px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:transform .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-card h3{color:var(--color-text-primary);margin:0 0 12px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.feature-card p{color:var(--color-text-secondary);line-height:1.6;margin:0;font-size:var(--font-size-sm)}.monitoring-section{background-color:var(--color-bg-primary);padding:60px 40px;border-radius:var(--border-radius-lg);text-align:center;margin-bottom:80px}.monitoring-section h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 16px}.monitoring-section p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 30px}.cta-section{background-color:var(--color-bg-primary);padding:80px 40px;border-radius:var(--border-radius-lg);text-align:center;margin-top:80px}.cta-section h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 12px}.cta-section p{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0 0 40px}.cta-buttons{display:flex;gap:var(--spacing-xl);justify-content:center;flex-wrap:wrap}.cta-buttons .btn-secondary{background-color:var(--color-bg-white);color:var(--color-text-primary);border:1px solid var(--color-border-light)}.cta-buttons .btn-secondary:hover{background-color:var(--color-bg-primary);border-color:var(--color-text-tertiary)}@media(max-width:768px){.hero-content h1{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-base)}.testimonials h2,.features-overview h2,.cta-section h2{font-size:var(--font-size-2xl)}.cta-buttons{flex-direction:column}.cta-buttons .btn{width:100%}}.role-selection-container{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,var(--color-brand-primary) 0%,var(--color-brand-secondary) 100%);padding:var(--spacing-xl)}.role-selection-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-white);border-radius:var(--border-radius-xl);box-shadow:0 4px 20px #0000001a;padding:40px 20px;max-width:1000px;width:100%;margin:auto}.role-selection-logo{margin-bottom:var(--spacing-2xl)}.role-selection-logo img{height:60px;width:auto}.role-selection-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 10px;text-align:center}.role-selection-subtitle{font-size:var(--font-size-xl);color:var(--color-brand-primary);font-weight:var(--font-weight-semibold);margin:0 0 10px;text-align:center}.role-selection-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 40px;text-align:center;max-width:500px}.role-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl);width:100%;margin-bottom:var(--spacing-2xl)}.role-card{background:#f8f9fa;border:2px solid var(--color-border-light);border-radius:var(--border-radius-lg);padding:25px;cursor:pointer;transition:all var(--transition-slow) ease;text-align:left;font-family:inherit}.role-card:hover{border-color:var(--color-brand-primary);background:#f0f3ff;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.role-card:active{transform:translateY(0)}.role-card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 10px}.role-card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.role-selection-login-link{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.role-selection-login-link p{margin:0}.link-button{color:var(--color-brand-primary);text-decoration:none;font-weight:var(--font-weight-semibold);cursor:pointer}.link-button:hover{text-decoration:underline}.role-selection-footer{display:flex;justify-content:center;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-xl);color:#fff;font-size:var(--font-size-xs)}.footer-link{color:#fff;text-decoration:none}.footer-link:hover{text-decoration:underline}.footer-logo-link{display:flex;align-items:center;gap:var(--spacing-sm);color:#fff;text-decoration:none;font-weight:var(--font-weight-semibold)}.footer-logo-link:hover{text-decoration:underline}.footer-logo-icon{height:24px;width:auto}@media(max-width:768px){.role-selection-card{padding:30px 15px}.role-selection-title{font-size:var(--font-size-2xl)}.role-selection-grid{grid-template-columns:1fr;gap:15px}.role-selection-footer{flex-direction:column;gap:10px}}.signup-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gradient-brand);padding:var(--spacing-lg)}.signup-card{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-3xl);width:100%;max-width:500px}.signup-logo{text-align:center;margin-bottom:var(--spacing-2xl);display:flex;justify-content:center}.signup-logo img{height:80px;width:auto}.signup-title{text-align:center;color:var(--color-text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-sm) 0;line-height:var(--line-height-tight)}.signup-subtitle-green{text-align:center;color:var(--color-success);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-md) 0}.signup-description{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0 0 var(--spacing-xl) 0}.signup-error{background-color:var(--color-bg-danger);color:var(--color-danger-dark);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);border-left:var(--border-width-thick) solid var(--color-danger)}.signup-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.form-row .form-group{margin-bottom:0}.field-status{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.field-status.available{color:var(--color-success)}.field-status.invalid{color:var(--color-warning)}.field-error{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-danger);font-weight:var(--font-weight-semibold)}.password-strength{margin-top:var(--spacing-sm)}.strength-bar{width:100%;height:4px;background-color:var(--color-border-light);border-radius:var(--border-radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs)}.strength-fill{height:100%;transition:width var(--transition-base),background-color var(--transition-base)}.strength-label{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.btn-create-account{width:100%;margin-top:var(--spacing-md)}.signup-login-link{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:var(--border-width-thin) solid var(--color-border-light)}.signup-login-link p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.link-button{background:none;border:none;color:var(--color-brand-primary);font-weight:var(--font-weight-semibold);cursor:pointer;padding:0;text-decoration:underline;transition:color var(--transition-base);font-size:var(--font-size-sm)}.link-button:hover{color:var(--color-brand-primary-dark)}.signup-footer{margin-top:var(--spacing-4xl);padding-top:var(--spacing-2xl);border-top:var(--border-width-thin) solid rgba(255,255,255,.3);display:flex;justify-content:center;align-items:center;gap:var(--spacing-2xl);flex-wrap:wrap}.footer-link{color:var(--color-text-inverse);text-decoration:none;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:opacity var(--transition-base)}.footer-link:hover{opacity:.8}.footer-logo-link{color:var(--color-text-inverse);text-decoration:none;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);display:flex;align-items:center;gap:var(--spacing-sm);transition:opacity var(--transition-base)}.footer-logo-link:hover{opacity:.8}.footer-logo-icon{height:20px;width:auto}.form-section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:var(--spacing-xl) 0 var(--spacing-lg) 0;border-bottom:var(--border-width-medium) solid var(--color-brand-primary);padding-bottom:var(--spacing-sm);text-transform:capitalize}@media(max-width:768px){.signup-container{padding:var(--spacing-md)}.signup-card{padding:var(--spacing-xl);max-width:100%}.signup-title{font-size:var(--font-size-2xl)}.signup-description{font-size:var(--font-size-xs)}.form-row{grid-template-columns:1fr;gap:var(--spacing-md)}.signup-footer{gap:var(--spacing-xl)}.footer-link,.footer-logo-link{font-size:11px}}@media(max-width:480px){.signup-container{padding:var(--spacing-sm);justify-content:flex-start;min-height:auto}.signup-card{padding:var(--spacing-lg);border-radius:var(--border-radius-lg);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.signup-logo{margin-bottom:var(--spacing-xl)}.signup-logo img{height:50px}.signup-title{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.signup-subtitle-green{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.signup-description{font-size:var(--font-size-xs);margin-bottom:var(--spacing-lg)}.signup-form{gap:var(--spacing-md)}.form-section-title{font-size:var(--font-size-sm);margin:var(--spacing-lg) 0 var(--spacing-md) 0}.signup-login-link{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.signup-login-link p{font-size:var(--font-size-sm)}.signup-footer{margin-top:var(--spacing-2xl);padding-top:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;align-items:stretch}.footer-link,.footer-logo-link{text-align:center;font-size:11px}.footer-logo-link{justify-content:center}}@media(max-width:360px){.signup-card{padding:var(--spacing-md)}.signup-title{font-size:var(--font-size-xl)}.signup-form{gap:var(--spacing-md)}}.accept-invitation-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.accept-invitation-page .container{width:100%;max-width:500px}.accept-invitation-page .loading-box,.accept-invitation-page .error-box,.accept-invitation-page .success-box,.accept-invitation-page .invitation-box{background:#fff;border-radius:8px;padding:40px;box-shadow:0 4px 6px #0000001a;text-align:center}.accept-invitation-page h1{color:#333;margin-bottom:20px;font-size:28px}.accept-invitation-page p{color:#666;margin-bottom:15px;line-height:1.6}.accept-invitation-page .error-message{color:#dc3545;font-weight:500;padding:15px;background:#f8d7da;border-radius:4px;margin-bottom:25px}.accept-invitation-page .redirect-notice{color:#667eea;font-weight:500;margin-bottom:20px}.accept-invitation-page .spinner{width:40px;height:40px;margin:20px auto;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.accept-invitation-page .invitation-details{background:#f8f9fa;padding:20px;border-radius:6px;margin-bottom:30px;text-align:left}.accept-invitation-page .invitation-details p{margin:10px 0;font-size:15px}.accept-invitation-page .invitation-details strong{color:#333}.accept-invitation-page .expiry-info{color:#ff9800;font-size:13px;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.accept-invitation-page .action-buttons{display:flex;gap:10px;margin-top:30px;flex-direction:column}.accept-invitation-page .btn{padding:12px 24px;border-radius:6px;text-decoration:none;font-weight:500;cursor:pointer;border:none;font-size:16px;transition:all .3s ease}.accept-invitation-page .btn-primary{background:#667eea;color:#fff}.accept-invitation-page .btn-primary:hover{background:#5568d3}.accept-invitation-page .btn-secondary{background:#e0e0e0;color:#333}.accept-invitation-page .btn-secondary:hover{background:#d0d0d0}@media(max-width:600px){.accept-invitation-page .loading-box,.accept-invitation-page .error-box,.accept-invitation-page .success-box,.accept-invitation-page .invitation-box{padding:25px}.accept-invitation-page h1{font-size:24px}.accept-invitation-page .action-buttons{margin-top:20px}}
