/* RoboThings Premium Login — everything scoped to .rt-auth / .rt-auth-modal */
html body .rt-auth,html body .rt-auth *{box-sizing:border-box}
html body .rt-auth{
	--rt-ink:#1C1C1E;--rt-ink-2:#2A2A2C;--rt-mustard:#F47C08;--rt-sun:#F47C08;--rt-cream:#F4F1EC;--rt-line:#E4DED6;--rt-muted:#5C5A55;
	display:flex !important;flex-wrap:wrap;width:100%;max-width:980px;margin:0 auto;background:#FFFFFF;border-radius:28px;overflow:hidden;
	box-shadow:0 30px 70px rgba(42,42,44,.22);color-scheme:light;font-family:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif !important;color:var(--rt-ink);text-align:left;line-height:1.5
}
html body .rt-auth-page{padding:24px 0 48px}

/* Brand panel */
html body .rt-auth__brand{flex:1 1 360px;min-width:0;background:#FFFFFF;padding:36px 40px 0;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate}
html body .rt-auth__brand::after{content:'';position:absolute;z-index:-1;right:-70px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:var(--rt-mustard)}

html body .rt-auth__logo{display:block;width:120px !important;height:auto !important;max-width:none;margin:0 !important}
html body .rt-auth__brand-title{margin:24px 0 0 !important;font-family:Sora,'IBM Plex Sans',sans-serif !important;font-size:32px !important;line-height:1.12 !important;font-weight:800 !important;letter-spacing:-.02em;color:var(--rt-ink-2) !important}
html body .rt-auth__brand-sub{margin:12px 0 0 !important;font-size:15px !important;line-height:1.6 !important;color:#4A2A10 !important;max-width:330px}
html body .rt-auth__perks{list-style:none !important;margin:26px 0 0 !important;padding:0 !important;display:flex;flex-direction:column;gap:12px}
html body .rt-auth__perks li{display:flex;align-items:center;gap:12px;margin:0 !important;padding:0 !important;font-size:15px;font-weight:600;color:var(--rt-ink)}
html body .rt-auth__perks li::before,html body .rt-auth__perks li::marker{content:none !important;display:none !important}
html body .rt-auth__tick{width:28px;height:28px;border-radius:14px;background:var(--rt-ink);color:var(--rt-sun);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
html body .rt-auth__tick svg{width:14px;height:14px;stroke-width:3}
html body .rt-auth__brand-foot{margin-top:auto;padding-top:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
html body .rt-auth__stat{padding-bottom:28px;display:flex;flex-direction:column}
html body .rt-auth__stat strong{font-family:Sora,sans-serif;font-weight:800;font-size:26px;letter-spacing:-.02em;color:var(--rt-ink-2);line-height:1.1}
html body .rt-auth__stat span{font-size:13px;line-height:1.4;color:#4A2A10}
html body .rt-auth__mascot{display:block;flex-shrink:0;margin-left:auto;width:180px;height:auto}
html body .rt-auth__wave{transform-origin:14px 58px;animation:rtAuthWave 2.6s ease-in-out infinite}
@keyframes rtAuthWave{0%,60%,100%{transform:rotate(0)}70%{transform:rotate(-14deg)}80%{transform:rotate(10deg)}90%{transform:rotate(-8deg)}}

/* Main panel */
html body .rt-auth__main{border-left:1px solid #F0EBE4;flex:1.2 1 420px;min-width:0;padding:44px 52px 34px;display:flex;flex-direction:column}
html body .rt-auth__tabs{display:flex;gap:4px;padding:4px;background:var(--rt-cream);border-radius:14px;width:100%;max-width:300px;margin-bottom:28px}
html body .rt-auth__tabs[hidden],html body .rt-auth__pane[hidden]{display:none !important}
html body .rt-auth button.rt-auth__tab{flex:1;height:42px !important;min-height:0 !important;margin:0 !important;padding:0 10px !important;border:0 !important;border-radius:11px !important;background:transparent !important;color:var(--rt-muted) !important;font:600 15px/1 'IBM Plex Sans',sans-serif !important;cursor:pointer;box-shadow:none !important;text-transform:none !important;letter-spacing:0 !important}
html body .rt-auth button.rt-auth__tab.is-active{background:var(--rt-ink) !important;color:#FFFFFF !important;font-weight:700 !important}
html body .rt-auth__title{margin:0 !important;padding:0 !important;font-family:Sora,'IBM Plex Sans',sans-serif !important;font-size:28px !important;line-height:1.2 !important;font-weight:800 !important;letter-spacing:-.02em;color:var(--rt-ink-2) !important;text-transform:none !important}
html body .rt-auth__sub{margin:8px 0 0 !important;font-size:15px !important;line-height:1.55 !important;color:var(--rt-muted) !important}
html body .rt-auth__form{margin:22px 0 0 !important;padding:0 !important;border:0 !important;background:none !important;display:flex;flex-direction:column}
html body .rt-auth__field{margin:0 0 16px !important;padding:0 !important;display:flex;flex-direction:column;width:100% !important;float:none !important}
html body .rt-auth__labelrow{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
html body .rt-auth label{margin:0 0 8px !important;padding:0 !important;font:700 13px/1.3 'IBM Plex Sans',sans-serif !important;color:var(--rt-ink) !important;text-transform:none !important;letter-spacing:0 !important;display:block}
html body .rt-auth__req{color:#B45309}
html body .rt-auth input.rt-auth__input{width:100% !important;height:52px !important;min-height:0 !important;margin:0 !important;padding:0 16px !important;border:1.5px solid var(--rt-line) !important;border-radius:12px !important;background:#FFFFFF !important;color:var(--rt-ink) !important;font:400 15px/1.2 'IBM Plex Sans',sans-serif !important;box-shadow:none !important;outline:none !important;transition:border-color .15s,box-shadow .15s}
html body .rt-auth input.rt-auth__input::placeholder{color:#8A877F !important;opacity:1}
html body .rt-auth input.rt-auth__input:focus{border-color:var(--rt-mustard) !important;box-shadow:0 0 0 4px rgba(244,124,8,.24) !important}
html body .rt-auth__pw{position:relative;display:block}
html body .rt-auth__pw input.rt-auth__input{padding-right:52px !important}
html body .rt-auth button.rt-auth__eye{position:absolute;right:6px;top:6px;width:40px !important;height:40px !important;min-height:0 !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:10px !important;background:transparent !important;color:var(--rt-muted) !important;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:none !important}
html body .rt-auth button.rt-auth__eye.is-on{color:var(--rt-ink) !important;background:var(--rt-cream) !important}
html body .rt-auth button.rt-auth__link{margin:0 !important;padding:0 !important;border:0 !important;background:none !important;min-height:0 !important;height:auto !important;font:700 13px/1.3 'IBM Plex Sans',sans-serif !important;color:#B45309 !important;cursor:pointer;box-shadow:none !important;text-transform:none !important;letter-spacing:0 !important}
html body .rt-auth button.rt-auth__link--u{font-size:14px !important;color:var(--rt-ink) !important;text-decoration:underline !important}
html body .rt-auth label.rt-auth__check{display:flex !important;align-items:center;gap:10px;margin:2px 0 4px !important;font:400 14px/1.5 'IBM Plex Sans',sans-serif !important;color:#4E4D4A !important;cursor:pointer}
html body .rt-auth label.rt-auth__check--terms{align-items:flex-start;margin-top:4px !important}
html body .rt-auth label.rt-auth__check input{width:18px !important;height:18px !important;margin:0 !important;flex-shrink:0;accent-color:var(--rt-ink)}
html body .rt-auth label.rt-auth__check--terms input{margin-top:2px !important}
html body .rt-auth label.rt-auth__check a{color:var(--rt-ink) !important;font-weight:700;text-decoration:underline}
html body .rt-auth button.rt-auth__btn{margin:22px 0 0 !important;width:100% !important;height:56px !important;min-height:0 !important;padding:0 20px !important;border:0 !important;border-radius:14px !important;background:var(--rt-ink) !important;color:#FFFFFF !important;font:700 16px/1 'IBM Plex Sans',sans-serif !important;display:flex !important;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:none !important;text-transform:none !important;letter-spacing:0 !important;transition:background .15s,transform .15s}
html body .rt-auth button.rt-auth__btn:hover{background:#000000 !important;transform:translateY(-1px)}
html body .rt-auth__btn-arrow{color:var(--rt-mustard);display:inline-flex}
html body .rt-auth__meter{display:flex;gap:6px;margin:-6px 0 0}
html body .rt-auth__meter i{flex:1;height:5px;border-radius:3px;background:#EAE5DE;transition:background .2s}
html body .rt-auth__meter i.is-on{background:var(--rt-mustard)}
html body .rt-auth__hint{margin:6px 0 10px !important;font-size:12px !important;line-height:1.5 !important;color:#6B6A66 !important}
html body .rt-auth__note{margin:12px 0 0 !important;text-align:center;font-size:13px !important;color:#6B6A66 !important}
html body .rt-auth__switch{margin:18px 0 0 !important;text-align:center;font-size:14px !important;color:var(--rt-muted) !important}
html body .rt-auth__extra:empty{display:none}
html body .rt-auth__extra{margin-top:14px;font-size:13px;color:#6B6A66}
html body .rt-auth__extra p{margin:0 0 10px}
html body .rt-auth button.rt-auth__back{align-self:flex-start;margin:0 !important;padding:8px 0 !important;border:0 !important;background:none !important;height:auto !important;min-height:0 !important;font:700 14px/1 'IBM Plex Sans',sans-serif !important;color:var(--rt-ink) !important;display:inline-flex;align-items:center;gap:6px;cursor:pointer;box-shadow:none !important;text-transform:none !important}
html body .rt-auth__badge{margin:22px 0 18px;width:64px;height:64px;border-radius:18px;background:#FFEBD8;color:var(--rt-ink);display:flex;align-items:center;justify-content:center}
html body .rt-auth__badge svg{width:30px;height:30px;stroke-width:1.7}
html body .rt-auth__foot{margin-top:auto;padding-top:26px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;font-size:12px;color:#6B6A66}
html body .rt-auth__foot span{display:inline-flex;align-items:center;gap:6px}
html body .rt-auth__foot svg{width:14px;height:14px}
html body .rt-auth__foot a{color:var(--rt-ink) !important;font-weight:700}
html body .rt-auth button:focus-visible,html body .rt-auth a:focus-visible,html body .rt-auth-modal button:focus-visible{outline:3px solid var(--rt-mustard) !important;outline-offset:2px}

/* Popup */
html.rt-auth-lock,html.rt-auth-lock body{overflow:hidden !important}
.rt-auth-modal[hidden]{display:none !important}
.rt-auth-modal{color-scheme:light;position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:24px}
.rt-auth-modal__backdrop{position:absolute;inset:0;background:rgba(30,30,32,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.rt-auth-modal__dialog{position:relative;width:100%;max-width:980px;max-height:calc(100vh - 48px);overflow:auto;border-radius:28px;animation:rtAuthIn .22s ease-out}
.rt-auth-modal__dialog .rt-auth{box-shadow:0 40px 80px rgba(0,0,0,.35)}
html body .rt-auth-modal button.rt-auth-modal__close{position:absolute;top:18px;right:18px;z-index:3;width:40px !important;height:40px !important;min-height:0 !important;padding:0 !important;margin:0 !important;border:0 !important;border-radius:20px !important;background:#F4F1EC !important;color:#1C1C1E !important;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:none !important}
@keyframes rtAuthIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}

/* Phones */
@media (max-width:760px){
	html body .rt-auth{border-radius:22px}
	html body .rt-auth__perks,html body .rt-auth__stat{display:none !important}
	html body .rt-auth__brand{padding:24px 22px 0;flex-basis:100%}
	html body .rt-auth__brand-title{font-size:24px !important;margin-top:18px !important}
	html body .rt-auth__brand-sub{font-size:14px !important}
	html body .rt-auth__brand-foot{padding-top:6px}
	html body .rt-auth__mascot{width:110px}
	html body .rt-auth__logo{width:96px !important}
	html body .rt-auth__brand::after{width:190px;height:190px;right:-50px;bottom:-70px}
	html body .rt-auth__main{padding:26px 22px 28px;flex-basis:100%;border-left:0;border-top:1px solid #F0EBE4}
	html body .rt-auth__tabs{max-width:none}
	.rt-auth-modal{padding:0;align-items:stretch}
	.rt-auth-modal__dialog{max-height:100vh;height:100%;border-radius:0}
	.rt-auth-modal__dialog .rt-auth{border-radius:0;min-height:100%}
	html body .rt-auth-modal button.rt-auth-modal__close{top:14px;right:14px}
}
@media (prefers-reduced-motion:reduce){html body .rt-auth__wave,.rt-auth-modal__dialog{animation:none}}
