@@ -80,19 +80,22 @@ body {
8080. login-screen {
8181 flex : 1 ;
8282 display : flex; align-items : center; justify-content : center;
83+ padding : 24px ;
8384 background :
84- radial-gradient ( circle at 30% 10% , rgba ( 0 , 121 , 173 , .08 ) , transparent 50% ) ,
85- radial-gradient ( circle at 80% 90% , rgba ( 146 , 225 , 216 , .05 ) , transparent 50% ) ,
85+ radial-gradient ( 700px 380px at 50% -8% , color-mix ( in oklab, var ( --accent ) 13% , transparent) , transparent 70% ) ,
8686 var ( --bg ) ;
8787}
88+ . login-screen . mono { font-family : var ( --mono ) ; }
8889. login-card {
8990 width : 380px ; padding : 40px 36px 36px ;
9091 background : var ( --bg-header ) ;
9192 border : 1px solid var ( --border ) ;
9293 border-radius : 12px ;
93- box-shadow : 0 20 px 60 px rgba ( 0 , 0 , 0 , .25 ) ;
94+ box-shadow : 0 24 px 70 px rgba ( 0 , 0 , 0 , .35 ) ;
9495 text-align : center;
9596}
97+ /* Wider, left-aligned card for the SSO + credentials layout. */
98+ . login-card-wide { width : 400px ; max-width : 100% ; padding : 30px 30px 22px ; border-radius : 16px ; text-align : left; }
9699. login-logo {
97100 width : 48px ; height : 48px ;
98101 margin : 0 auto 14px ;
@@ -102,30 +105,91 @@ body {
102105 color : # fff; font-weight : 700 ; font-size : 22px ;
103106 letter-spacing : -0.02em ;
104107}
105- . login-title { font-size : 20px ; font-weight : 600 ; color : var ( --fg ) ; margin-bottom : 6px ; }
106- . login-sub { font-size : 13px ; color : var ( --fg-mute ) ; margin-bottom : 22px ; }
107- . login-env {
108- display : inline-flex; align-items : center; gap : 6px ;
109- padding : 4px 10px ; background : var ( --bg-chip ) ;
110- border-radius : 12px ;
111- font-family : var ( --mono ) ; font-size : 11px ; color : var ( --fg-mute ) ;
112- margin-bottom : 24px ;
113- }
114- . login-env :: before {
115- content : '' ; width : 6px ; height : 6px ; border-radius : 4px ;
116- background : # 22c55e; box-shadow : 0 0 6px # 22c55e;
108+ . login-card-wide . login-logo { width : 30px ; height : 30px ; margin : 0 ; border-radius : 8px ; font-size : 15px ; }
109+
110+ . login-brand { display : flex; align-items : center; gap : 10px ; margin-bottom : 22px ; }
111+ . login-brand-text { display : flex; flex-direction : column; line-height : 1.2 ; }
112+ . login-brand-name { font-size : 14px ; font-weight : 600 ; color : var ( --fg ) ; }
113+ . login-brand-sub { font-size : 11px ; color : var ( --fg-faint ) ; }
114+ . login-h1 { font-size : 19px ; font-weight : 600 ; letter-spacing : -.3px ; color : var ( --fg ) ; margin-bottom : 4px ; }
115+ . login-sub { font-size : 12.5px ; color : var ( --fg-mute ) ; margin-bottom : 20px ; line-height : 1.5 ; }
116+
117+ /* SSO section */
118+ . login-sso { display : flex; flex-direction : column; gap : 8px ; }
119+ . login-sso-note {
120+ display : flex; align-items : center; justify-content : center; gap : 5px ;
121+ margin-top : 7px ; font-size : 11px ; color : var ( --fg-faint ) ;
117122}
118- . login-actions { display : flex; flex-direction : column; gap : 8px ; }
123+ . login-sso-note . mono { color : var ( --fg-mute ) ; }
124+
125+ /* Buttons (primary / ghost) */
119126. login-btn {
120- width : 100% ; height : 40 px ; padding : 0 16px ;
121- background : var ( --accent ) ; color : # fff ;
122- border : none ; border-radius : 6 px ;
127+ width : 100% ; height : 42 px ; padding : 0 16px ;
128+ display : flex ; align-items : center ; justify-content : center ; gap : 9 px ;
129+ border : 1 px solid transparent ; border-radius : 9 px ;
123130 font-family : inherit; font-size : 13.5px ; font-weight : 600 ;
124- cursor : pointer; transition : filter .12s , transform .04s ;
131+ cursor : pointer; transition : background .14 s , border-color .14 s , filter .12s , opacity .14 s , transform .04s ;
125132}
126- . login-btn : hover { filter : brightness ( 1.06 ) ; }
133+ . login-btn . btn-primary { background : var ( --accent ) ; color : # fff; }
134+ . login-btn . btn-primary : hover { filter : brightness ( 1.06 ) ; }
135+ . login-btn . btn-ghost { background : transparent; color : var ( --fg ) ; border-color : var ( --border ) ; }
136+ . login-btn . btn-ghost : hover { background : var ( --bg-hover ) ; }
127137. login-btn : active { transform : translateY ( 0.5px ) ; }
128- . login-btn : disabled { opacity : .5 ; cursor : wait; }
138+ . login-btn : disabled { opacity : .45 ; cursor : not-allowed; }
139+ . login-btn : disabled : active { transform : none; }
140+
141+ /* Divider */
142+ . login-divider { display : flex; align-items : center; gap : 12px ; margin : 18px 0 ; }
143+ . login-divider :: before , . login-divider :: after { content : '' ; flex : 1 ; height : 1px ; background : var ( --border-faint ) ; }
144+ . login-divider span { font-size : 10.5px ; color : var ( --fg-faint ) ; text-transform : uppercase; letter-spacing : .07em ; }
145+
146+ /* Credential fields */
147+ . login-creds { display : flex; flex-direction : column; }
148+ . login-field { display : flex; flex-direction : column; margin-bottom : 13px ; }
149+ . login-lbl { font-size : 11.5px ; font-weight : 500 ; color : var ( --fg-mute ) ; margin-bottom : 6px ; }
150+ . login-input {
151+ width : 100% ; height : 38px ; padding : 0 11px ;
152+ background : var ( --bg-input ) ; border : 1px solid var ( --border ) ;
153+ border-radius : 8px ; color : var ( --fg ) ; font-size : 13px ; outline : none;
154+ font-family : inherit; transition : border-color .12s , box-shadow .12s ;
155+ }
156+ . login-input . mono { font-family : var ( --mono ) ; font-size : 12.5px ; }
157+ . login-input :: placeholder { color : var ( --fg-faint ) ; }
158+ . login-input : focus { border-color : var ( --accent ) ; box-shadow : 0 0 0 3px color-mix ( in oklab, var ( --accent ) 22% , transparent) ; }
159+ . login-input-wrap { position : relative; }
160+ . login-input-wrap . login-input { padding-right : 38px ; }
161+ . login-eye {
162+ position : absolute; right : 6px ; top : 50% ; transform : translateY ( -50% ) ;
163+ width : 28px ; height : 28px ; border : none; background : transparent;
164+ color : var ( --fg-faint ) ; cursor : pointer; border-radius : 6px ;
165+ display : flex; align-items : center; justify-content : center;
166+ }
167+ . login-eye : hover { background : var ( --bg-hover ) ; color : var ( --fg-mute ) ; }
168+
169+ /* Advanced disclosure */
170+ . login-advanced { margin-bottom : 16px ; }
171+ . login-disc {
172+ appearance : none; background : transparent; border : none; cursor : pointer; padding : 4px 0 ;
173+ color : var ( --fg-mute ) ; font-family : inherit; font-size : 12px ; font-weight : 500 ;
174+ display : flex; align-items : center; gap : 6px ;
175+ }
176+ . login-disc : hover { color : var ( --fg ) ; }
177+ . login-disc-chev { display : flex; transition : transform .15s ; }
178+ . login-adv-field { margin-top : 10px ; display : flex; flex-direction : column; }
179+ . login-hint { font-size : 11px ; color : var ( --fg-faint ) ; margin-top : 6px ; line-height : 1.5 ; }
180+
181+ /* Live target summary */
182+ . login-target {
183+ margin-top : 14px ; padding : 9px 11px ;
184+ background : var ( --bg-input ) ; border : 1px solid var ( --border-faint ) ;
185+ border-radius : 8px ; font-family : var ( --mono ) ; font-size : 11px ; color : var ( --fg-mute ) ;
186+ display : flex; align-items : center; gap : 7px ; line-height : 1.4 ;
187+ }
188+ . login-target . lt-dot { width : 6px ; height : 6px ; border-radius : 3px ; background : # 22c55e; box-shadow : 0 0 6px # 22c55e; flex-shrink : 0 ; }
189+ . login-target . lt-key { color : var ( --fg-faint ) ; }
190+ . login-target . lt-host { color : var ( --fg ) ; overflow : hidden; text-overflow : ellipsis; white-space : nowrap; }
191+ . login-target . lt-as { color : var ( --fg-faint ) ; }
192+
129193. login-error {
130194 margin-top : 14px ; padding : 8px 12px ;
131195 background : var ( --error-bg ) ;
@@ -134,7 +198,12 @@ body {
134198 font-size : 12px ; text-align : left;
135199 white-space : pre-wrap; word-break : break-word;
136200}
137- . login-foot { margin-top : 18px ; font-size : 11px ; color : var ( --fg-faint ) ; font-family : var ( --mono ) ; }
201+ . login-foot {
202+ margin-top : 20px ; padding-top : 16px ; border-top : 1px solid var ( --border-faint ) ;
203+ display : flex; align-items : center; font-size : 11px ; color : var ( --fg-faint ) ;
204+ }
205+ . login-foot-link { display : flex; align-items : center; gap : 5px ; color : var ( --fg-mute ) ; }
206+ . login-foot-link : hover { color : var ( --fg ) ; }
138207
139208/* ------------ header ------------ */
140209. app-header {
0 commit comments