
.reg-wrap{max-width:580px}
.reg-card{padding:2.25rem 2.5rem 2rem}
.reg-card .auth-brand{margin-bottom:1.35rem}
.reg-card .auth-title,.reg-card .auth-sub{opacity:1;animation:none}
.reg-card .auth-sub{margin-bottom:1.5rem}
.reg-card [hidden]{display:none!important}

.reg-steps{list-style:none;display:flex;justify-content:center;gap:0;margin:0 auto 1.6rem;max-width:360px}
.reg-steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;font-size:11.5px;color:var(--ink-4);transition:color .3s}
.reg-steps li+li::before{content:'';position:absolute;top:13px;left:calc(-50% + 14px);width:calc(100% - 28px);height:2px;background:var(--line);border-radius:2px;transition:background .4s}
.reg-dot{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;background:rgba(255,255,255,.6);border:1px solid rgba(167,108,78,.2);color:var(--ink-3);transition:background .3s,border-color .3s,color .3s,transform .3s}
.reg-dot b{font-weight:600}
.reg-dot i{display:none;font-size:11px}
.reg-steps li.is-active{color:var(--ink)}
.reg-steps li.is-active .reg-dot{background:linear-gradient(180deg,var(--caramel),var(--cocoa));border-color:transparent;color:var(--cream);transform:scale(1.06);box-shadow:0 6px 14px -6px rgba(167,108,78,.6)}
.reg-steps li.is-done{color:var(--ink-2)}
.reg-steps li.is-done .reg-dot{background:var(--green-bg);border-color:rgba(90,122,63,.25);color:var(--green)}
.reg-steps li.is-done .reg-dot b{display:none}
.reg-steps li.is-done .reg-dot i{display:block}
.reg-steps li.is-done::before,.reg-steps li.is-active::before{background:linear-gradient(90deg,rgba(90,122,63,.35),rgba(191,130,92,.45))}
.reg-card.is-verify .reg-steps{display:none}

.reg-panel{display:flex;flex-direction:column;gap:1.15rem}
.reg-panel.is-entering{animation:regIn .45s cubic-bezier(0.16,1,0.3,1) both}
.reg-panel.is-entering.from-left{animation-name:regInLeft}
@keyframes regIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@keyframes regInLeft{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
.reg-panel .auth-title{margin-bottom:0}
.reg-panel .auth-sub{margin:-12px 0 .35rem}
.reg-center{text-align:center}
#finishLogin,#finishDone{display:flex;flex-direction:column;gap:1.15rem}
.reg-card .btn-auth:focus-visible,.reg-back:focus-visible,.reg-link:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(191,130,92,.35)}
.reg-alert{margin-bottom:1rem}

.reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem .85rem}
.reg-grid .span-2{grid-column:1 / -1}
.reg-row{display:grid;grid-template-columns:110px 1fr;gap:.85rem}
.reg-card .form-input.no-icon{padding-left:12px}
.reg-opt{font-weight:400;color:var(--ink-4);margin-left:4px}
.reg-hint{font-size:12px;color:var(--ink-3);line-height:1.45}
.reg-select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:34px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a7565' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 12px center}

.form-group.has-error .form-input,.form-group.has-error .reg-domain .form-input{border-color:rgba(160,79,63,.55);background:rgba(240,217,208,.35)}
.form-group.has-error .reg-tile,.form-group.has-error .reg-seg{border-color:rgba(160,79,63,.45)}
.field-error{display:flex;gap:6px;align-items:flex-start;font-size:12px;line-height:1.4;color:var(--red);animation:fadeUp .25s ease both}
.field-error::before{content:'\f06a';font-family:'Font Awesome 6 Free';font-weight:900;font-size:11px;margin-top:1px}

.reg-segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.reg-seg{position:relative;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;cursor:pointer;background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.75);transition:background .2s,border-color .2s,box-shadow .2s}
.reg-seg input{position:absolute;opacity:0;pointer-events:none}
.reg-seg>i{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(191,130,92,.12);color:var(--cocoa);font-size:14px;flex-shrink:0}
.reg-seg span{display:flex;flex-direction:column;font-size:13.5px;font-weight:500;color:var(--ink);line-height:1.25}
.reg-seg small{font-size:11.5px;font-weight:400;color:var(--ink-3)}
.reg-seg:hover{background:rgba(255,255,255,.7)}
.reg-seg:has(input:checked){background:rgba(255,255,255,.85);border-color:var(--caramel);box-shadow:0 0 0 3px rgba(191,130,92,.14)}
.reg-seg:has(input:focus-visible){box-shadow:0 0 0 3px rgba(191,130,92,.3)}
.reg-segment-sm .reg-seg{padding:9px 12px}

.reg-tiles{display:grid;gap:8px}
.reg-tiles-3{grid-template-columns:repeat(3,1fr)}
.reg-tile{position:relative;display:flex;flex-direction:column;gap:2px;padding:11px 12px;border-radius:12px;cursor:pointer;background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.75);transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.reg-tile input{position:absolute;opacity:0;pointer-events:none}
.reg-tile strong{font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.reg-tile small{font-size:11.5px;color:var(--ink-3);line-height:1.3}
.reg-tile:hover{background:rgba(255,255,255,.7);transform:translateY(-1px)}
.reg-tile:has(input:checked){background:rgba(255,255,255,.88);border-color:var(--caramel);box-shadow:0 0 0 3px rgba(191,130,92,.14)}
.reg-tile:has(input:focus-visible){box-shadow:0 0 0 3px rgba(191,130,92,.3)}
.reg-tile-icon{align-items:center;text-align:center;gap:6px;padding:14px 8px}
.reg-tile-icon i{font-size:19px;color:var(--cocoa)}
.reg-tile-icon strong{font-size:13.5px;font-weight:500}

.reg-exempt{display:flex;flex-direction:column;gap:.75rem;margin-top:-.35rem;padding:12px;border-radius:14px;background:rgba(255,255,255,.3);border:1px dashed rgba(167,108,78,.22)}

.reg-status-wrap .form-input{padding-right:2.4rem}
.reg-status{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:13px;display:flex}
.reg-status.is-ok{color:var(--green)}
.reg-status.is-warn{color:#b07a2a}
.reg-status.is-bad{color:var(--red)}
.reg-status.is-busy{color:var(--ink-4)}

.reg-invite{padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.85);font-size:13px;line-height:1.45;color:var(--ink-2);text-align:center}
.reg-invite i{margin-right:7px;font-size:13px;color:var(--cocoa)}
.reg-invite b{font-weight:600;color:var(--ink)}
.reg-ref-by{font-size:12.5px;line-height:1.4;color:var(--green)}
.reg-ref-by b{font-weight:600}

.reg-domain{position:relative;display:flex;align-items:stretch}
.reg-domain .form-input{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none;padding-right:2.2rem}
.reg-domain-prefix{display:flex;align-items:center;padding:0 4px 0 12px;border-radius:10px 0 0 10px;background:rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.7);border-right:none;font-size:14px;color:var(--ink-3);white-space:nowrap}
.reg-domain .reg-status{right:12px}

.reg-drop{display:block;cursor:pointer;border-radius:14px;border:1.5px dashed rgba(167,108,78,.28);background:rgba(255,255,255,.35);transition:border-color .2s,background .2s}
.reg-drop:hover,.reg-drop.is-over{border-color:var(--caramel);background:rgba(255,255,255,.6)}
.reg-drop-empty{display:flex;align-items:center;gap:12px;padding:14px 16px;font-size:13.5px;color:var(--ink-2)}
.reg-drop-empty>i{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(191,130,92,.12);color:var(--cocoa);font-size:16px;flex-shrink:0}
.reg-drop-empty span{display:flex;flex-direction:column;line-height:1.35}
.reg-drop-empty span span{display:block}
.reg-drop-empty b{font-weight:500;color:var(--cocoa)}
.reg-drop-empty small{font-size:11.5px;color:var(--ink-4)}
.reg-drop-full{position:relative;display:flex;align-items:center;justify-content:center;padding:14px;min-height:72px}
.reg-drop-full img{max-height:52px;max-width:70%;object-fit:contain}
.reg-drop-remove{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;border:none;cursor:pointer;background:rgba(42,31,23,.08);color:var(--ink-2)}
.reg-drop-remove:hover{background:rgba(42,31,23,.16)}

.reg-consents{gap:8px}
.reg-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-2);line-height:1.45;cursor:pointer}
.reg-check input{appearance:none;-webkit-appearance:none;flex-shrink:0;width:18px;height:18px;margin-top:1px;border-radius:5px;border:1.5px solid rgba(167,108,78,.35);background:rgba(255,255,255,.6);cursor:pointer;display:grid;place-content:center;transition:background .15s,border-color .15s}
.reg-check input::after{content:'';width:9px;height:5px;border:2px solid var(--cream);border-top:none;border-right:none;transform:rotate(-45deg) translate(1px,-1px);opacity:0}
.reg-check input:checked{background:linear-gradient(180deg,var(--caramel),var(--cocoa));border-color:transparent}
.reg-check input:checked::after{opacity:1}
.reg-check input:focus-visible{box-shadow:0 0 0 3px rgba(191,130,92,.3)}
.reg-check a{color:var(--cocoa);text-decoration:none;font-weight:500}
.reg-check a:hover{text-decoration:underline}

.reg-actions{display:flex;align-items:center;gap:12px;margin-top:.25rem}
.reg-actions .btn-auth{flex:1;margin-top:0}
.reg-back{display:flex;align-items:center;gap:7px;padding:11px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.45);font-family:inherit;font-size:13.5px;color:var(--ink-2);cursor:pointer;transition:background .2s}
.reg-back:hover{background:rgba(255,255,255,.75)}
.reg-panel .auth-footer{opacity:1;animation:none;margin-top:.25rem}
.reg-card .btn-auth{opacity:1}
.reg-card .btn-auth[disabled]{opacity:.6;pointer-events:none}

.reg-meter{height:3px;border-radius:3px;background:var(--line);overflow:hidden;margin-top:3px}
.reg-meter i{display:block;height:100%;width:0;border-radius:3px;background:var(--red);transition:width .3s,background .3s}

.reg-resume{align-self:flex-start;margin-top:2px;padding:0;border:none;background:none;font-family:inherit;font-size:12.5px;font-weight:500;color:var(--cocoa);cursor:pointer;text-decoration:underline;text-underline-offset:2px}

.reg-icon{width:54px;height:54px;margin:0 auto .2rem;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--cocoa);background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.85);box-shadow:0 10px 24px -14px rgba(90,55,30,.35)}
.reg-icon-ok{color:var(--green);background:var(--green-bg);border-color:rgba(90,122,63,.2)}
.reg-code{display:flex;justify-content:center;gap:8px;margin:.25rem 0 .35rem}
.reg-code input{width:48px;height:58px;border-radius:12px;text-align:center;font-family:"Geist Mono",ui-monospace,monospace;font-size:24px;font-weight:500;color:var(--ink);background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.8);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.reg-code input:nth-child(3){margin-right:10px}
.reg-code input:focus{border-color:var(--caramel);box-shadow:0 0 0 3px rgba(191,130,92,.15);background:rgba(255,255,255,.85)}
.reg-code.is-bad input{border-color:rgba(160,79,63,.55);animation:regShake .35s}
@keyframes regShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.reg-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--ink-4)}
.reg-link{border:none;background:none;padding:0;font-family:inherit;font-size:13px;color:var(--cocoa);font-weight:500;cursor:pointer}
.reg-link:hover{text-decoration:underline}
.reg-link[disabled]{color:var(--ink-4);cursor:default;text-decoration:none}
.reg-link-block{margin-top:.25rem}
.reg-change-email{display:flex;flex-direction:column;gap:1rem;text-align:left}
.reg-fallback{display:flex;flex-direction:column;gap:.9rem;text-align:left;margin-top:.5rem}

.reg-url{display:inline-flex;align-self:center;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.9);font-size:14px;font-weight:500;color:var(--ink)}
.reg-url i{color:var(--green);font-size:12px}
.reg-finish{display:flex;flex-direction:column;gap:1.15rem}
.reg-next{list-style:none;counter-reset:rn;margin:0;padding:0;text-align:left;display:flex;flex-direction:column;gap:8px}
.reg-next li{counter-increment:rn;position:relative;padding:11px 14px 11px 48px;border-radius:14px;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.85)}
.reg-next li::before{content:counter(rn);position:absolute;left:14px;top:12px;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--cream);background:var(--cocoa)}
.reg-next b{display:block;font-size:14px;font-weight:600;color:var(--ink)}
.reg-next span{display:block;font-size:12.5px;line-height:1.5;color:var(--ink-3);margin-top:1px}

@media(max-width:560px){
    .reg-card{padding:1.9rem 1.25rem 1.5rem}
    .reg-grid{grid-template-columns:1fr}
    .reg-tiles-3{grid-template-columns:1fr}
    .reg-tile-icon{flex-direction:row;justify-content:flex-start;text-align:left;padding:11px 12px;gap:10px}
    .reg-segment{grid-template-columns:1fr}
    .reg-code{gap:6px}
    .reg-code input{width:42px;height:52px;font-size:21px}
    .reg-code input:nth-child(3){margin-right:6px}
    .reg-steplabel{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
    .reg-panel.is-entering,.field-error,.reg-code.is-bad input{animation:none!important}
}

.pac-container{border-radius:12px;border:1px solid rgba(255,255,255,.85);background:rgba(255,253,247,.98);box-shadow:0 18px 40px -18px rgba(90,55,30,.35);font-family:"Geist",ui-sans-serif,system-ui,sans-serif;margin-top:4px;overflow:hidden}
.pac-container::after{display:none}
.pac-item{padding:9px 12px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-2);cursor:pointer}
.pac-item:first-child{border-top:none}
.pac-item:hover,.pac-item-selected{background:rgba(191,130,92,.1)}
.pac-item-query{font-size:13.5px;color:var(--ink)}
.pac-icon{display:none}

.reg-prereq{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:500;color:var(--caramel,#BF825C);text-decoration:underline;text-underline-offset:3px}
.reg-prereq:hover{color:var(--cocoa,#A76C4E)}
