:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#213c33;background:#f7fcf9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.login-stage{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:52px 20px 34px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,#c0ead5 0%,#ddf3e7 38%,#f5fbf7 72%,#fff 100%)}.orbit{position:absolute;border:1px solid #ffffff9c;border-radius:50%;pointer-events:none;left:50%;top:49%;transform:translate(-50%,-50%)}.orbit-one{width:1060px;height:400px}.orbit-two{width:810px;height:300px}.login-card{width:420px;max-width:100%;position:relative;padding:39px 39px 27px;border:1px solid #fff;border-radius:25px;background:#ffffffcf;box-shadow:0 20px 65px #23583f08;backdrop-filter:blur(18px)}.brand{text-align:center}.brand img{display:block;width:100%;max-width:294px;height:auto;margin:auto}.brand p{display:flex;align-items:center;justify-content:center;gap:10px;font-size:9px;letter-spacing:1.6px;font-weight:700;color:#4c8b72;margin:8px 0 0}.brand p span{height:1px;width:22px;background:#94c9af}.welcome{margin:31px 0 25px;text-align:center}h1{font-size:23px;letter-spacing:-.7px;margin:0 0 7px;font-weight:700}.welcome p{margin:0;font-size:12px;color:#7a8c83}label{display:block;font-size:12px;font-weight:600;margin:0 0 9px;color:#405b4e}.input-wrap{display:flex;align-items:center;gap:11px;background:#ffffffb3;border:1px solid #d4e4da;border-radius:12px;height:48px;padding:0 14px;margin-bottom:20px;transition:border-color .2s,box-shadow .2s}.input-wrap:focus-within{border-color:#38976d;box-shadow:0 0 0 3px #2f986b12}.input-wrap>svg{width:17px;height:17px;stroke:#83a391;fill:none;stroke-width:1.7;flex-shrink:0}input{font:inherit;font-size:13px;width:100%;min-width:0;border:0;outline:0;background:transparent;color:#234333;height:100%}input::placeholder{color:#94a89c}.toggle{border:0;background:transparent;color:#517764;font-size:11px;font-weight:700;cursor:pointer;padding:8px 0 8px 5px;min-width:34px}.submit{width:100%;height:49px;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:13px;background:#176b4c;color:#fff;border:1px solid #176b4c;border-radius:12px;font:inherit;font-weight:650;font-size:13px;box-shadow:0 7px 14px #14624320;cursor:pointer;transition:background .2s,transform .2s}.submit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.submit:hover{background:#10553c;transform:translateY(-1px)}.submit:active{transform:translateY(0)}button:focus-visible{outline:3px solid #70bb96;outline-offset:3px}.message{padding:12px;background:#edf7ef;border-radius:8px;color:#37614c;font-size:12px;line-height:1.6;margin-bottom:0}footer{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:26px;color:#8a9c91;font-size:10px}.status-dot{height:5px;width:5px;border-radius:50%;background:#63ac81}.page-footer{z-index:1;font-size:10px;letter-spacing:.2px;color:#89a391;margin:26px 0 0}.page-footer span{padding:0 7px}@media(max-width:480px){.login-stage{padding:28px 18px}.login-card{padding:32px 25px 25px;border-radius:22px}.welcome{margin-top:28px}.orbit-one{width:750px}.orbit-two{width:560px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* V4: simplified sign-in header */
.login-card .brand{margin-bottom:32px}
.login-spinner{width:16px;height:16px;border:2px solid #ffffff60;border-top-color:#fff;border-radius:50%;animation:login-spin .7s linear infinite}.submit:disabled{opacity:.8;cursor:wait;transform:none}.signing-in,.signing-in *{cursor:wait!important}@keyframes login-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.login-spinner{animation:none;border-top-color:#fff}}
