@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css";:root{--color-primary: #6f42c1;--color-primary-dark: #5a349c;--color-primary-light: #f0eafa;--color-primary-rgb: 111, 66, 193;--color-secondary: #f8f9fa;--color-secondary-dark: #e9ecef;--color-surface-rgb: 255, 255, 255;--color-background-rgb: 248, 249, 250;--color-danger: #dc3545;--color-danger-rgb: 220, 53, 69;--color-text: #495057;--color-text-headings: #212529;--color-text-inverse: #ffffff;--color-text-muted: #6c757d;--color-border: #dee2e6;--color-background: #f8f9fa;--color-surface: #ffffff;--font-family-base: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-base: 1rem;--line-height-base: 1.6;--spacing-base: 1rem;--container-max-width: 1280px;--container-padding: 1.5rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-width: 1px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 6px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--transition-fast: all .2s ease-in-out;--transition-smooth: all .3s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}html{font-size:100%}@media (max-width: 768px){html{font-size:93.75%}}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{min-height:calc(100vh - 180px)}a{color:var(--color-primary);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--color-primary-dark);text-decoration:underline}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--color-text-headings);margin:0 0 1.5rem}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.25rem}p{margin-bottom:var(--spacing-base)}.page-title{font-size:2.25rem;font-weight:700;margin-bottom:2rem;color:var(--color-text-headings);border-bottom:var(--border-width) solid var(--color-border);padding-bottom:var(--spacing-base)}.container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.page-container{padding-top:2.5rem;padding-bottom:4rem}.auth-page{display:flex;justify-content:center;align-items:flex-start;min-height:calc(100vh - 160px);padding:4rem 1.5rem;width:100%}.card{background-color:var(--color-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);border:var(--border-width) solid var(--color-border);padding:1.5rem;margin-bottom:1.5rem;overflow:hidden}.card h2{font-size:1.5rem;margin:-1.5rem -1.5rem 1.5rem;padding:1rem 1.5rem;color:var(--color-text-headings);border-bottom:var(--border-width) solid var(--color-border);font-weight:600}.card h2 i{margin-right:.75rem;color:var(--color-primary);font-size:1em;vertical-align:-.1em}.button{display:inline-block;padding:.75rem 1.5rem;border:var(--border-width) solid transparent;border-radius:var(--border-radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:var(--transition-fast);text-align:center;line-height:1.5;text-decoration:none;vertical-align:middle}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-sm)}.button:active:not(:disabled){transform:translateY(0);box-shadow:none}.button:disabled{opacity:.6;cursor:not-allowed}.button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.button i{margin-right:.5rem;vertical-align:-.1em}.primary-button{background-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 2px 4px rgba(var(--color-primary-rgb),.2)}.primary-button:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:0 4px 8px rgba(var(--color-primary-rgb),.25)}.secondary-button{background-color:var(--color-secondary-dark);color:var(--color-text-headings);border-color:var(--color-border)}.secondary-button:hover:not(:disabled){background-color:var(--color-border);border-color:#adb5bd}.small-button{padding:.4rem .8rem;font-size:.85rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-headings);font-size:.9rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=password],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);line-height:var(--line-height-base);background-color:var(--color-surface);color:var(--color-text);transition:var(--transition-fast);font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);outline:0;box-shadow:0 0 0 .2rem rgba(var(--color-primary-rgb),.25)}.form-group textarea{resize:vertical;min-height:100px}.form-text.text-muted{font-size:.875rem;color:var(--color-text-muted);display:block;margin-top:.5rem}.error-message{color:var(--color-danger);font-size:.875rem;margin-top:.5rem;font-weight:500}.invalid-input{border-color:var(--color-danger)!important}.invalid-input:focus{box-shadow:0 0 0 .2rem rgba(var(--color-danger-rgb),.25)!important}a.active-link{color:var(--color-primary)!important;font-weight:600!important}.text-center{text-align:center!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.px-3{padding-left:1rem!important;padding-right:1rem!important}body.dark-mode{--color-background: #1a1a1a;--color-surface: #2c2c2c;--color-text: #e0e0e0;--color-text-headings: #ffffff;--color-text-muted: #a0a0a0;--color-border: #555555;--color-primary: #7e57c2;--color-primary-dark: #673ab7;--color-primary-light: #e1d8f5;--color-primary-rgb: 126, 87, 194;--color-secondary: #3e3e3e;--color-secondary-dark: #333333;--color-surface-rgb: 44, 44, 44;--color-background-rgb: 26, 26, 26;--color-danger: #ef5350;--color-danger-rgb: 239, 83, 80;background-color:var(--color-background);color:var(--color-text);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .25);--shadow-md: 0 6px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .35)}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:var(--color-text-headings)}body.dark-mode .page-title{color:var(--color-text-headings);border-bottom-color:var(--color-border)}body.dark-mode a{color:var(--color-primary-light)}body.dark-mode a:hover{color:var(--color-primary)}body.dark-mode .card{background-color:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-md)}body.dark-mode .card h2{color:var(--color-text-headings);border-bottom-color:var(--color-border)}body.dark-mode .card h2 i{color:var(--color-primary-light)}body.dark-mode .button:focus-visible{outline-color:var(--color-primary-light)}body.dark-mode .primary-button{background-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 2px 4px rgba(var(--color-primary-rgb),.3)}body.dark-mode .primary-button:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:0 4px 8px rgba(var(--color-primary-rgb),.35)}body.dark-mode .secondary-button{background-color:var(--color-secondary-dark);color:var(--color-text-headings);border-color:var(--color-border)}body.dark-mode .secondary-button:hover:not(:disabled){background-color:#4f4f4f;border-color:#666}body.dark-mode .form-group label{color:var(--color-text-headings)}body.dark-mode .form-group input[type=text],body.dark-mode .form-group input[type=email],body.dark-mode .form-group input[type=tel],body.dark-mode .form-group input[type=password],body.dark-mode .form-group input[type=number],body.dark-mode .form-group select,body.dark-mode .form-group textarea{background-color:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}body.dark-mode .form-group input:focus,body.dark-mode .form-group textarea:focus,body.dark-mode .form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem rgba(var(--color-primary-rgb),.3)}body.dark-mode .form-text.text-muted{color:var(--color-text-muted)}body.dark-mode .error-message{color:var(--color-danger)}body.dark-mode .invalid-input{border-color:var(--color-danger)!important}body.dark-mode .invalid-input:focus{box-shadow:0 0 0 .2rem rgba(var(--color-danger-rgb),.3)!important}body.dark-mode .app-header{background-color:var(--color-surface);border-bottom-color:var(--color-border)}body.dark-mode .mobile-nav{background-color:var(--color-surface)}body.dark-mode .mobile-nav-overlay{background-color:#000c}body.dark-mode a.active-link{color:var(--color-primary-light)!important;font-weight:600!important}
