:root{--brand-green: #63C19D;--brand-orange: #FFAE00;--brand-amber: #FFD166;--brand-red: #FF0F00;--brand-cyan: #8EE1F3;--brand-pink: #FF69B4;--brand-budbee-green: #63C19D;--brand-dubs-grey: #555555;--brand-green-faded: rgba(99, 193, 157, .1)}:root{--surface-elevated: #1A1A1A;--accent: #393939;--surface: #FFFFFF;--surface-sunken: #F8F9FA;--border: #EBEBED;--text-muted: #A9ADC0;--text-primary: #000000;--text-secondary: rgba(0,0,0,.5);--border-radius: 10px;--border-color: var(--border);--dropdown-border-color: #eaeaec;--dropdown-trigger-background-color: var(--border);--dropdown-trigger-hover-background-color: #ddd;--input-error-color: var(--brand-red);--input-label-color: rgba(0,0,0,.5);--input-prefix-color: #656b73;--input-phonenumber-color: #081627;--list-item-hover-background: var(--surface-sunken)}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:Mulish,Arial,sans-serif;color:var(--text-primary);height:100dvh;display:flex;overflow:hidden}.hidden{display:none!important}.no-height{height:0!important}.fade-out{opacity:0;transition:opacity .5s ease-in-out;overflow:hidden}.login-layout{display:flex;width:100%;height:100%}.login-brand-panel{width:36%;background:var(--surface-elevated);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:3rem 2.5rem;flex-shrink:0;position:relative}.brand-top{display:flex;flex-direction:column;gap:2rem}.dubs-logo-brand{background:url(/static/dist/assets/dubs-logo-black-aXc3R2An.png) no-repeat left center;background-size:contain;width:130px;height:36px;filter:brightness(0) invert(1)}.brand-tagline{color:#ffffff8c;font-size:1rem;font-weight:300;line-height:1.6;margin:0;max-width:220px}.alpha-chip{display:inline-flex;align-items:center;padding:5px 14px;border:1px solid rgba(255,255,255,.2);border-radius:20px;color:#ffffff80;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;width:fit-content}.login-brand-panel:after{content:"";position:absolute;bottom:-80px;left:-80px;width:360px;height:360px;background:radial-gradient(ellipse,rgba(99,193,157,.14) 0%,transparent 60%);pointer-events:none}.brand-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.brand-features li{display:flex;align-items:center;gap:10px;color:#ffffff8c;font-size:.875rem;font-weight:400}.brand-features li .check{width:18px;height:18px;background:#63c19d26;border:1px solid rgba(99,193,157,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--brand-green);font-size:11px}.brand-bottom{color:#ffffff40;font-size:.75rem}.login-form-panel{flex:1;background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}#login-container,.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2.5rem 2rem;width:100%;max-width:400px;display:flex;flex-direction:column;gap:1.1rem;box-shadow:0 4px 24px #00000012}.login-card-header{display:flex;flex-direction:column;gap:4px}.login-card-header h2{font-family:Instrument Sans,sans-serif;margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.01em}.login-card-header p{margin:0;color:var(--text-secondary);font-size:.875rem}.error-div{font-size:.8rem;text-align:center;min-height:1.2rem}.error-div p{margin:0}.error-span{color:var(--brand-red);font-weight:600}#error-message{display:none}#email-login-section,#phone-login-section,#set-password-section{display:flex;flex-direction:column;gap:10px}#forgot-password-section{display:flex;flex-direction:column;gap:1.1rem}#set-password-section h3{font-family:Instrument Sans,sans-serif;margin:0 0 4px;font-size:1rem;font-weight:700;text-align:center}.input-container{width:100%;background:var(--surface);border:1.5px solid #C8CBD6;border-radius:var(--border-radius);padding:8px 12px;display:flex;flex-direction:column;justify-content:center;min-height:54px;transition:border-color .2s ease,box-shadow .2s ease}.input-container:focus-within{border-color:var(--brand-green);box-shadow:0 0 0 3px #63c19d2e}.input-container label{font-size:10px;font-weight:400;color:#00000080;margin-bottom:3px;line-height:1;display:block}.input-container input{background:transparent;border:none;outline:none;font-family:Mulish,sans-serif;font-size:15px;font-weight:400;color:#000;padding:0;margin:0;width:100%}.input-container input::placeholder{color:var(--text-muted);font-style:italic;opacity:.7}.login-button{width:100%;height:50px;border-radius:var(--border-radius);border:none;font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease,background .2s ease;user-select:none}.login-button.active{background:var(--brand-green);color:var(--surface)}.login-button.active:hover{opacity:.88}.login-button.inactive{background:var(--border);color:var(--text-muted);cursor:not-allowed}#set-password-button{border:none;font-family:Mulish,sans-serif;font-weight:600;font-size:1rem;cursor:pointer;width:100%}.or-divider{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.8rem}.or-divider:before,.or-divider:after{content:"";flex:1;height:1px;background:var(--border)}#google-login-section{display:flex;justify-content:center}#toggle-login-mode{text-align:center;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:color .2s;padding-top:2px}#toggle-login-mode:hover{color:var(--text-primary)}input[type=search],input[type=tel],input[type=text]{font-size:1rem;border:0;font-family:inherit;outline:none;color:inherit;margin:0;padding:0;width:auto;max-width:100%}#js_input-phonenumber{width:100%}input[type=search]::placeholder,input[type=tel]::placeholder,input[type=text]::placeholder{font-weight:300;color:#6b7280}.pn-select{position:relative;background:var(--surface);border:1.5px solid #C8CBD6;display:grid;grid-template-columns:4.5em 1fr;border-radius:var(--border-radius);transition:border-color .2s,box-shadow .2s;width:100%;z-index:2;height:54px}.pn-select:focus,.pn-select:focus-within{border-color:var(--brand-green);box-shadow:0 0 0 3px #63c19d2e}.pn-dropdown{background:var(--surface);border-radius:var(--border-radius);border:1px solid var(--dropdown-border-color);box-shadow:0 10px 40px #0000001f;opacity:0;padding:0 .5em .5em;pointer-events:none;position:absolute;top:140%;transform-origin:left top;transition:all .15s ease-out;visibility:hidden;z-index:999;width:280px}.pn-select--open .pn-dropdown{pointer-events:all;transform:none;opacity:1;top:120%;visibility:visible}.pn-search{position:relative;display:flex;border-bottom:1px solid var(--dropdown-border-color);margin-bottom:.5em}.pn-search svg{display:block;height:1.25rem;left:.5em;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:1.25rem}.pn-search input[type=search]{padding-left:2.5rem;height:3rem;width:100%}.pn-list{margin-right:-.5em;max-height:10.5em;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#fff #fff}.pn-list::-webkit-scrollbar{width:10px}.pn-list:hover{scrollbar-color:#c0c4ca #fff}.pn-list:hover::-webkit-scrollbar-track{background:#fff}.pn-list:hover::-webkit-scrollbar-thumb{background-color:#c0c4ca;border-radius:6px;border:3px solid #fff}.pn-list--no-scroll{margin-right:0}.pn-selected-prefix{align-items:center;appearance:none;background:var(--border);border-radius:var(--border-radius) 0 0 var(--border-radius);border:0;cursor:pointer;display:flex;justify-content:center;margin:0;outline:none;padding:0;transition:background .2s}.pn-selected-prefix:hover,.pn-selected-prefix:focus{background:#ddd}.pn-selected-prefix__flag{height:auto;width:1.25rem}.pn-selected-prefix__icon{display:block;height:1.25rem;margin-left:.5em;margin-right:-.25em;transition:transform .15s ease-out;width:1.25rem}.pn-select--open .pn-selected-prefix__icon{transform:rotate(180deg)}.pn-input{background:transparent;border-radius:0 var(--border-radius) var(--border-radius) 0;line-height:1;overflow:hidden;padding:.5em 1em;display:flex;flex-direction:column;justify-content:center}.pn-input__container{display:flex;flex-direction:row}.pn-input__label{color:var(--input-label-color);font-size:.7rem;position:relative;top:-.25em}.pn-input__error{bottom:0;color:var(--input-error-color);font-size:.785rem;left:0;opacity:0;pointer-events:none;position:absolute;transition:all .2s ease-out;z-index:-1}.pn-input__error:invalid+.pn-input__error{opacity:1;transform:translateY(175%)}input[type=text]{background:transparent;position:absolute;color:var(--input-prefix-color);max-width:3rem;pointer-events:none}input[type=tel]{color:var(--input-phonenumber-color);padding-left:calc(calc(var(--prefix-length) * 1ch) + 1.5ch);font-weight:500}.pn-list-item{align-items:center;border-radius:.5em;display:flex;font-weight:400;padding:.6em .75em;transition:background-color .2s;cursor:pointer;outline:none}.pn-list-item__flag{width:1.25em;height:auto;margin-right:1em;display:block}.pn-list-item__country{margin-right:.25em}.pn-list-item:hover,.pn-list-item:focus{background-color:var(--list-item-hover-background)}.pn-list-item--selected{pointer-events:none;font-weight:500;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23103155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-position:right .75em top 50%;background-repeat:no-repeat;background-size:1.25rem}.pn-list-item--no-results{pointer-events:none}.pin-container{position:absolute;top:50%;left:50%;width:calc(100% - 4rem);max-width:400px;transform:translate(150%,-50%);opacity:0;z-index:10;display:flex;justify-content:center}.pin-container.show{transform:translate(-50%,-50%);opacity:1}.pin-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem;box-shadow:0 4px 24px #00000012}.pin-card h3{font-family:Instrument Sans,sans-serif;margin:0;font-size:1.1rem;font-weight:700;text-align:center}.pin-card p{margin:0;color:var(--text-secondary);font-size:.875rem;text-align:center}.pin-row{position:relative;width:100%}.pin-row input.pin-code-input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:none;outline:none;background:transparent;color:transparent;caret-color:transparent;text-align:center;font-size:16px;cursor:text}.pin-row input.pin-code-input::selection{background:transparent}.pin-boxes{position:relative;z-index:1;display:flex;flex-direction:row;justify-content:center;gap:8px;pointer-events:none}.pin-box{flex:1 1 0;min-width:0;height:56px;background:var(--surface);border:1.5px solid #C8CBD6;border-radius:var(--border-radius);display:flex;justify-content:center;align-items:center;font-family:Instrument Sans,sans-serif;font-size:22px;font-weight:700;color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.pin-box.filled{border-color:var(--brand-green)}.pin-box.cursor{border-color:var(--brand-green);box-shadow:0 0 0 3px #63c19d2e}.pin-row.error .pin-box{border-color:var(--brand-red)}.pin-card p.pin-error{color:var(--brand-red);font-weight:600}.pin-card p.pin-note{color:var(--brand-green);font-weight:600}.pin-actions{display:flex;flex-direction:column;align-items:center;gap:.5rem}.pin-link{background:none;border:none;padding:0;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--brand-green);cursor:pointer;text-decoration:underline}.pin-link:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.pin-link--quiet{color:var(--text-secondary);font-weight:400}.hidden-input{font-size:16px;position:absolute;left:-9999px}.slide-out{animation:slideOut .5s forwards}@keyframes slideOut{to{transform:translate(-110%);opacity:0}}.slide-in{animation:slideIn .5s forwards}@keyframes slideIn{0%{transform:translate(150%,-50%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.show{opacity:1;display:flex}@media(max-width:640px){.login-brand-panel{display:none}.login-form-panel{padding:1.5rem 1rem;background:var(--surface-sunken);align-items:center}#login-container,.auth-card{background:transparent;border:none;box-shadow:none;border-radius:0;padding:0 .5rem}.pin-container{width:calc(100% - 2rem);max-width:none}.pin-card{background:transparent;border:none;box-shadow:none;border-radius:0;padding:0 .5rem}.pin-boxes{gap:6px}.pin-box{height:52px;font-size:20px}}.success-msg{color:var(--brand-green);font-size:.9rem;text-align:center;font-weight:600}
