.shell{position:relative;min-height:100svh;overflow:hidden}.atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 55% at 12% 18%,rgba(47,154,134,.38),transparent 60%),radial-gradient(ellipse 55% 50% at 88% 78%,rgba(159,217,164,.22),transparent 58%),radial-gradient(ellipse 45% 40% at 70% 12%,rgba(232,246,242,.08),transparent 55%),linear-gradient(160deg,#041412,#0b2e2a 48%,#123d35);animation:drift 18s ease-in-out infinite alternate}.atmosphere:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(232,246,242,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(232,246,242,.03) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at 40% 40%,black 20%,transparent 75%);mask-image:radial-gradient(circle at 40% 40%,black 20%,transparent 75%);opacity:.55}@keyframes drift{0%{transform:scale(1) translate(0)}to{transform:scale(1.05) translate(-1.5%,1%)}}.layout{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;min-height:100svh;width:min(1120px,calc(100% - 2.5rem));margin:0 auto;padding:clamp(1.5rem,4vw,3rem) 0}.brand-pane{max-width:34rem}.brand-mark{margin:0 0 1.25rem;font-family:var(--font-display);font-size:clamp(2.75rem,6vw,4.25rem);font-style:italic;letter-spacing:-.02em;line-height:.95;color:var(--foam)}.headline{margin:0;font-family:var(--font-display);font-size:clamp(2.2rem,4.8vw,3.6rem);font-weight:400;line-height:1.05;letter-spacing:-.02em}.headline span{display:block;color:var(--teal-bright)}.lede{margin:1.25rem 0 0;max-width:28rem;color:var(--mist);font-size:1.05rem;line-height:1.65}.auth-pane{width:min(100%,420px);justify-self:end;padding:1.75rem 1.6rem 1.5rem;border:1px solid var(--line);border-radius:18px;background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #00000047}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin-bottom:1.35rem;padding:.3rem;border-radius:999px;background:#ffffff0a}.tab{border:0;border-radius:999px;padding:.65rem .75rem;background:transparent;color:var(--mist);transition:background .22s ease,color .22s ease,transform .22s ease}.tab.active{background:#5ecfb82e;color:var(--foam)}.tab:hover{color:var(--foam)}.auth-pane h2{margin:0;font-family:var(--font-display);font-size:2rem;font-weight:400;letter-spacing:-.02em}.auth-sub{margin:.45rem 0 1.35rem;color:var(--mist);font-size:.95rem;line-height:1.5}.auth-form{display:grid;gap:.95rem}.field{display:grid;gap:.4rem}.field span{font-size:.82rem;font-weight:500;letter-spacing:.02em;color:var(--mist)}.field input{width:100%;border:1px solid var(--line);border-radius:12px;padding:.85rem .95rem;background:#0414128c;color:var(--foam);outline:none;transition:border-color .18s ease,box-shadow .18s ease}.field input::placeholder{color:#b7d8cf73}.field input:focus{border-color:#5ecfb8a6;box-shadow:0 0 0 3px #5ecfb829}.password-row{position:relative}.password-row input{padding-right:4.25rem}.toggle-visibility{position:absolute;top:50%;right:.55rem;transform:translateY(-50%);border:0;background:transparent;color:var(--teal-bright);font-size:.78rem;font-weight:600;letter-spacing:.02em}.form-error{margin:0;color:var(--danger);font-size:.88rem}.btn{border:0;border-radius:12px;padding:.9rem 1.1rem;font-weight:600;transition:transform .18s ease,background .18s ease,opacity .18s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{margin-top:.25rem;background:linear-gradient(135deg,var(--teal) 0%,#1f7d6c 100%);color:#041412}.btn-primary:hover{background:linear-gradient(135deg,var(--teal-bright) 0%,var(--teal) 100%)}.btn-ghost{border:1px solid var(--line);background:transparent;color:var(--foam)}.btn-ghost:hover{background:#ffffff0d}.switch-line{margin:1.15rem 0 0;text-align:center;color:var(--mist);font-size:.9rem}.text-link{border:0;padding:0;background:transparent;color:var(--teal-bright);font-weight:600}.text-link:hover{text-decoration:underline}.welcome{position:relative;z-index:1;display:grid;place-items:start;gap:.75rem;width:min(560px,calc(100% - 2.5rem));margin:0 auto;min-height:100svh;padding:4rem 0;align-content:center}.welcome h1{margin:0;font-family:var(--font-display);font-size:clamp(2.4rem,5vw,3.4rem);font-weight:400;line-height:1.1}.brand-enter,.form-enter,.panel-enter{animation:rise .7s cubic-bezier(.22,1,.36,1) both}.delay-1{animation-delay:90ms}.delay-2{animation-delay:.18s}.form-enter{animation-delay:.16s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.layout{grid-template-columns:1fr;align-content:start;padding-top:2rem;padding-bottom:2.5rem}.brand-pane{max-width:none}.auth-pane{justify-self:stretch;width:100%}.lede{max-width:none}}@media(prefers-reduced-motion:reduce){.atmosphere,.brand-enter,.form-enter,.panel-enter{animation:none}}:root{--ink: #071b19;--ink-soft: #0d2c28;--foam: #e8f6f2;--mist: #b7d8cf;--teal: #2f9a86;--teal-bright: #5ecfb8;--leaf: #9fd9a4;--danger: #e07a6a;--glass: rgba(8, 28, 25, .72);--line: rgba(232, 246, 242, .14);--font-display: "Instrument Serif", Georgia, serif;--font-body: "Sora", "Segoe UI", sans-serif;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-body);color:var(--foam);background:var(--ink);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}::selection{background:#5ecfb859}
