@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=Roboto:wght@400;500&display=swap);:root{--primary-color:#172121;--primary-light:#2a3434;--primary-dark:#0d1515;--secondary-color:#62afff;--secondary-light:#8cc4ff;--secondary-dark:#4a9aeb;--accent-primary:#12eb93;--accent-secondary:#62afff;--accent-warning:#f59e0b;--accent-error:#ef4444;--text-primary:#172121;--text-secondary:#969696;--text-muted:#dadada;--text-inverse:#fff;--text-disabled:#909090;--background-primary:#fff;--background-secondary:#f7f6f9;--background-tertiary:#f1f5f9;--background-dark:#172121;--background-accent:#12eb93;--border-light:#e5e7eb;--border-medium:#dadada;--border-dark:#969696;--font-family-heading:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-family-body:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-size-h1:clamp(2rem,4vw + 1rem,3rem);--font-size-h2:clamp(1.5rem,3vw + 0.5rem,2rem);--font-size-h3:clamp(1.25rem,2vw + 0.5rem,1.5rem);--font-size-body:clamp(0.875rem,1vw + 0.5rem,1rem);--font-size-caption:clamp(0.75rem,0.5vw + 0.5rem,0.75rem);--font-size-small:clamp(0.75rem,0.5vw + 0.5rem,0.875rem);--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--transition-fast:0.15s ease-in-out;--transition-normal:0.3s ease-in-out;--transition-slow:0.5s ease-in-out}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--background-primary);color:#172121;color:var(--text-primary);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-family-body);font-size:clamp(.875rem,1vw + .5rem,1rem);font-size:var(--font-size-body);line-height:1.5;line-height:var(--line-height-normal);margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:focus-visible{outline:2px solid #62afff;outline:2px solid var(--accent-secondary);outline-offset:2px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.form-group{margin-bottom:var(--spacing-md)}.form-input{background:var(--background-primary);border:2px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-family-body);font-size:var(--font-size-body);padding:.75rem 1rem;position:relative;transition:all var(--transition-normal);width:100%;z-index:1}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--secondary-color);box-shadow:0 0 0 3px #62afff1a,0 4px 12px #62afff26;outline:none;transform:translateY(-1px)}.form-input:hover:not(:focus){border-color:var(--border-medium);box-shadow:0 2px 8px #1721210d}@media (prefers-color-scheme:dark){.form-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#17212180;border:2px solid #12eb9333;color:#ffffffe6}.form-input::placeholder{color:#fff6}.form-input:focus{background:#172121b3;border-color:var(--accent-primary);box-shadow:0 0 0 3px #12eb9333,0 4px 16px #12eb934d}.form-input:hover:not(:focus){border-color:#12eb9366;box-shadow:0 2px 8px #12eb931a}}.form-input-error,.form-input-error:focus{border-color:var(--accent-error)}.form-input-error:focus{box-shadow:0 0 0 3px #ef44441a,0 4px 12px #ef444426}.form-input-full-width{width:100%}.form-label{color:var(--text-primary);display:block;font-family:var(--font-family-body);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs);transition:color var(--transition-fast)}.form-group:focus-within .form-label{color:var(--secondary-color)}@media (prefers-color-scheme:dark){.form-label{color:#ffffffe6}.form-group:focus-within .form-label{color:var(--accent-primary)}}.form-error{color:var(--accent-error);font-family:var(--font-family-body);font-size:var(--font-size-small);margin-top:var(--spacing-xs)}.form-floating{margin-bottom:var(--spacing-md);position:relative}.form-floating .form-input{padding-bottom:.5rem;padding-top:1.5rem}.form-floating .form-label{background:var(--background-primary);left:1rem;margin:0;padding:0 .25rem;pointer-events:none;position:absolute;top:.75rem;transition:all var(--transition-normal);z-index:2}.form-floating .form-input:focus+.form-label,.form-floating .form-input:not(:placeholder-shown)+.form-label{color:var(--secondary-color);font-size:.75rem;left:.75rem;top:-.5rem}@media (prefers-color-scheme:dark){.form-floating .form-label{background:#172121e6}.form-floating .form-input:focus+.form-label,.form-floating .form-input:not(:placeholder-shown)+.form-label{color:var(--accent-primary)}}.form-floating .form-input-error:focus+.form-label,.form-floating .form-input-error:not(:placeholder-shown)+.form-label{color:var(--accent-error)}.form-input:disabled{background-color:var(--background-secondary);border-color:var(--border-light);color:var(--text-disabled);cursor:not-allowed}.form-input:disabled:hover{border-color:var(--border-light);box-shadow:none;transform:none}@media (prefers-color-scheme:dark){.form-input:disabled{background-color:#1721214d;color:#ffffff4d}.form-input:disabled,.form-input:disabled:hover{border-color:#12eb931a}}.form-input{min-height:44px}@media (max-width:768px){.form-input{border-radius:var(--radius-lg);font-size:16px;min-height:48px;padding:.75rem 1rem}.form-floating .form-input{min-height:56px;padding-bottom:.5rem;padding-top:1.5rem}.form-label{font-size:16px}.form-error{font-size:14px;margin-top:var(--spacing-sm)}}@media (hover:none) and (pointer:coarse){.form-input{font-size:16px;min-height:48px;padding:.875rem 1rem}.form-input:focus{box-shadow:0 0 0 3px #62afff33;transform:none}.form-floating .form-input{min-height:56px;padding-bottom:.625rem;padding-top:1.625rem}}@media (min-width:768px) and (max-width:1024px){.form-input{font-size:var(--font-size-body);min-height:46px;padding:.75rem 1rem}}@media (min-width:1024px){.form-input{font-size:var(--font-size-body);min-height:44px;padding:.75rem 1rem}}.email-verification{min-height:400px}.verification-step{padding:var(--spacing-xl)}.step-header{margin-bottom:var(--spacing-xl);text-align:center}.step-icon{align-items:center;background:linear-gradient(135deg,var(--accent-primary),#0de085);border-radius:50%;box-shadow:0 8px 25px #12eb934d;display:inline-flex;height:64px;justify-content:center;margin:0 auto var(--spacing-lg);width:64px}.step-icon,.step-title{color:var(--text-primary)}.step-title{font-family:var(--font-family-heading);font-weight:var(--font-weight-medium);margin:0 0 var(--spacing-md) 0}.step-description{color:var(--text-secondary);font-family:var(--font-family-body);font-size:var(--font-size-body);line-height:var(--line-height-relaxed);margin:0 auto;max-width:400px}.step-description strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.verification-form{margin:0 auto;max-width:400px}.verification-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-md);color:var(--accent-error)}.verification-error,.verification-success{font-family:var(--font-family-body);font-size:var(--font-size-small);margin-bottom:var(--spacing-md);padding:var(--spacing-md);text-align:center}.verification-success{background:#12eb931a;border:1px solid #12eb934d;border-radius:var(--radius-md);color:var(--accent-primary)}.verification-actions{margin-top:var(--spacing-xl)}.verification-secondary-actions{align-items:center;gap:var(--spacing-md);justify-content:space-between}.verification-secondary-actions .btn{flex:1 1;min-width:auto}.verification-form .form-input[maxlength="6"]{font-family:Courier New,monospace;font-size:1.5rem;font-weight:var(--font-weight-medium);letter-spacing:.5rem;text-align:center}.verification-form .form-input[maxlength="6"]:focus{letter-spacing:.5rem}.verification-step.loading{opacity:.8;pointer-events:none}.verification-step{animation:stepFadeIn .4s ease-out}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.email-verification-modal .modal-content{margin:var(--spacing-sm);max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);padding:0}.verification-step{padding:var(--spacing-lg)}.step-icon{height:56px;margin-bottom:var(--spacing-md);width:56px}.step-title{font-size:var(--font-size-h3)}.step-description{font-size:var(--font-size-small)}.verification-form{max-width:none}.verification-secondary-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.verification-secondary-actions .btn{min-height:44px;width:100%}.verification-form .form-input[maxlength="6"]{font-size:1.25rem;letter-spacing:.25rem;min-height:56px}@media (min-width:768px){.email-verification-modal .modal-content{margin:var(--spacing-lg);max-width:500px}.verification-step{padding:var(--spacing-xl)}.step-icon{height:64px;margin-bottom:var(--spacing-lg);width:64px}.step-title{font-size:var(--font-size-h2)}.step-description{font-size:var(--font-size-body)}.verification-form{margin:0 auto;max-width:400px}.verification-secondary-actions{flex-direction:row;gap:var(--spacing-md);justify-content:space-between}.verification-secondary-actions .btn{flex:1 1;min-height:auto;width:auto}.verification-form .form-input[maxlength="6"]{font-size:1.5rem;letter-spacing:.5rem;min-height:auto}}@media (min-width:1024px){.verification-step{padding:var(--spacing-2xl)}}@media (hover:none) and (pointer:coarse){.verification-secondary-actions .btn{min-height:48px;padding:var(--spacing-md) var(--spacing-lg)}.verification-form .form-input[maxlength="6"]{font-size:1.5rem;min-height:60px}}@media (prefers-contrast:high){.step-icon{border:2px solid var(--text-primary)}.verification-error,.verification-success{border-width:2px}}@media (prefers-reduced-motion:reduce){.verification-step{animation:none}}.offline-indicator{animation:slideIn .3s ease-out;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-md);position:fixed;right:var(--spacing-lg);top:var(--spacing-lg);transition:all var(--transition-normal);z-index:1000}.offline-indicator.offline{background:var(--background-warning);border:1px solid var(--accent-warning);color:var(--accent-warning)}.offline-indicator.online{animation:slideIn .3s ease-out,fadeOut .3s ease-out 3s forwards;background:var(--background-success);border:1px solid var(--accent-success);color:var(--accent-success)}.offline-indicator-content{align-items:center;display:flex;gap:var(--spacing-sm)}.status-icon{font-size:var(--font-size-body)}.status-text{white-space:nowrap}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@media (max-width:768px){.offline-indicator{left:var(--spacing-md);right:var(--spacing-md);text-align:center;top:var(--spacing-md)}.offline-indicator-content{justify-content:center}}.app-layout{background:var(--background-primary);display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.layout-body{display:flex;flex:1 1;position:relative}.main-content{background:var(--bg-primary);display:flex;flex:1 1;flex-direction:column;padding:var(--spacing-xl);transition:margin-left .3s ease-in-out}.main-content--dashboard{padding:0}.main-content--full{margin:0!important;padding:0!important}@media (min-width:769px){.main-content--with-sidebar{margin-left:280px}.main-content--collapsed-sidebar{margin-left:80px!important}}@media (max-width:768px){.main-content--with-sidebar{margin-left:0}.main-content--collapsed-sidebar{margin-left:0!important}}.loading-container{align-items:center;display:flex;justify-content:center;min-height:200px;padding:var(--spacing-xl)}.loading-spinner{align-items:center;color:var(--text-secondary);display:flex;font-family:var(--font-family-body);font-size:var(--font-size-body);gap:var(--spacing-md)}.loading-spinner:before{animation:spin 1s linear infinite;border:2px solid var(--border-light);border-radius:50%;border-top-color:var(--accent-primary);content:"";height:20px;width:20px}.auth-required-container{align-items:center;display:flex;justify-content:center;min-height:400px;padding:var(--spacing-xl)}.auth-required-message{max-width:400px;text-align:center}.auth-required-message h2{color:var(--text-primary);font-family:var(--font-family-heading);font-size:var(--font-size-h3);font-weight:var(--font-weight-medium);margin:0 0 var(--spacing-md) 0}.auth-required-message p{color:var(--text-secondary);font-family:var(--font-family-body);font-size:var(--font-size-body);line-height:var(--line-height-relaxed);margin:0}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.auth-required-container,.loading-container{min-height:300px;padding:var(--spacing-lg)}.auth-required-message h2{font-size:var(--font-size-body)}.auth-required-message p{font-size:var(--font-size-small)}}