:root { --lab-green: #a9ef81; --lab-deep: #071d13; --lab-panel: #103523; }
.account-action { border-radius: .5rem; font-weight: 700; }
.lab-body { background: radial-gradient(circle at 75% 5%, rgb(72 150 91 / .2), transparent 30rem), var(--lab-deep); min-height: 100vh; }
.navbar { background: rgb(7 29 19 / .8); backdrop-filter: blur(12px); }.text-lime { color: var(--lab-green) !important; }.portal-hero { min-height: 19rem; }.portal-hero h1 { letter-spacing: -.06em; }.portal-orbit { align-items: center; background: radial-gradient(circle, rgb(169 239 129 / .4), transparent 62%); color: var(--lab-green); display: flex; font-size: clamp(7rem, 22vw, 13rem); height: 100%; justify-content: center; min-height: 15rem; }.tool-card { background: linear-gradient(145deg, rgb(24 74 49 / .96), rgb(11 41 26 / .96)); border: 1px solid #397453; border-radius: 1.25rem; color: inherit; overflow: hidden; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }.tool-card:not(.coming-soon):hover, .tool-card:not(.coming-soon):focus { border-color: var(--lab-green); box-shadow: 0 1rem 2rem rgb(0 0 0 / .25); transform: translateY(-.25rem); }.coming-soon { opacity: .72; }.tool-icon { align-items: center; border-radius: 1rem; display: inline-flex; font-size: 1.6rem; height: 3.25rem; justify-content: center; width: 3.25rem; }.auth-dialog { background: #0b291a; border: 1px solid #5d9b74; border-radius: 1rem; color: #f3fff5; max-width: 26rem; padding: 1.25rem; width: calc(100vw - 2rem); }.auth-dialog::backdrop { background: rgb(0 0 0 / .72); }.auth-dialog label { display: grid; gap: .45rem; margin-top: .8rem; }.auth-dialog input { background: #061b10; border: 1px solid #5d9b74; border-radius: .4rem; color: #f3fff5; min-height: 2.6rem; padding: .5rem .65rem; }.dialog-close { background: transparent; border: 0; color: #bfe5c9; float: right; font-size: 1.5rem; }.eyebrow { color: var(--lab-green); font-size: .75rem; font-weight: 800; letter-spacing: .15em; }.form-help { color: #bfe5c9; }.google-sign-in { background: #e7f7e8; border-radius: .4rem; color: #153824; display: block; font-weight: 700; margin-top: .75rem; padding: .7rem; text-align: center; text-decoration: none; }.auth-links { display: flex; justify-content: space-between; margin-top: 1rem; }.text-button { background: transparent; border: 0; color: #baf4c9; padding: 0; text-decoration: underline; }
