/* SamGo authentication experience: light, focused, and deliberately alive. */
:root{--auth-ink:#102e2a;--auth-muted:#657b78;--auth-green:#167a67;--auth-cyan:#20a8c9;--auth-violet:#7657e8;--auth-pink:#ef5aa4;--auth-orange:#f09b49;--auth-ease:cubic-bezier(.22,.78,.24,1)}
[hidden]{display:none!important}
.auth-body{min-height:100%;overflow-x:hidden;overflow-y:auto;color:var(--auth-ink);background:linear-gradient(115deg,rgba(245,248,255,.96),rgba(239,249,246,.94)),#f4f8f7;--pointer-x:68%;--pointer-y:25%;--shift-x:0px;--shift-y:0px}
.auth-grid,.auth-glow,.auth-pointer,.auth-orbs{position:fixed;inset:0;pointer-events:none}
.auth-grid{opacity:.52;background-image:linear-gradient(rgba(19,94,82,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(19,94,82,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 88%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 88%)}
.auth-glow{background:radial-gradient(circle at 14% 14%,rgba(118,87,232,.12),transparent 32%),radial-gradient(circle at 82% 78%,rgba(32,168,201,.13),transparent 34%),radial-gradient(circle at 58% 42%,rgba(71,199,153,.08),transparent 28%);animation:glow-breathe 9s var(--auth-ease) infinite alternate}
.auth-pointer{opacity:.7;background:radial-gradient(360px circle at var(--pointer-x) var(--pointer-y),rgba(255,255,255,.92),transparent 72%);transition:opacity .3s}
.auth-orb{position:absolute;display:block;border-radius:50%;filter:blur(1px)}
.orb-one{width:280px;height:280px;left:-90px;top:18%;background:linear-gradient(135deg,rgba(117,87,232,.13),rgba(239,90,164,.06));transform:translate(calc(var(--shift-x)*-.32),calc(var(--shift-y)*-.32));animation:orb-float 11s ease-in-out infinite alternate}
.orb-two{width:410px;height:410px;right:-150px;bottom:-100px;background:linear-gradient(135deg,rgba(32,168,201,.12),rgba(61,197,150,.08));transform:translate(calc(var(--shift-x)*.22),calc(var(--shift-y)*.22));animation:orb-float 14s ease-in-out -4s infinite alternate-reverse}
.orb-three{width:90px;height:90px;right:15%;top:12%;border:1px solid rgba(118,87,232,.14);background:rgba(255,255,255,.28);transform:translate(calc(var(--shift-x)*.55),calc(var(--shift-y)*.55));animation:orb-float 8s ease-in-out -2s infinite alternate}
@keyframes glow-breathe{from{opacity:.64}to{opacity:1}}@keyframes orb-float{from{margin-top:-10px}to{margin-top:18px}}
.auth-shell{position:relative;z-index:2;width:min(1240px,100%);min-height:100vh;margin:0 auto;padding:28px 42px 36px;display:flex;flex-direction:column}
.auth-topbar{min-height:52px;display:flex;align-items:center;justify-content:space-between}
.auth-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.auth-mark{position:relative;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:conic-gradient(from var(--brand-turn,0deg),var(--auth-cyan),var(--auth-violet),var(--auth-pink),var(--auth-orange),var(--auth-cyan));box-shadow:0 7px 22px rgba(118,87,232,.22),0 0 22px rgba(32,168,201,.2);transform:rotate(45deg);animation:brand-spectrum 8s linear infinite,brand-pulse 3.8s ease-in-out infinite}
.auth-mark::before{content:"";position:absolute;inset:3px;border-radius:9px;background:inherit;filter:saturate(1.25)}
.auth-mark i{position:relative;z-index:1;width:13px;height:13px;border-radius:4px;background:rgba(255,255,255,.82);box-shadow:0 0 12px #fff}
@property --brand-turn{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes brand-spectrum{to{--brand-turn:360deg}}@keyframes brand-pulse{50%{box-shadow:0 9px 28px rgba(239,90,164,.25),0 0 30px rgba(32,168,201,.27)}}
.auth-word{font-family:var(--head,"Archivo",sans-serif);font-size:24px;font-weight:700;letter-spacing:-.035em;background:linear-gradient(100deg,#168aa1,#7557e8 46%,#ef5aa4 76%,#168aa1);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:word-flow 7s var(--auth-ease) infinite alternate}
@keyframes word-flow{to{background-position:100% 50%}}
.auth-home{display:inline-flex;align-items:center;gap:7px;color:var(--auth-muted);text-decoration:none;font-size:14px;font-weight:600;transition:color .2s,transform .2s var(--auth-ease)}.auth-home span{transition:transform .2s var(--auth-ease)}.auth-home:hover{color:var(--auth-green);transform:translateX(-2px)}.auth-home:hover span{transform:translateX(-3px)}
.auth-layout{flex:1;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:clamp(58px,8vw,116px);align-items:center;padding:35px 18px 24px}
.auth-story{min-width:0;animation:story-enter .8s var(--auth-ease) both}@keyframes story-enter{from{opacity:0;transform:translateX(-20px)}}
.auth-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--auth-green);font-family:var(--mono,monospace);font-size:11px;font-weight:600;letter-spacing:.16em}.auth-eyebrow span{width:24px;height:1px;background:currentColor}
.auth-story h1{max-width:680px;margin:0;color:#153934;font-family:var(--head,sans-serif);font-size:clamp(42px,5.2vw,70px);line-height:1.05;letter-spacing:-.055em}.auth-story h1 em{position:relative;color:transparent;font-style:normal;background:linear-gradient(100deg,#0f8f77,#318ebc 45%,#7657e8);-webkit-background-clip:text;background-clip:text}.auth-story h1 em::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:7px;border-radius:50%;border-top:2px solid rgba(118,87,232,.25);transform:rotate(-1deg)}
.auth-story-copy{max-width:590px;margin:22px 0 24px;color:var(--auth-muted);font-size:16px;line-height:1.8}
.auth-demo{max-width:620px;overflow:hidden;border:1px solid rgba(16,87,76,.14);border-radius:19px;background:rgba(255,255,255,.72);box-shadow:0 24px 70px rgba(40,72,68,.1);backdrop-filter:blur(18px);transform:perspective(1000px) rotateX(calc(var(--shift-y)*-.018deg)) rotateY(calc(var(--shift-x)*.018deg));transition:transform .18s ease-out}
.demo-top{height:34px;display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:1px solid rgba(16,87,76,.09)}.demo-top i{width:7px;height:7px;border-radius:50%;background:#d5dedb}.demo-top i:first-child{background:#ee858d}.demo-top i:nth-child(2){background:#f3c56a}.demo-top i:nth-child(3){background:#73caa6}.demo-top span{margin-left:7px;color:#8a9a97;font:9px var(--mono,monospace);letter-spacing:.06em}
.demo-body{display:grid;grid-template-columns:1fr .94fr;gap:12px;padding:14px}.demo-chat{grid-column:1/-1;display:flex;gap:9px;align-items:flex-start}.demo-avatar{flex:0 0 auto;width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#fff;background:#1a7565;font-size:9px;font-weight:700}.demo-chat p{margin:0;padding:8px 12px;border-radius:5px 12px 12px 12px;color:#385b55;background:#edf5f2;font-size:11px}
.demo-progress{padding:12px;border-radius:13px;background:#f5f9f8}.demo-progress-head{display:flex;justify-content:space-between;color:#607873;font-size:9px}.demo-progress-head b{color:#197764;font-family:var(--mono,monospace)}.demo-track{height:3px;margin:8px 0 10px;border-radius:99px;background:#dbe7e3;overflow:hidden}.demo-track i{display:block;width:78%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#28aa8c,#3a99bc,#7759e3);animation:demo-progress 4.5s var(--auth-ease) infinite alternate}@keyframes demo-progress{0%{width:45%}100%{width:88%}}
.demo-progress ul{display:grid;gap:7px;margin:0;padding:0;list-style:none;color:#78908b;font-size:9px}.demo-progress li{display:flex;align-items:center;gap:6px}.demo-progress li i{width:13px;height:13px;display:grid;place-items:center;border-radius:50%;background:#dfe9e6;color:#fff;font-size:8px;font-style:normal}.demo-progress li.done{color:#466963}.demo-progress li.done i{background:#3ab18f}.demo-progress li.active i{border:2px solid #7b61e7;border-top-color:transparent;background:transparent;animation:mini-spin 1s linear infinite}@keyframes mini-spin{to{transform:rotate(360deg)}}
.demo-preview{position:relative;min-height:116px;overflow:hidden;border-radius:13px;background:linear-gradient(135deg,#173f39,#0c2928)}.demo-preview::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 40%,rgba(76,218,171,.19),transparent 36%)}.demo-preview-copy{position:absolute;z-index:1;left:12px;top:13px;color:#fff}.demo-preview-copy small{display:block;margin-bottom:6px;color:#92dec4;font-size:6px;letter-spacing:.13em}.demo-preview-copy strong{font-family:var(--head,sans-serif);font-size:11px;line-height:1.2}.demo-preview-copy span{display:block;width:46px;height:3px;margin-top:7px;border-radius:4px;background:rgba(255,255,255,.18)}.demo-preview-copy span:last-child{width:31px;margin-top:4px}
.demo-product{position:absolute;right:15px;bottom:16px;width:68px;height:56px;transform:skewY(-3deg)}.demo-product i{position:absolute;inset:13px 0 0;border:2px solid #82dfc0;border-radius:7px 7px 3px 3px;box-shadow:0 0 15px rgba(94,220,177,.24)}.demo-product i::before,.demo-product i::after{content:"";position:absolute;top:7px;bottom:0;width:1px;background:#82dfc0}.demo-product i::before{left:21px}.demo-product i::after{right:21px}.demo-product b{position:absolute;left:9px;right:9px;top:0;height:21px;border:2px solid #b6f5df;transform:perspective(60px) rotateX(55deg)}
.auth-trust{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:18px;color:#5f7772;font-size:11px}.auth-trust span{display:inline-flex;align-items:center;gap:6px}.auth-trust i{width:15px;height:15px;display:grid;place-items:center;border-radius:50%;color:#167a67;background:rgba(22,122,103,.1);font-size:9px;font-style:normal}
.auth-card-wrap{width:100%;max-width:455px;justify-self:end;animation:card-enter .75s var(--auth-ease) .08s both}@keyframes card-enter{from{opacity:0;transform:translateY(18px) scale(.985)}}
.auth-card{position:relative;overflow:hidden;width:100%;padding:32px;border:1px solid rgba(33,91,82,.13);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 30px 90px rgba(39,73,68,.15),inset 0 1px 0 #fff;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);--card-x:50%;--card-y:50%}.auth-card::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(360px circle at var(--card-x) var(--card-y),rgba(71,199,153,.1),transparent 58%)}.auth-card::after{content:"";position:absolute;left:18%;right:18%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(32,168,201,.7),rgba(118,87,232,.65),transparent)}.auth-card>*{position:relative;z-index:1}.auth-card.is-switching{animation:panel-switch .32s var(--auth-ease)}@keyframes panel-switch{0%{transform:scale(1)}45%{transform:scale(.985);opacity:.78}100%{transform:scale(1);opacity:1}}
.auth-card-head{margin-bottom:20px}.auth-kicker{margin:0 0 6px;color:var(--auth-green);font-size:12px;font-weight:700;letter-spacing:.08em}.auth-card-head h2{margin:0;color:#143833;font-family:var(--head,sans-serif);font-size:25px;line-height:1.2;letter-spacing:-.035em}.auth-card-head>p:last-child{margin:8px 0 0;color:#78908b;font-size:13px}
.auth-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:4px;margin-bottom:22px;border-radius:12px;background:#eff4f2}.auth-tab-indicator{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:9px;background:#fff;box-shadow:0 5px 18px rgba(24,72,65,.09);transition:transform .32s var(--auth-ease)}.auth-tabs:has(#tabRegister.on) .auth-tab-indicator{transform:translateX(100%)}.auth-tab{position:relative;z-index:1;padding:10px;border:0;border-radius:9px;background:transparent;color:#718783;font-family:var(--head,sans-serif);font-size:14px;font-weight:600;cursor:pointer;transition:color .2s}.auth-tab:hover{color:#214c45}.auth-tab.on{color:#176f60}
.auth-form{display:flex;flex-direction:column;gap:15px}.auth-form.panel-enter{animation:form-enter .38s var(--auth-ease) both}@keyframes form-enter{from{opacity:0;transform:translateY(9px)}}
.auth-field{display:flex;flex-direction:column;gap:7px}.auth-field>span:first-child{color:#526b67;font-size:12px;font-weight:650;letter-spacing:.02em}.auth-control{position:relative;display:block}.field-icon{position:absolute;z-index:2;left:14px;top:50%;transform:translateY(-50%);color:#98aaa7;font-family:var(--mono,monospace);font-size:13px;font-style:normal;transition:color .2s}.field-lock{width:11px;height:9px;border:1.5px solid currentColor;border-radius:2px}.field-lock::before{content:"";position:absolute;width:7px;height:7px;left:50%;top:-7px;transform:translateX(-50%);border:1.5px solid currentColor;border-bottom:0;border-radius:7px 7px 0 0}
.auth-field input{width:100%;min-height:48px;padding:12px 43px 12px 39px;border:1px solid #d9e3e0;border-radius:12px;outline:0;background:rgba(247,250,249,.92);color:#173c36;font-family:var(--body,sans-serif);font-size:14px;transition:border-color .2s,box-shadow .2s,background .2s,transform .2s var(--auth-ease)}.auth-field>input{padding-left:14px}.auth-field input:hover{border-color:#bfd2cd;background:#fff}.auth-control:focus-within input,.auth-field>input:focus{border-color:#4bb69f;background:#fff;box-shadow:0 0 0 4px rgba(47,173,144,.1),0 8px 24px rgba(35,92,82,.06);transform:translateY(-1px)}.auth-control:focus-within .field-icon{color:#16806c}.auth-field input::placeholder{color:#a5b4b1}.auth-field input:not(:placeholder-shown):invalid{border-color:rgba(210,92,101,.45)}.auth-field input:not(:placeholder-shown):valid{border-color:rgba(46,163,128,.48)}.auth-field small{color:#899c98;font-size:11px;line-height:1.5}
.password-toggle{position:absolute;z-index:3;right:8px;top:50%;width:34px;height:34px;transform:translateY(-50%);border:0;border-radius:9px;background:transparent;cursor:pointer}.password-toggle:hover{background:#edf4f2}.password-toggle i{position:absolute;left:8px;top:11px;width:18px;height:11px;border:1.5px solid #899d99;border-radius:50%}.password-toggle i::after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;transform:translate(-50%,-50%);border-radius:50%;background:#899d99}.password-toggle.is-visible i::before{content:"";position:absolute;left:-2px;right:-2px;top:4px;height:1.5px;background:#738985;transform:rotate(-35deg)}
.password-strength{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;align-items:center}.password-strength>i{height:3px;border-radius:99px;background:#dbe5e2;transition:background .25s,transform .25s}.password-strength small{grid-column:1/-1;color:#899c98}.password-strength[data-score="1"] i:nth-child(1){background:#e27279}.password-strength[data-score="2"] i:nth-child(-n+2){background:#e9a542}.password-strength[data-score="3"] i:nth-child(-n+3){background:#42ad91}.password-strength[data-score="4"] i{background:linear-gradient(90deg,#2aaf8c,#477bc9,#7657e8);transform:scaleY(1.25)}
.auth-submit{position:relative;isolation:isolate;overflow:hidden;min-height:48px;margin-top:2px;padding:12px 18px;border:0;border-radius:12px;color:#fff;background:linear-gradient(105deg,#147764,#188d78 48%,#207f9f);background-size:160% 100%;box-shadow:0 12px 30px rgba(19,117,98,.2);font-family:var(--head,sans-serif);font-size:14px;font-weight:650;cursor:pointer;transition:transform .18s var(--auth-ease),box-shadow .2s,background-position .3s}.auth-submit::after{content:"";position:absolute;inset:0;z-index:-1;transform:translateX(-110%);background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transition:transform .55s var(--auth-ease)}.auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 36px rgba(19,117,98,.27);background-position:100% 50%}.auth-submit:hover:not(:disabled)::after{transform:translateX(110%)}.auth-submit:active:not(:disabled){transform:translateY(0) scale(.99)}.auth-submit:disabled{opacity:.58;cursor:wait}.auth-submit .button-ripple{position:absolute;width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.42);transform:translate(-50%,-50%) scale(0);animation:ripple .6s ease-out;pointer-events:none}@keyframes ripple{to{transform:translate(-50%,-50%) scale(20);opacity:0}}
.auth-note{min-height:18px;margin:0;color:#718682;font-size:12px;line-height:1.55}.auth-note.bad,.auth-note.ok{padding:9px 11px;border-radius:9px}.auth-note.bad{color:#ad3f49;background:rgba(210,92,101,.08)}.auth-note.ok{color:#16745f;background:rgba(46,163,128,.09)}.auth-forgot{margin:-2px 0 0;text-align:center}.auth-linkbutton{padding:3px 6px;border:0;background:transparent;color:#708783;font:12px var(--body,sans-serif);cursor:pointer;transition:color .2s}.auth-linkbutton:hover{color:#117765}.auth-linkbutton:disabled{opacity:.45;cursor:default}.auth-fineprint{margin:1px 0 0;padding-top:13px;border-top:1px solid #e5ecea;color:#869895;font-size:10.5px;line-height:1.65}.auth-lede{margin:0;color:#607672;font-size:12px;line-height:1.7}.auth-field input.auth-code{padding:13px 9px 13px 18px;text-align:center;font-family:var(--mono,monospace);font-size:24px;letter-spacing:9px}.auth-title{margin:0 0 3px;color:#183e38;font-family:var(--head,sans-serif);font-size:20px;letter-spacing:-.025em}
.auth-secure{display:flex;align-items:center;justify-content:center;gap:7px;margin:14px 0 0;color:#849692;font-size:10px}.auth-secure i{position:relative;width:10px;height:8px;border:1px solid #8aa29d;border-radius:2px}.auth-secure i::before{content:"";position:absolute;left:2px;top:-6px;width:4px;height:5px;border:1px solid #8aa29d;border-bottom:0;border-radius:5px 5px 0 0}
.auth-shell>.auth-brand{margin:auto auto 24px}.auth-shell>.auth-card{width:min(430px,100%);margin:0 auto}.auth-shell>.auth-foot{margin:22px auto auto}.auth-foot a{color:#718783;text-decoration:none;font-size:13px}.auth-foot a:hover{color:#167a67}a.auth-submit{display:block;text-align:center;text-decoration:none}
@media(max-width:940px){.auth-shell{padding:24px 26px 32px}.auth-layout{grid-template-columns:1fr;gap:34px;max-width:600px;width:100%;margin:auto;padding-top:42px}.auth-story{text-align:center}.auth-eyebrow{justify-content:center}.auth-story h1,.auth-story-copy,.auth-demo{margin-left:auto;margin-right:auto}.auth-story h1{font-size:clamp(38px,8vw,56px)}.auth-story-copy{margin-bottom:20px}.auth-trust{justify-content:center}.auth-card-wrap{justify-self:center}}
@media(max-width:620px){.auth-shell{padding:18px 15px 28px}.auth-layout{padding:24px 0 12px;gap:22px}.auth-home{font-size:12px}.auth-story h1{font-size:clamp(34px,10.5vw,46px)}.auth-story-copy{margin:17px auto 0;font-size:14px;line-height:1.7}.auth-demo,.auth-trust{display:none}.auth-card{padding:24px 20px;border-radius:20px}.auth-card-head h2{font-size:22px}.auth-secure{padding:0 10px;text-align:center;line-height:1.5}.orb-three{display:none}}
@media(max-height:760px) and (min-width:941px){.auth-shell{padding-top:18px;padding-bottom:18px}.auth-layout{padding-top:15px;padding-bottom:5px}.auth-story h1{font-size:48px}.auth-story-copy{margin:15px 0}.auth-card{padding:25px 28px}.auth-card-head{margin-bottom:15px}.auth-tabs{margin-bottom:16px}.auth-form{gap:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.auth-glow,.auth-orb,.auth-mark,.auth-word,.demo-track i,.demo-progress li.active i{animation:none!important}.auth-demo{transform:none!important}}
