.auth-fields{display:grid;gap:16px}.auth-remember{display:flex;align-items:center;gap:8px;margin:0!important;font-weight:400;color:var(--muted)}.login-form .auth-remember input{width:16px;min-height:16px;height:16px;margin:0;accent-color:var(--primary)}.auth-switch-row{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:20px;color:var(--muted);font-size:13px}.login-form .auth-switch{display:inline-flex;min-height:30px;padding:0 4px;background:transparent;color:var(--primary);font-size:13px}.login-right:has(#register-form:not([hidden])){padding-top:35px;padding-bottom:65px}.login-form#register-form .login-mark{margin-bottom:18px}.login-form#register-form>.muted{margin-bottom:22px}
.account-center{display:grid;gap:20px}.account-center .panel{border-radius:5px}.account-summary{display:flex;align-items:center;gap:14px}.account-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;background:var(--blue-soft);color:var(--primary);font-size:21px}.account-summary strong{font-size:17px}.account-summary p{margin-top:5px;color:var(--muted);font-size:12px}.account-center .account-meta{margin-top:20px}.account-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.account-password{display:grid;gap:14px}.account-password label{font-size:12px}.account-password input{width:100%}.account-password button{justify-self:start}.account-error{margin:0;color:var(--red);font-size:13px}.account-center .panel-head{gap:12px;flex-wrap:wrap}.account-center table{min-width:600px}.account-center th{font-weight:500}.account-center td{font-size:13px}.account-center .column-actions{gap:16px}.account-center .text-button{font-size:12px}.account-reset{margin:18px 22px;padding-top:16px;border-top:1px solid var(--line)}.account-reset .form-row{flex-wrap:wrap;margin-top:12px}.account-reset input{flex:1;min-width:180px}.account-reset h3{font-size:14px}
@media(max-width:800px){.account-columns{grid-template-columns:1fr}.account-center .panel-head,.account-center .panel-body{padding:16px}.account-reset{margin:16px}.account-summary p{line-height:1.7}}@media(max-width:767px){.login-right{padding-top:30px;padding-bottom:70px}.login-foot{bottom:20px}.login-form .auth-fields input{font-size:16px}}
.account-invite-help{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:14px}.account-invite-code{display:flex;gap:10px;margin-bottom:16px}.account-invite-code input{flex:1;min-width:0}.account-invite-code[hidden]{display:none}

/* Personal center: selected unified panel with quiet blue icons. */
.account-center{max-width:940px;gap:16px}.account-unified{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden}.account-profile-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 30px 21px}.account-summary{gap:17px}.account-avatar{width:60px;height:60px;border:1px solid #e4edff;border-radius:50%;font-size:26px;background:var(--blue-soft);flex:none}.account-name{display:flex;align-items:center;gap:10px;margin-bottom:5px;flex-wrap:wrap}.account-summary strong{font-size:20px}.account-summary p{font-size:12px;line-height:1.8;margin:0;color:#607493}.account-role{font-size:11px;color:var(--primary);background:var(--blue-soft);padding:3px 7px;border-radius:4px}.account-state{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:12px;white-space:nowrap}.account-state:before{content:'';width:5px;height:5px;background:currentColor;border-radius:50%}.account-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 30px;padding:0 0 20px;border-bottom:1px solid var(--line)}.account-stats>a,.account-stats>button,.account-stats>div{display:grid;align-content:center;justify-items:center;gap:5px;position:relative;padding:12px 10px;min-height:86px;border:0;background:transparent;border-radius:4px}.account-stats>a:hover,.account-stats>button:hover{background:#f8faff}.account-stats>:not(:first-child):before{content:'';position:absolute;left:0;top:16px;bottom:16px;width:1px;background:var(--line)}.account-stats strong{font-size:25px;font-weight:600;line-height:1.3;color:var(--text);font-variant-numeric:tabular-nums}.account-stats span{color:#607493;font-size:12px}.account-group-label{padding:20px 30px 6px;font-size:12px;color:#607493}.account-entries{padding:0 30px}.account-entry{width:100%;display:flex;align-items:center;gap:13px;min-height:76px;padding:17px 0;border:0;border-bottom:1px solid #eef1f6;border-radius:0;background:transparent;text-align:left;font-size:13px;color:var(--text)}.account-entry:hover{background:#f8faff}.account-entry:last-child{border-bottom:0}.account-entry-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;background:#f1f5fd;color:var(--primary);border-radius:6px}.account-entry-icon svg{width:17px;height:17px}.account-entry small{margin-left:auto;font-size:12px;color:#607493}.account-entry>svg{width:16px;height:16px;color:#8799b3;flex:none;margin-left:5px}.account-logout-wrap{padding:16px 30px 26px}.account-logout{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;min-height:40px;padding:8px;background:#fff4f4;color:#be3948;border:0;border-radius:4px;font-size:12px}.account-logout:hover{background:#ffe9ec}.account-logout svg{height:15px;width:15px}.account-back-row{padding:8px 24px;border-bottom:1px solid var(--line)}.account-unified .panel{border:0;border-radius:0;box-shadow:none}.account-unified .account-password{max-width:430px;padding:4px 0 12px}.account-unified .account-password input{border-radius:4px}.account-unified .account-password button{font-size:13px;border-radius:4px}.account-unified .panel-head{padding:20px 26px}.account-unified .panel-body{padding:24px 26px}.account-unified .account-reset{margin:18px 26px}.account-invite-code button{flex:none}
@media(max-width:767px){.account-profile-top{padding:24px 22px;gap:15px;flex-wrap:wrap}.account-summary{gap:12px}.account-summary strong{font-size:19px}.account-avatar{width:52px;height:52px;font-size:23px}.account-stats{margin:0 22px}.account-stats strong{font-size:23px}.account-stats>a,.account-stats>button,.account-stats>div{padding:12px 4px}.account-group-label{padding-left:22px}.account-entries{padding:0 22px}.account-entry{min-height:70px;font-size:13px;gap:10px}.account-entry small{font-size:11px}.account-logout-wrap{padding:16px 22px 22px}.account-unified .panel-head,.account-unified .panel-body{padding:20px 22px}.account-back-row{padding:8px 22px}.account-center .account-invite-code{flex-wrap:wrap}.account-invite-code input{flex-basis:100%}.account-unified .account-password input{font-size:16px}.account-summary{min-width:0}.account-name strong{overflow-wrap:anywhere}.account-name{min-width:0}}
.telegram-body{padding:24px 28px;display:grid;gap:26px}.telegram-body section+section,.telegram-advanced{border-top:1px solid var(--line);padding-top:22px}.telegram-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.telegram-heading h3{font-size:15px;margin:0}.telegram-heading>span,.telegram-help{font-size:12px;color:var(--muted)}.telegram-help{line-height:1.8;margin:12px 0}.telegram-help a{color:var(--primary);text-decoration:underline}.telegram-qr{display:block;width:220px;max-width:100%;height:auto;margin:16px auto;image-rendering:pixelated}.telegram-form{display:grid;gap:10px;margin-top:14px}.telegram-form label{font-size:13px}.telegram-form input{width:100%;min-width:0}.telegram-form>.primary,.telegram-form>.button{justify-self:start}.telegram-form .form-row{display:flex;gap:10px}.telegram-form .form-row input{flex:1}.telegram-form .form-row button{flex:none}.telegram-identity{display:grid;gap:8px;padding:18px 0}.telegram-identity span,.telegram-target small{font-size:12px;color:var(--muted)}.telegram-target{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.telegram-target>div{display:grid;gap:6px;min-width:0;overflow-wrap:anywhere}.telegram-target strong{font-size:13px}.telegram-target button{flex:none}.telegram-confirm{padding:14px;background:var(--blue-soft);margin-top:12px;border-radius:4px;font-size:13px}.telegram-confirm p{line-height:1.8;margin-bottom:12px}.telegram-confirm button{margin:0 8px 4px 0}.telegram-advanced summary{cursor:pointer;font-size:13px}.telegram-advanced .telegram-form{max-width:400px}.telegram-body button{min-height:40px}.telegram-body .form-error{line-height:1.7}.account-password small{display:block;margin-top:6px;font-size:12px}.account-center .column-actions{flex-wrap:wrap}.account-center .account-error{padding:12px;border:1px solid currentColor;border-radius:4px}.telegram-confirm[hidden]{display:none}
@media(max-width:767px){.telegram-body{padding:20px}.telegram-form input{font-size:16px}.telegram-form .form-row{flex-wrap:wrap}.telegram-form .form-row input{flex-basis:100%}.telegram-target{align-items:flex-start}.telegram-body button{min-height:44px}}
.telegram-targets[hidden]{display:none}.telegram-login-loading{min-height:240px;place-content:center;justify-items:center;text-align:center;color:var(--muted);font-size:13px}.telegram-body:has(.telegram-qr)>section:first-child{text-align:center}.telegram-body:has(.telegram-qr) .telegram-heading{text-align:left}.telegram-body:has(.telegram-qr) #telegram-expiry{margin:0 0 16px}.telegram-body:has(.telegram-qr) [data-telegram="cancel"]{margin-left:10px}

/* Keep account tools in a focused dialog above the personal center. */
.account-dialog{width:min(840px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);box-shadow:0 20px 70px #162b4d26;overflow:hidden}
.account-dialog[open]{display:flex;flex-direction:column}.account-dialog:not([open]){display:none}.account-dialog[data-view="security"]{width:min(520px,calc(100vw - 40px))}.account-dialog::backdrop{background:#172b4d55}body:has(.account-dialog[open]){overflow:hidden}
.account-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line);flex:none}.account-dialog-head h2{margin:0;font-size:17px;font-weight:600}.account-dialog-head .icon-button{width:40px;height:40px;min-height:40px;font-size:24px;color:#7d8da6;border-radius:6px}.account-dialog-head .icon-button:hover{background:var(--blue-soft);color:var(--primary)}
.account-dialog-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:24px;scrollbar-gutter:stable}.account-dialog-body>[data-account-screen][hidden]{display:none}.account-dialog .panel{border:0;box-shadow:none;margin:0;border-radius:0}.account-dialog .panel-head{display:none}.account-dialog .panel-body{padding:0}.account-dialog .account-password{max-width:none;gap:18px}.account-dialog .account-password label{font-size:13px}.account-dialog .account-password input{margin-top:7px}.account-dialog .account-password button,.account-dialog button{min-height:40px}.account-dialog .table-wrap{border:1px solid var(--line);border-radius:6px;margin:0;max-width:100%;overflow-x:auto}.account-dialog table{min-width:620px}.account-dialog th{background:#f8faff}.account-dialog .account-invite-help{margin-top:0;font-size:13px}.account-dialog .panel-body+.table-wrap{margin-top:22px}.account-dialog .account-reset{margin:22px 0 0}.account-dialog .account-error:not([hidden]){margin:0 0 18px}.account-dialog .empty{padding:30px 12px}.account-dialog-footer{display:flex;justify-content:flex-end;padding:14px 24px;border-top:1px solid var(--line);background:#fff;flex:none}.account-dialog-footer button{min-width:80px}
@media(max-width:767px){.account-dialog,.account-dialog[data-view="security"]{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:8px}.account-dialog-head{padding:12px 16px}.account-dialog-head h2{font-size:16px}.account-dialog-head .icon-button{width:44px;height:44px}.account-dialog-body{padding:20px 16px}.account-dialog-footer{padding:12px 16px}.account-dialog button{min-height:44px}.account-dialog input{font-size:16px}.account-dialog .account-reset input{min-width:0;flex-basis:100%}.account-dialog .account-invite-code{flex-wrap:wrap}}

.login-form a.auth-switch{align-items:center;min-height:44px;padding:7px 4px}
.login-form .auth-fields small{display:block;margin-top:5px;font-size:12px;line-height:1.6}

/* Centered authentication card, matching the approved reference layout. */
.login-screen{display:grid;grid-template-columns:minmax(0,1fr);place-items:center;min-height:100dvh;padding:32px 20px;background:radial-gradient(ellipse at 16% 20%,#edf3ff 0,transparent 40%),radial-gradient(ellipse at 85% 85%,#eef3ff 0,transparent 40%),#fff}
.login-screen[hidden]{display:none}
.login-screen .login-right,.login-screen .login-right:has(#register-form:not([hidden])){position:relative;display:block;width:380px;max-width:100%;min-height:0;padding:32px 28px 20px;background:#fff;border:1px solid #e0e5ee;border-radius:16px;box-shadow:0 14px 44px #162b4d14}
.login-screen .login-form{width:100%;max-width:none;margin:0}
.login-screen .login-form .login-mark,.login-screen .login-form#register-form .login-mark{display:block;width:56px;height:56px;margin:0 auto 14px;border-radius:14px;box-shadow:0 4px 12px #2463eb1a}
.login-screen .login-form h1{margin:0;text-align:center;font-size:24px;font-weight:650;line-height:1.4}
.login-screen .login-form .auth-subtitle,.login-screen .login-form#register-form>.muted{margin:6px 0 26px;text-align:center;font-size:13px;line-height:1.6;color:#6d7e96}
.login-screen .login-form .auth-fields{display:grid;gap:17px}
.login-screen .login-form .auth-fields label{display:block;margin-bottom:7px;font-size:13px;color:#344760}
.login-screen .login-form .auth-fields input:not([type=checkbox]){width:100%;min-width:0;height:44px;padding:10px 12px;border:1px solid #dce3ef;border-radius:5px;background:#f7f9fc;font-size:14px}
.login-screen .login-form .auth-fields input:focus{background:#fff;border-color:var(--primary);outline:2px solid #2463eb22;outline-offset:1px}
.auth-input{position:relative}.auth-input>svg{position:absolute;left:12px;top:14px;width:16px;height:16px;color:#7c8ba1;pointer-events:none}
.login-screen .login-form .auth-input input{padding-left:37px!important}
.login-screen .login-form .auth-input:has(.auth-password-toggle) input{padding-right:46px}
.login-screen .auth-password-toggle{position:absolute;top:0;right:0;display:grid;place-items:center;width:44px;height:100%;min-height:44px;padding:0;border:0;background:transparent;color:#73839b;border-radius:5px;cursor:pointer}
.auth-password-toggle svg{width:17px;height:17px}.auth-password-toggle[aria-pressed=true] .auth-eye-slash{display:none}
.login-screen .auth-password-toggle:hover{color:var(--primary)}.auth-password-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}
.auth-optional{font-weight:400;color:#6d7e96;font-size:12px}.login-screen input::-ms-reveal{display:none}
.login-screen .login-form .auth-fields .auth-remember{display:flex;align-items:center;gap:8px;min-height:28px;margin:0;font-size:12px}
.login-screen .auth-remember input{width:15px;height:15px;accent-color:var(--primary)}
.auth-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 124px;gap:10px;align-items:center}
.login-screen .auth-captcha-image{display:grid;place-items:center;width:124px;height:44px;min-height:44px;padding:0;border:1px solid #dce3ef;border-radius:5px;background:#f3f6ff;overflow:hidden;cursor:pointer;color:#526781;font-size:12px}
.auth-captcha-image img{display:block;width:100%;height:100%;object-fit:cover}.auth-captcha-image img[hidden],.auth-captcha-image span[hidden]{display:none}
.auth-captcha-image:focus-visible,.auth-close:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.login-screen .login-form .auth-fields small{font-size:12px;line-height:1.5;color:#6d7e96}
.login-screen .login-form .form-error{margin:12px 0 0;font-size:12px;line-height:1.6}
.login-screen .login-form .form-error:empty{display:none}
.login-screen .login-form>.primary{display:block;width:100%;min-height:44px;margin-top:16px;border-radius:5px;font-size:14px;text-align:center;letter-spacing:2px}
.login-screen .auth-switch-row{display:flex;align-items:center;justify-content:center;gap:4px;margin:10px 0 0;color:#6d7e96;font-size:12px}
.login-screen .login-help{margin:4px 0 0;text-align:center;font-size:12px;color:#6d7e96;line-height:1.6}
.auth-close{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:40px;height:40px;color:#8390a4;font-size:21px;border-radius:50%}.auth-close:hover{color:var(--primary);background:#f4f7ff}
@media(max-width:480px){.login-screen{padding:24px 16px}.login-screen .login-right,.login-screen .login-right:has(#register-form:not([hidden])){padding:28px 24px 20px;border-radius:14px}.login-screen .login-form .auth-fields input:not([type=checkbox]){font-size:16px}.auth-captcha-row{grid-template-columns:minmax(0,1fr) 112px}.login-screen .auth-captcha-image{width:112px}.auth-close{width:44px;height:44px}}
