/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}:root{--color-coral:#ff6b5a;--color-coral-hover:#ff5647;--color-coral-dark:#e85d4a;--color-coral-light:#ffe4e6;--color-green-primary:#2c5f3e;--color-green-light:#3a7b4e;--color-green-muted:#4a5d3f;--color-green-dark:#3e5132;--color-green-bg:#e8ede5;--color-green-section:#f5f7f3;--color-green-panel:#f8faf6;--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-150:#f8f9fa;--color-gray-200:#e5e7eb;--color-gray-250:#e9ecef;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#64748b;--color-gray-700:#495057;--color-gray-800:#374151;--color-gray-900:#1f2937;--color-text-primary:#212529;--color-text-dark:#2e3a2e;--color-orange-primary:#e76f51;--color-orange-hover:#d65a43;--color-orange-accent:#ff6b35;--color-gray-25:#f5f5f5;--color-gray-175:#e5e5e5;--color-gray-450:#888;--color-gray-750:#333;--color-error:#dc2626;--color-error-bg:#fff5f5;--color-error-light:#fcc;--color-error-text:#c53030;--color-error-border:#feb2b2;--color-warning:#ffc107;--color-warning-bg:#fff3cd;--color-warning-text:#856404;--color-warning-light:#fefce8;--color-warning-border:#fef08a;--color-success:#10b981;--color-success-bg:#f0fff4;--color-success-text:#22543d;--color-success-border:#9ae6b4;--color-error-dark:#b91c1c;--color-gray-loading:#f3f3f3;--color-info:#1976d2;--color-info-bg:#e3f2fd;--color-info-border:#90caf9;--color-link:#2563eb;--color-link-hover:#1d4ed8;--color-blue-500:#3b82f6;--color-blue-bg:#f4f7ff;--space-xs:4px;--space-1:6px;--space-sm:8px;--space-1-5:12px;--space-md:16px;--space-2-5:20px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:60px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 40px #0000001a;--shadow-focus:0 0 0 3px #ff6b5a4d;--shadow-focus-light:0 0 0 3px #ff6b5a1a;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--font-size-5xl:32px;--font-size-6xl:38px;--font-size-7xl:46px;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-snug:1.4;--line-height-normal:1.5;--line-height-relaxed:1.6;--letter-spacing-tight:-.02em;--letter-spacing-normal:-.01em;--letter-spacing-wide:.02em;--z-dropdown:100;--z-modal:1000;--z-tooltip:1100;--gradient-green-primary:linear-gradient(135deg,var(--color-green-dark)0%,var(--color-green-muted)100%);--gradient-hero-subtle:linear-gradient(135deg,#ffd6e5 0%,#e5d4ff 40%,#c9e9ff 100%);--gradient-heat-map:linear-gradient(to right,#fef3c7,#f97316,#dc2626,var(--color-error-dark));--color-overlay-dark:#0009;--color-overlay-light:#0000001a;--color-placeholder:#adb5bd}.btn{padding:var(--space-sm)var(--space-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);justify-content:center;align-items:center;gap:var(--space-sm);letter-spacing:var(--letter-spacing-normal);border:none;font-family:inherit;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background-color:var(--color-coral);color:var(--color-white)}.btn-primary:hover:not(:disabled){background-color:var(--color-coral-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:var(--color-white);color:var(--color-gray-900);border:1px solid var(--color-gray-200)}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-300)}.btn-ghost{color:var(--color-gray-600);background-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-gray-100);color:var(--color-gray-900)}.btn-danger{background-color:var(--color-error);color:var(--color-white)}.btn-danger:hover:not(:disabled){background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-sm{padding:var(--space-xs)var(--space-sm);font-size:var(--font-size-sm)}.btn-lg{padding:var(--space-md)var(--space-lg);font-size:var(--font-size-lg)}.btn-block{width:100%}.btn-icon{padding:var(--space-sm);min-width:36px;min-height:36px}.auth-button{padding:var(--space-1-5)var(--space-2-5);background-color:var(--color-coral);color:var(--color-white);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);margin-top:var(--space-xs);border:none;width:100%}.auth-button:hover:not(:disabled){background-color:var(--color-coral-dark);transform:translateY(-1px)}.auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.alert{padding:var(--space-sm)var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-base);margin-bottom:var(--space-lg);line-height:var(--line-height-normal)}.alert-info{background-color:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border)}.alert-error{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-light)}.alert-warning{background-color:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning)}.alert-success{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.alert-with-icon{align-items:flex-start;gap:var(--space-sm);display:flex}.alert-icon{flex-shrink:0;width:20px;height:20px}.alert-content{flex:1}.alert-dismissible{padding-right:40px;position:relative}.alert-close{top:var(--space-sm);right:var(--space-sm);cursor:pointer;color:inherit;opacity:.7;padding:var(--space-xs);transition:opacity var(--transition-fast);background:0 0;border:none;position:absolute}.alert-close:hover{opacity:1}.auth-loading-spinner{justify-content:center;align-items:center;gap:var(--space-lg);flex-direction:column;height:100%;display:flex}.auth-loading-spinner .spinner{border:4px solid var(--color-gray-100);border-top:4px solid var(--color-coral);border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}.auth-loading-spinner .spinner-text{color:var(--color-gray-500)}.config-warning{padding:var(--space-sm);background-color:var(--color-warning-bg);color:var(--color-warning-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:left;margin-top:var(--space-sm);border:1px solid var(--color-warning)}.config-warning strong{margin-bottom:var(--space-sm);display:block}.config-warning p{margin:var(--space-xs)0}.config-warning ol{margin:var(--space-xs)0;padding-left:var(--space-lg)}.config-warning code{border-radius:var(--radius-sm);font-size:var(--font-size-xs);background-color:#0000001a;padding:2px 4px}.config-warning .hint-text{margin-top:var(--space-sm);font-size:var(--font-size-xs);color:var(--color-gray-500)}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}.hidden{display:none}.inline{display:inline}.list-item{display:list-item}.min-h-screen{min-height:100vh}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}*{letter-spacing:var(--letter-spacing-normal);box-sizing:border-box;margin:0;padding:0;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}body{cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}html{margin:0;padding:0;overflow-x:hidden}input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=tel],input[type=number],textarea,[contenteditable=true]{cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text}a,button,[role=button],[type=button],[type=submit],[type=reset],select,label[for],.clickable,[onclick]{cursor:pointer}a{color:var(--color-coral);text-decoration:none}a:hover{color:var(--color-coral-dark);text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--color-coral);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--navbar-height: 100px}.navbar{background-color:var(--color-white);border-bottom:1px solid var(--color-gray-200);position:relative;z-index:100;overflow:visible}.navbar-container{max-width:1400px;margin:0 auto;padding:0 3rem;position:relative;overflow:visible}.navbar-content{display:grid;grid-template-columns:auto 1fr auto;align-items:center;height:var(--navbar-height);position:relative;gap:var(--space-2-5);overflow:visible}.navbar-logo{font-size:36px;text-decoration:none;display:flex;align-items:center;letter-spacing:-.02em}.navbar-logo:hover{opacity:.9}.logo-bold{font-weight:700;color:var(--color-text-dark)}.logo-light{font-weight:300;color:var(--color-text-dark)}.e-with-dash{position:relative;display:inline-block}.e-with-dash:before{content:"";position:absolute;top:13px;left:50%;transform:translate(-50%);width:10px;height:2.5px;background-color:var(--color-coral);border-radius:2px}.navbar-links-wrapper{display:flex;justify-content:center;align-items:center;width:100%}.navbar-links{display:flex;align-items:center;gap:var(--space-2xl)}.navbar-link{font-size:var(--font-size-lg);color:var(--color-gray-600);text-decoration:none;transition:all var(--transition-normal)}.navbar-link:hover{color:var(--color-coral)}.navbar-link.active{font-weight:var(--font-weight-bold);color:var(--color-coral)}.insights-dropdown{position:relative;z-index:110}.insights-button{display:flex;align-items:center;gap:.25rem;font-size:var(--font-size-lg);color:var(--color-gray-600);background:none;border:none;cursor:pointer;transition:all var(--transition-normal);padding:0}.insights-button:hover{color:var(--color-coral)}.insights-button.active{font-weight:var(--font-weight-bold);color:var(--color-coral)}.dropdown-icon{width:16px;height:16px;transition:transform .2s ease}.dropdown-icon.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;width:13rem;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:.5rem;box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a;z-index:150;overflow:visible}.dropdown-link{display:block;padding:.75rem 1.25rem;font-size:15px;color:var(--color-text-dark);text-decoration:none;transition:all .2s ease}.dropdown-link:hover{background-color:var(--color-gray-150);color:var(--color-coral)}.dropdown-link:first-child{border-radius:.5rem .5rem 0 0}.dropdown-link:last-child{border-radius:0 0 .5rem .5rem}.profile-container{display:flex;align-items:center;flex-shrink:0;position:relative;z-index:1000;overflow:visible}.profile-avatar-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;transition:transform .2s ease;outline:none}.profile-avatar-button:hover{transform:scale(1.05)}.profile-avatar-button:focus{outline:2px solid var(--color-gray-200);outline-offset:2px}.profile-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;background-color:var(--color-gray-150);border:2px solid var(--color-gray-200);box-shadow:0 1px 2px #0000000d;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.profile-avatar-button:hover .profile-avatar{border-color:var(--color-gray-300);box-shadow:0 2px 8px #0000001a}.profile-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.profile-avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);background:linear-gradient(135deg,var(--color-green-primary) 0%,var(--color-green-light) 100%)}.profile-avatar-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-gray-600);background-color:var(--color-gray-150)}.profile-dropdown-menu{position:absolute;top:100%;right:0;margin-top:12px;width:180px;min-height:80px;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:.5rem;box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a;z-index:1000;overflow:visible;animation:slideDown .2s ease;pointer-events:auto}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown-link{display:block;padding:12px 16px;font-size:14px;color:var(--color-text-dark);text-decoration:none;transition:all .2s ease;cursor:pointer;background:none;border:none;border-bottom:1px solid var(--color-gray-100);width:100%;text-align:left;font-family:inherit}.profile-dropdown-link:last-child{border-bottom:none}.profile-dropdown-link:hover{background-color:var(--color-gray-150);color:var(--color-coral)}.profile-dropdown-link.logout-button{color:var(--color-error);font-weight:500}.profile-dropdown-link.logout-button:hover{background-color:var(--color-error-bg);color:var(--color-error-text)}.mobile-menu-button{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--color-text-dark);transition:color .2s}.mobile-menu-button:hover{color:var(--color-coral)}.hamburger-icon{width:28px;height:28px}.mobile-menu-overlay{display:none;position:fixed;top:var(--navbar-height);left:0;right:0;bottom:0;background-color:#00000080;z-index:200;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu{position:absolute;top:0;right:0;width:280px;max-width:85vw;height:100%;background-color:var(--color-white);box-shadow:-2px 0 8px #0000001a;padding:24px 0;overflow-y:auto;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-menu-link{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;font-size:16px;color:var(--color-gray-600);text-decoration:none;transition:all .2s ease;background:none;border:none;width:100%;text-align:left;cursor:pointer;font-family:Poppins,sans-serif;letter-spacing:-.01em}.mobile-menu-link:hover{background-color:var(--color-gray-150);color:var(--color-coral)}.mobile-menu-link.active{font-weight:var(--font-weight-bold);color:var(--color-coral);background-color:var(--color-gray-150)}.mobile-insights-section{border-bottom:1px solid var(--color-gray-200);border-top:1px solid var(--color-gray-200);margin:8px 0}.mobile-dropdown-icon{width:18px;height:18px;transition:transform .2s ease}.mobile-dropdown-icon.open{transform:rotate(180deg)}.mobile-dropdown-items{background-color:var(--color-gray-150);padding:8px 0}.mobile-dropdown-link{display:block;padding:12px 24px 12px 40px;font-size:15px;color:var(--color-gray-600);text-decoration:none;transition:all .2s ease}.mobile-dropdown-link:hover{color:var(--color-coral);background-color:#ff6b5a0d}@media(max-width:1024px){.navbar-container{padding:0 2rem}.navbar-links{gap:2rem}.navbar-logo{font-size:32px}}@media(max-width:768px){:root{--navbar-height: 80px}.navbar-container{padding:0 1.5rem}.navbar-logo{font-size:28px}.e-with-dash:before{top:10px;width:8px;height:2px}.navbar-links-wrapper{display:none}.mobile-menu-button{display:block;margin-right:12px}.mobile-menu-overlay{display:block}.profile-container{display:flex}}@media(max-width:480px){:root{--navbar-height: 70px}.navbar-container{padding:0 1rem}.navbar-logo{font-size:24px}.e-with-dash:before{top:9px;width:7px;height:2px}.mobile-menu-button{margin-right:8px}.hamburger-icon{width:24px;height:24px}.mobile-menu{width:260px;padding:20px 0}.mobile-menu-link{padding:14px 20px;font-size:15px}.mobile-dropdown-link{padding:10px 20px 10px 36px;font-size:14px}.profile-container{display:flex}.profile-avatar{width:50px;height:50px}}.site-footer{background-color:var(--color-green-dark);padding:60px 0 30px;color:var(--color-gray-25);margin:0;width:100%}.footer-container{max-width:1400px;margin:0 auto;padding:0 60px}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-left{display:flex;flex-direction:column;gap:24px}.footer-logo{font-size:32px;text-decoration:none;display:flex;align-items:center;letter-spacing:-.02em}.footer-logo .logo-bold{font-weight:700;color:var(--color-white)}.footer-logo .logo-light{font-weight:300;color:var(--color-white)}.footer-logo .e-with-dash{position:relative;display:inline-block}.footer-logo .e-with-dash:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:9px;height:2.5px;background-color:var(--color-coral);border-radius:2px}.footer-links{display:flex;flex-wrap:wrap;gap:24px}.footer-link{font-size:14px;color:var(--color-gray-25);text-decoration:none;transition:color .2s;letter-spacing:-.01em}.footer-link:hover{color:var(--color-white)}.footer-right{display:flex;align-items:flex-start}.footer-nav-links{display:flex;flex-direction:column;gap:16px;align-items:flex-end}.footer-nav-link{font-size:14px;color:var(--color-gray-25);text-decoration:none;transition:color .2s;letter-spacing:-.01em}.footer-nav-link:hover{color:var(--color-white)}.footer-copyright{font-size:13px;color:var(--color-gray-25);text-align:center;letter-spacing:-.01em}@media(max-width:1024px){.footer-container{padding:0 40px}}@media(max-width:768px){.site-footer{padding:40px 0 20px}.footer-container{padding:0 20px}.footer-content{flex-direction:column;gap:24px;margin-bottom:20px;padding-bottom:20px}.footer-left{align-items:center;gap:18px;width:100%}.footer-logo{font-size:26px}.footer-logo .e-with-dash:before{top:10px;width:8px;height:2px}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 16px;width:100%;justify-items:center}.footer-link{font-size:12px;text-align:center}.footer-right{width:100%}.footer-nav-links{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px}.footer-nav-link{font-size:13px}.footer-copyright{font-size:11px;padding-top:8px}}@media(max-width:480px){.site-footer{padding:32px 0 16px}.footer-container{padding:0 16px}.footer-content{gap:20px;margin-bottom:16px;padding-bottom:16px}.footer-left{gap:16px}.footer-logo{font-size:22px}.footer-logo .e-with-dash:before{top:8px;width:7px;height:2px}.footer-links{grid-template-columns:repeat(2,1fr);gap:8px 12px;row-gap:8px}.footer-link{font-size:11px}.footer-nav-links{gap:10px 16px}.footer-nav-link{font-size:11px}.footer-copyright{font-size:10px;padding-top:6px}}.protected-route__loading{display:flex;justify-content:center;align-items:center;min-height:100vh;flex-direction:column;gap:var(--space-2-5)}.protected-route__spinner{width:50px;height:50px;border:4px solid var(--color-gray-loading);border-top-color:var(--color-coral);border-radius:50%;animation:protected-route-spin 1s linear infinite}.protected-route__text{color:var(--color-gray-500)}@keyframes protected-route-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner-container{display:flex;justify-content:center;align-items:center;padding:40px 20px}.loading-spinner-fullpage{display:flex;justify-content:center;align-items:center;min-height:100vh;flex-direction:column;gap:20px;background-color:var(--color-gray-150)}.loading-spinner-content{display:flex;flex-direction:column;align-items:center;gap:16px}.loading-spinner{border-radius:50%;border-style:solid;border-color:var(--color-gray-100);border-top-color:var(--color-green-muted);animation:spin 1s linear infinite}.loading-spinner--small{width:24px;height:24px;border-width:2px}.loading-spinner--medium{width:40px;height:40px;border-width:3px}.loading-spinner--large{width:50px;height:50px;border-width:4px}.loading-spinner-message{color:var(--color-gray-500);font-size:16px;margin:0;text-align:center}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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}.skip-link{position:absolute;top:-40px;left:0;background:#b91c1c;color:var(--color-white);padding:8px 16px;text-decoration:none;z-index:10000;font-weight:600;font-size:14px;border-radius:0 0 4px;transition:top .2s ease}.skip-link:hover{background:#991b1b;text-decoration:underline}.skip-link:focus{top:0;outline:3px solid #fca5a5;outline-offset:-3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.focusable:not(:focus):not(:focus-within){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
