@charset "UTF-8";::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:none}::-webkit-scrollbar-track:hover{background:none}::-webkit-scrollbar-thumb{background:#6a6a6a}::-webkit-scrollbar-thumb:hover{background:#909090}a:has(> .MuiButton-root){text-decoration:none!important}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100dvh}:root{--header-height: 64px}.app-content{min-height:calc(100dvh - var(--header-height))}body{line-height:1.5;-webkit-font-smoothing:antialiased;background-color:#e9e9e9}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}.clickable{cursor:pointer}.centered{align-self:center}.auth-wrapper{display:flex;flex:1;width:100%;justify-content:center;align-items:flex-start;min-height:calc(100dvh - var(--header-height, 64px));opacity:0;animation:fadeIn .8s ease forwards;animation-delay:.2s;padding-top:.75rem}@media (min-width: 768px){.auth-wrapper{padding:1rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-container{background-color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;border-radius:20px;box-shadow:0 0 10px #0000001a;min-width:320px;width:100%;max-width:860px}@media (min-width: 640px){.auth-container{padding:22px}}@media (min-width: 768px){.auth-container{padding:30px}}.auth-container .abair-logo-lock{width:100px;align-self:center}.auth-container .bold{font-weight:600}.auth-container .form-container{display:flex;flex-direction:column;align-self:center;margin-top:.5rem;width:100%}@media (min-width: 768px){.auth-container .form-container{max-width:820px}}.auth-container .form-container .action-title{font-family:sans-serif;font-weight:700;text-align:center;color:#000;font-size:1.6rem;margin-top:.5rem}.auth-container .form-container .form{display:flex;flex-direction:column;width:100%;font-family:sans-serif;align-self:center;max-width:400px;padding-top:.5rem}@media (min-width: 768px){.auth-container .form-container .form{padding-top:1.25rem}}.auth-container .form-container .form label{font-size:.85rem;padding-bottom:.25rem}.auth-container .form-container .form input,.auth-container .form-container .form select,.auth-container .form-container .form button{background-color:#f3f3f3;border:1px solid lightgray;border-radius:6px;padding-inline:.5rem;height:2.6rem;font-size:1rem;margin-bottom:1rem}.auth-container .form-container .form .submit-button{width:100%;background-color:#16a34a;color:#fff;border:none;font-weight:500;cursor:pointer;transition:background-color .2s ease;display:flex;justify-content:center;align-items:center;margin-top:.3rem}.auth-container .form-container .form .submit-button:hover:not(:disabled){background-color:#166534}.auth-container .form-container .form .submit-button:disabled{background-color:#bbf7d0;cursor:not-allowed}.auth-container .form-container .form .submit-button.loading{background-color:#bbf7d0}.auth-container .form-container .form .signout-button{width:100%;background-color:#dc2626;color:#fff;border:none;font-weight:500;cursor:pointer;transition:background-color .2s ease;display:flex;justify-content:center;align-items:center;margin-top:.3rem}.auth-container .form-container .form .signout-button:hover{background-color:#b91c1c}.auth-container .form-container .form select:hover{cursor:pointer}.auth-container .form-container .form select{padding:.25rem;margin-bottom:.5rem}.auth-container .form-container .form .warning-text{color:red;margin-bottom:1rem;text-align:left;padding-top:0}.auth-container .form-container .form .password-field-wrapper{position:relative;display:flex;flex-direction:column;width:100%}.auth-container .form-container .form .password-requirements{position:absolute;right:-260px;width:250px;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:12px;box-shadow:0 2px 5px #0000001a;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:10;bottom:0px}.auth-container .form-container .form .password-requirements.show{opacity:1;visibility:visible}.auth-container .form-container .form .password-requirements h5{margin-top:0;margin-bottom:8px;font-size:.9rem;color:#495057}.auth-container .form-container .form .password-requirements ul{margin:0;padding-left:20px;list-style-type:none}.auth-container .form-container .form .password-requirements ul li{position:relative;padding-left:5px;margin-bottom:5px;font-size:.85rem;color:#6c757d}.auth-container .form-container .form .password-requirements ul li:before{content:"\2022";position:absolute;left:-12px;color:#dc3545}.auth-container .form-container .form .password-requirements ul li.met{color:#198754}.auth-container .form-container .form .password-requirements ul li.met:before{content:"\2713";color:#198754}.auth-container .auth-toggle{text-align:center;font-size:.95rem}.auth-container .auth-toggle p{font-size:.85rem;padding-top:.3rem;font-family:sans-serif;text-align:center;color:#4b5563}.auth-container .auth-toggle .clickable{color:#2563eb;cursor:pointer;transition:color .2s ease,text-decoration-color .2s ease;text-decoration:none}.auth-container .auth-toggle .clickable:hover,.auth-container .auth-toggle .clickable:active,.auth-container .auth-toggle .clickable:focus-visible{color:#1d4ed8;text-decoration:underline}.error-message{display:flex;flex-direction:column;background-color:#ffebee;color:#d32f2f;padding:.4rem .5rem;margin-bottom:.5rem;border-radius:4px;font-size:.9rem;border-left:4px solid #d32f2f;text-align:left;position:relative;animation:slideDown .3s ease-out forwards;transform-origin:top;transform:scaleY(0);opacity:0;transition:transform .3s ease,opacity .3s ease}.error-message.show{opacity:1;transform:scaleY(1)}.error-message .error-header{display:flex;align-items:center;justify-content:space-between;width:100%}.error-message .error-icon{margin-right:14px;font-size:.85rem;font-weight:700;color:#fff;background-color:#d32f2f;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.error-message .error-content{flex:1;display:flex;justify-content:space-between;align-items:center}.error-message .error-content p{margin:0;padding-right:10px;line-height:1.1;font-size:.85rem}.error-message .error-close{background:none!important;border:none!important;cursor:pointer;max-height:30px;max-width:30px;font-size:14px;line-height:16px;color:#d32f2f;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s;margin:0!important}.error-message .error-close:hover{opacity:1}.error-message .error-list{margin:.3rem 0 0 32px;padding-left:1rem;font-size:.85rem;line-height:1.2}.error-message .error-list li{margin-bottom:.2rem}.error-message .error-list li:last-child{margin-bottom:0}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.submit-button{width:100%;background-color:#16a34a;color:#fff;border:none;border-radius:4px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;display:flex;justify-content:center;align-items:center}.submit-button:hover:not(:disabled){background-color:#166534}.submit-button:disabled{background-color:#bbf7d0;cursor:not-allowed}.submit-button.loading{background-color:#bbf7d0}.consent{font-family:sans-serif;background-color:#fff;padding-left:.25rem;padding-right:.25rem}.consent .form-container{display:flex;flex-direction:column;max-width:1024px;align-self:center;margin-top:.5rem;width:100%}.consent .action-title{font-family:sans-serif;font-weight:700;text-align:center;color:#000;font-size:1.6rem;margin-top:.5rem}.consent .form{display:flex;flex-direction:column;width:100%;font-family:sans-serif;align-self:center;max-width:400px;padding-top:.5rem}@media (min-width: 768px){.consent .form{padding-top:1.25rem;max-width:720px}}.consent .form label{font-size:.85rem;padding-bottom:.25rem}.consent .form input,.consent .form select,.consent .form button{background-color:#f3f3f3;border:1px solid lightgray;border-radius:6px;padding-inline:.5rem;height:2.6rem;font-size:1rem;margin-bottom:1rem}.consent h1{font-weight:500;text-align:center}.consent .age-buttons-container{width:100%;display:flex;flex-direction:column;padding:1rem}.consent .age-buttons{align-self:center;display:flex;gap:.75rem}.consent .age-button{margin:.5rem;width:160px;padding:.5rem .75rem;border-radius:10px;background-color:#fff;color:#16a34a;font-weight:700;border:2px solid #16a34a;box-shadow:0 1px 2px #0000000a;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .1s ease}.consent .age-button:hover{background-color:#16a34a;color:#fff;box-shadow:0 4px 10px #16a34a40;transform:translateY(-1px)}.consent .age-button:focus{outline:none;box-shadow:0 0 0 3px #16a34a33}.consent .age-button-selected{background-color:#16a34a;color:#fff;font-weight:700;border:2px solid #16a34a!important;box-shadow:0 4px 10px #16a34a40}.consent .age-button-selected:hover{background-color:#166534;border-color:#166534}.consent .age-button-not-selected{background-color:#fff;color:#16a34a;border:2px solid #16a34a;font-weight:600}.consent .consent-text-container{width:100%;display:flex;align-items:center;gap:12px;padding:.875rem 1rem;background-color:#f8fafc;margin-top:.75rem;margin-bottom:.75rem;border-radius:10px;border:1px solid #e5e7eb;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.consent .consent-text-container:hover{border-color:#16a34a;box-shadow:0 1px 2px #0000000a,0 0 0 3px #2563eb14}.consent .consent-text-container:focus-within{border-color:#16a34a;box-shadow:0 0 0 3px #2563eb26;background-color:#f1f5f9}.consent .consent-text{flex:1 1 auto;font-size:.95rem;color:#374151;line-height:1.5}.consent .consent-tick-container{flex:0 0 auto;display:flex;justify-content:center;align-items:center;padding-top:0}.consent .consent-tick{width:20px;height:20px;accent-color:#16a34a;cursor:pointer}.consent .info-container{max-height:340px;border:1px solid #e5e7eb;padding:1rem 1.25rem;overflow-y:auto;background-color:#fff;gap:.75rem;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 1px 2px #0000000a}.consent .info-container::-webkit-scrollbar{width:10px}.consent .info-container::-webkit-scrollbar-track{background:#f8fafc;border-radius:8px}.consent .info-container::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:8px;border:2px solid #f8fafc}.consent .info-header{text-align:center;font-size:1.1rem;margin-bottom:.5rem;color:#111827;font-weight:600;margin-top:2rem;margin-bottom:1rem}.consent .info-title{text-align:left;font-weight:600;color:#111827;padding-bottom:.15rem;margin:0}.consent .info-content{text-align:left;padding-top:0rem;color:#374151;line-height:1.6;font-size:.95rem;margin:0}.consent .download-button-container{display:flex;flex-direction:column;align-items:center;width:100%;margin-top:1rem;margin-bottom:2rem}.consent .download-button{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;border:1px solid #e5e7eb;background-color:#fff;color:#111827;width:100%;max-width:420px;padding:.6rem .9rem;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.consent .download-button:hover{background-color:#f3f4f6;color:#111827;border-color:#d1d5db;box-shadow:0 1px 2px #0000000a}.consent .download-button:active{transform:translateY(.5px)}.consent .download-text{display:block;text-decoration:none;margin:0;font-size:.9rem}.consent .download-image{display:inline-block;width:20px;height:20px;margin-right:.35rem;background-color:currentColor;-webkit-mask:url(/download-icon.png) no-repeat center/contain;mask:url(/download-icon.png) no-repeat center/contain}.consent .under-16-instructions{display:none}.consent .admonition{width:100%;display:flex;align-items:flex-start;gap:12px;padding:.875rem 1rem;margin:.75rem 0 1rem;border:1px solid #ef4444;border-left-width:8px;border-radius:0 10px 10px 0;background-color:#fee2e2;color:#991b1b}.consent .admonition .admonition-icon{flex:0 0 auto;width:20px;height:20px;margin-top:2px;background-color:currentColor;-webkit-mask:url(/warning-icon.png) no-repeat center/contain;mask:url(/warning-icon.png) no-repeat center/contain;margin-left:2px}.consent .admonition .admonition-content{flex:1 1 auto;margin-right:.25rem}.consent .admonition .admonition-title{font-weight:700;margin:0 0 4px}.consent .password-field-wrapper{position:relative;display:flex;flex-direction:column;width:100%}.consent .password-requirements{position:absolute;right:-260px;width:250px;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:12px;box-shadow:0 2px 5px #0000001a;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:10;bottom:0px}.consent .password-requirements.show{opacity:1;visibility:visible}.consent .password-requirements h5{margin-top:0;margin-bottom:8px;font-size:.9rem;color:#495057}.consent .password-requirements ul{margin:0;padding-left:20px;list-style-type:none}.consent .password-requirements ul li{position:relative;padding-left:5px;margin-bottom:5px;font-size:.85rem;color:#6c757d}.consent .password-requirements ul li:before{content:"\2022";position:absolute;left:-12px;color:#dc3545}.consent .password-requirements ul li.met{color:#198754}.consent .password-requirements ul li.met:before{content:"\2713";color:#198754}.api-keys{font-family:sans-serif}.api-keys .keys-section{margin:1.5rem auto 0;width:400px}.api-keys .keys-title{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;color:#111827}.api-keys .empty-text{color:#6b7280;font-style:italic}.api-keys .key-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.api-keys .key-item{display:flex;align-items:center;justify-content:space-between;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#ffffff}.api-keys .key-meta{color:#6b7280;font-size:.85rem}.api-keys .key-actions{display:inline-flex;align-items:center;gap:8px}.api-keys .api-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #fecaca;background:#ffffff;color:#dc2626;border-radius:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.api-keys .api-delete-btn:hover{background:#dc2626;color:#fff;border-color:#dc2626;box-shadow:0 1px 2px #0000000d}.api-keys .api-key-header{display:flex;align-items:baseline;gap:.5rem;margin-top:1rem;margin-bottom:.25rem}.api-keys .api-key-header .desc{color:#6b7280;font-size:.95rem}.api-keys .api-key-box{display:flex;align-items:center;gap:8px;border:1px solid #e5e7eb;background:#f3f4f6;border-radius:8px;padding:.5rem;width:100%}.api-keys .api-key-text{flex:1;font-family:monospace;font-size:.95rem;white-space:nowrap;overflow-x:auto;overflow-y:hidden}.api-keys .api-clip-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;font-size:0;line-height:0;border:1px solid #e5e7eb;background:#ffffff;color:#374151;border-radius:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.api-keys .api-clip-btn:hover{background:#374151;color:#fff;border-color:#374151}.api-keys .api-clip-btn svg{display:block;transform:translateY(-1px)}.api-keys .api-status{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 10px;border-radius:9999px;font-size:.75rem;font-weight:700;letter-spacing:.02em;user-select:none}.api-keys .api-status.revoked{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.api-keys .api-status.active{background:#dcfce7;color:#14532d;border:1px solid #bbf7d0}.api-keys .admonition{width:100%;display:flex;align-items:flex-start;gap:12px;padding:.875rem 1rem;margin:.9rem 0 .85rem;border:1px solid #ef4444;border-left-width:8px;border-radius:0 10px 10px 0;background-color:#fee2e2;color:#991b1b}.api-keys .admonition .admonition-icon{flex:0 0 auto;width:20px;height:20px;margin-top:2px;background-color:currentColor;-webkit-mask:url(/warning-icon.png) no-repeat center/contain;mask:url(/warning-icon.png) no-repeat center/contain;margin-left:2px}.api-keys .admonition svg.admonition-icon{-webkit-mask:none;mask:none;background:none;stroke:currentColor;fill:none;margin-left:2px}.api-keys .admonition .admonition-content{flex:1 1 auto;margin-right:.25rem}.api-keys .admonition .admonition-title{font-weight:700;margin:0 0 4px}.api-keys .admonition-success{border-color:#16a34a;background-color:#dcfce7;color:#14532d}.api-keys .admonition-warning{border-color:#f59e0b;background-color:#fef3c7;color:#92400e}.header{font-family:sans-serif;background-color:#fff;padding:.5rem .6rem;color:#16a34a;box-shadow:0 2px 8px #00000014;height:56px}.header .nav-inner{max-width:1000px;height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.header .nav-left{display:flex;align-items:center;gap:16px}.header .brand{color:#16a34a;margin:0;cursor:pointer;display:inline-flex;align-items:center}.header .brand-icon{width:22px;height:22px;display:block}.header .brand-lock{width:48px;height:48px;display:block;object-fit:contain}.header .brand-home{width:28px;height:28px;display:block}.header .nav-links{display:inline-flex;align-items:center;gap:18px}.header .nav-links a{color:#16a34a;text-decoration:none;font-size:1rem;transition:color .2s ease}.header .nav-links a:hover{color:#166534;text-decoration:underline}.header .nav-links a.ref-link{color:#2563eb}.header .nav-links a.ref-link:hover{color:#1d4ed8;text-decoration:underline}.header .nav-right{display:flex;align-items:center;gap:12px}.header .nav-right a{color:#16a34a;text-decoration:none;font-size:.95rem;transition:color .2s ease}.header .nav-right a:hover{color:#166534;text-decoration:underline}.header .nav-right a.signout-link{color:#dc2626;font-weight:500}.header .nav-right a.signout-link:hover{color:#b91c1c}.header .nav-right a.signout-link svg{color:inherit}.header .ref-link{color:#166534}.header .ref-link:hover{color:#16a34a}.header .signout-link{display:inline-flex;align-items:center;gap:6px;color:#dc2626;font-weight:500;text-decoration:none}.header .signout-link:hover{color:#b91c1c;text-decoration:underline}.header .signout-link svg{display:block}.header .menu-toggle{display:none;background:transparent;border:none;color:#16a34a;cursor:pointer;padding:6px}.header .mobile-menu{display:none;position:fixed;top:56px;left:0;right:0;background:#ffffff;border-top:1px solid #e5e7eb;box-shadow:0 4px 10px #00000014;padding:10px 12px;z-index:40}.header .mobile-menu a{display:block;padding:10px 6px;color:#16a34a;text-decoration:none;font-size:1rem}.header .mobile-menu a:hover{color:#166534;text-decoration:underline}.header .mobile-menu a.signout-link{display:inline-flex;align-items:center;gap:6px;color:#dc2626}.header .mobile-menu a.signout-link:hover{color:#b91c1c}.header .mobile-menu a.signout-link svg{display:inline-block}.header .mobile-menu a.ref-link{color:#2563eb}.header .mobile-menu a.ref-link:hover{color:#1d4ed8}.header .mobile-menu.open{display:block}@media (max-width: 640px){.header .nav-links,.header .signout-link{display:none}.header .menu-toggle{display:inline-flex;align-items:center;justify-content:center}}
