.stm-auth-page{background:var(--stm-color-canvas); margin:0; min-height:100vh;}
.stm-auth-page body{background:var(--stm-color-canvas);}
.stm-auth-page .site,.stm-auth-page .site-content,.stm-auth-page .content-area,.stm-auth-page .site-main{background:transparent;}
.stm-auth-page .stm-auth-shell *{box-sizing:border-box;}
.stm-auth-page .stm-auth-shell input,.stm-auth-page .stm-auth-shell select,.stm-auth-page .stm-auth-shell button,.stm-auth-page .stm-auth-shell a{font-family:inherit;}
.stm-auth-page .stm-auth-shell a{text-decoration:none; }
.stm-auth-shell{position:relative; min-height:100vh; padding:var(--stm-space-5);}
.stm-auth-shell__topbar{display:flex; align-items:center; justify-content:flex-start; max-width:1120px; margin:0 auto var(--stm-space-4);}
.stm-auth-shell__back{display:inline-flex; align-items:center; gap:var(--stm-space-2); padding:var(--stm-space-2) var(--stm-space-4); border:1px solid var(--stm-color-border); border-radius:var(--stm-radius-pill); background:var(--stm-color-surface); color:var(--stm-color-ink); font-size:var(--stm-font-size-small); font-weight:var(--stm-weight-semibold); line-height:1.2; transition:background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;}
.stm-auth-shell__back:hover,.stm-auth-shell__back:focus{background:var(--stm-color-accent-soft); border-color:var(--stm-color-accent); color:var(--stm-color-danger); outline:none; text-decoration:none;}
.stm-auth-shell__back-icon{display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; font-size:var(--stm-font-size-ui); line-height:1;}
.stm-auth-shell__back-text{display:inline-block;}
.stm-auth-shell__container{max-width:1120px; margin:0 auto;}
.stm-auth-shell__grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(400px,480px); gap:var(--stm-space-10); align-items:center; min-height:calc(100vh - 92px);}
.stm-auth-shell__intro{padding:var(--stm-space-1) var(--stm-space-2) var(--stm-space-1) 0;}
.stm-auth-shell__brand{max-width:520px;}
.stm-auth-shell__brand-icon-wrap{display:flex; align-items:center; justify-content:flex-start; margin:0 0 var(--stm-space-3);}
.stm-auth-shell__brand-icon{display:block; width:56px; height:56px; object-fit:contain;}
.stm-auth-shell__brand-title{margin:0 0 var(--stm-space-2); color:var(--stm-color-ink); font-size:34px; line-height:1.14; font-weight:var(--stm-weight-semibold); letter-spacing:-0.02em;}
.stm-auth-shell__brand-text{margin:0 0 var(--stm-space-4); color:var(--stm-color-ink); font-size:var(--stm-font-size-body); line-height:1.68; font-weight:var(--stm-weight-regular);}
.stm-auth-shell__info-list{display:flex; flex-direction:column; gap:var(--stm-space-3);}
.stm-auth-shell__info-item{display:flex; align-items:flex-start; gap:var(--stm-space-2);}
.stm-auth-shell__info-dot{display:inline-block; width:9px; height:9px; margin-top:var(--stm-space-2); border-radius:50%; background:var(--stm-color-accent); flex:0 0 9px;}
.stm-auth-shell__info-copy{margin:0; color:var(--stm-color-ink); font-size:var(--stm-font-size-ui); line-height:1.7; font-weight:var(--stm-weight-regular);}
.stm-auth-shell__panel{display:flex; align-items:center; justify-content:center;}
.stm-auth-card{width:100%; max-width:480px; padding:var(--stm-space-6); background:var(--stm-color-surface); border:1px solid var(--stm-color-border); border-radius:var(--stm-radius-2xl);}
.stm-auth-card__compact-brand{display:none;}
.stm-auth-card__header{margin:0 0 var(--stm-space-4); text-align:left;}
.stm-auth-card__title{margin:0 0 var(--stm-space-1); color:var(--stm-color-ink); font-size:var(--stm-font-size-2xl); line-height:1.18; font-weight:var(--stm-weight-semibold); letter-spacing:-0.02em;}
.stm-auth-card__subtitle{margin:0; color:var(--stm-color-muted); font-size:var(--stm-font-size-small); line-height:1.6;}
.stm-auth-alert{margin:0 0 var(--stm-space-4); padding:var(--stm-space-3) var(--stm-space-3); border:1px solid transparent; border-radius:var(--stm-radius-lg); font-size:var(--stm-font-size-small); line-height:1.55;}
.stm-auth-alert--success{background:var(--stm-color-primary-soft); border-color:var(--stm-color-primary); color:var(--stm-color-primary-deep);}
.stm-auth-alert--error{background:var(--stm-color-danger-soft); border-color:var(--stm-color-danger); color:var(--stm-color-danger);}
.stm-auth-alert__list{margin:0; padding-left:var(--stm-space-4);}
.stm-auth-alert__list li{margin:0 0 var(--stm-space-1);}
.stm-auth-alert__list li:last-child{margin-bottom:0;}
.stm-auth-form{display:flex; flex-direction:column; gap:var(--stm-space-3);}
.stm-auth-form__row{display:grid; gap:var(--stm-space-3);}
.stm-auth-form__row--two{grid-template-columns:1fr 1fr;}
.stm-auth-form__field{display:flex; flex-direction:column; gap:var(--stm-space-1);}
.stm-auth-form__field label{margin:0; color:var(--stm-color-primary-deep); font-size:var(--stm-font-size-small); line-height:1.35; font-weight:var(--stm-weight-semibold);}
.stm-auth-form__field input,.stm-auth-form__field select{width:100%; height:48px; padding:0 var(--stm-space-3); background:var(--stm-color-surface); border:1px solid var(--stm-color-border); border-radius:var(--stm-radius-lg); color:var(--stm-color-ink); font-size:var(--stm-font-size-ui); line-height:1.35; transition:border-color 0.25s ease, background-color 0.25s ease;}
.stm-auth-form__field input[type="date"]{padding-right:var(--stm-space-3);}
.stm-auth-form__field select{appearance:none; -webkit-appearance:none; -moz-appearance:none; background-image:linear-gradient(45deg, transparent 50%, var(--stm-color-muted) 50%),linear-gradient(135deg, var(--stm-color-muted) 50%, transparent 50%); background-position:calc(100% - 16px) calc(50% - 3px),calc(100% - 11px) calc(50% - 3px); background-size:5px 5px,5px 5px; background-repeat:no-repeat; padding-right:var(--stm-space-8);}
.stm-auth-form__field input:hover,.stm-auth-form__field select:hover{border-color:var(--stm-color-danger);}
.stm-auth-form__field input:focus,.stm-auth-form__field select:focus{border-color:var(--stm-color-accent); outline:none; background:var(--stm-color-surface);}
.stm-auth-form__field input::placeholder{color:var(--stm-color-muted);}
.stm-auth-form__field--password .stm-auth-form__password-wrap{position:relative;}
.stm-auth-form__field--password input{padding-right:var(--stm-space-20);}
.stm-auth-form__toggle{position:absolute; top:50%; right:10px; transform:translateY(-50%); display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:30px; padding:0 var(--stm-space-2); border:1px solid var(--stm-color-danger); border-radius:var(--stm-radius-md); background:var(--stm-color-accent-soft); color:var(--stm-color-danger); font-size:var(--stm-font-size-label); line-height:1; font-weight:var(--stm-weight-bold); cursor:pointer; transition:background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;}
.stm-auth-form__toggle:hover,.stm-auth-form__toggle:focus{background:var(--stm-color-accent); border-color:var(--stm-color-accent); color:var(--stm-color-on-dark); outline:none;}
.stm-auth-form__meta{display:flex; align-items:center; justify-content:space-between; gap:var(--stm-space-3); flex-wrap:wrap; margin-top:-2px;}
.stm-auth-form__checkbox{display:inline-flex; align-items:flex-start; gap:var(--stm-space-2); color:var(--stm-color-ink); font-size:var(--stm-font-size-small); line-height:1.45; cursor:pointer;}
.stm-auth-form__checkbox input{width:16px; height:16px; margin:2px 0 0; accent-color:var(--stm-color-accent); flex:0 0 auto;}
.stm-auth-form__checkbox--terms{padding-top:0;}
.stm-auth-form__link{color:var(--stm-color-danger); font-size:var(--stm-font-size-small); line-height:1.35; font-weight:var(--stm-weight-semibold); transition:color 0.25s ease;}
.stm-auth-form__link:hover,.stm-auth-form__link:focus{color:var(--stm-color-danger); outline:none; text-decoration:none;}
.stm-auth-button{display:inline-flex; align-items:center; justify-content:center; width:100%; min-height:46px; padding:var(--stm-space-3) var(--stm-space-4); border:1px solid transparent; border-radius:var(--stm-radius-lg); font-size:var(--stm-font-size-ui); line-height:1.2; font-weight:var(--stm-weight-bold); text-align:center; cursor:pointer; transition:background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;}
.stm-auth-button--primary{background:var(--stm-color-accent); border-color:var(--stm-color-accent); color:var(--stm-color-on-dark);}
.stm-auth-button--primary:hover,.stm-auth-button--primary:focus{background:var(--stm-color-danger); border-color:var(--stm-color-danger); color:var(--stm-color-on-dark); outline:none; text-decoration:none;}
.stm-auth-button--primary:disabled,.stm-auth-button--primary[disabled]{background:var(--stm-color-danger-soft); border-color:var(--stm-color-danger); color:var(--stm-color-on-dark); cursor:not-allowed;}
.stm-auth-card__footer{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:var(--stm-space-1); margin-top:2px; padding-top:var(--stm-space-1); color:var(--stm-color-muted); font-size:var(--stm-font-size-small); line-height:1.5; text-align:center;}
.stm-auth-card__footer a{color:var(--stm-color-danger); font-weight:var(--stm-weight-bold); transition:color 0.25s ease;}
.stm-auth-card__footer a:hover,.stm-auth-card__footer a:focus{color:var(--stm-color-danger); outline:none; text-decoration:none;}
html[data-stm-layout="tablet"] .stm-auth-shell,
html[data-stm-layout="mobile"] .stm-auth-shell{padding:var(--stm-space-4);}html[data-stm-layout="tablet"] .stm-auth-shell__grid,
html[data-stm-layout="mobile"] .stm-auth-shell__grid{grid-template-columns:minmax(0,1fr) minmax(380px,460px); gap:var(--stm-space-8);}html[data-stm-layout="tablet"] .stm-auth-shell__brand-title,
html[data-stm-layout="mobile"] .stm-auth-shell__brand-title{font-size:31px;}html[data-stm-layout="tablet"] .stm-auth-shell__brand-text,
html[data-stm-layout="mobile"] .stm-auth-shell__brand-text{font-size:var(--stm-font-size-body);}html[data-stm-layout="tablet"] .stm-auth-card,
html[data-stm-layout="mobile"] .stm-auth-card{padding:var(--stm-space-5); max-width:460px;}
html[data-stm-layout="tablet"] .stm-auth-shell,
html[data-stm-layout="mobile"] .stm-auth-shell{padding:var(--stm-space-4);}html[data-stm-layout="tablet"] .stm-auth-shell__topbar,
html[data-stm-layout="mobile"] .stm-auth-shell__topbar{margin-bottom:var(--stm-space-3);}html[data-stm-layout="tablet"] .stm-auth-shell__grid,
html[data-stm-layout="mobile"] .stm-auth-shell__grid{grid-template-columns:1fr; gap:var(--stm-space-4); min-height:auto;}html[data-stm-layout="tablet"] .stm-auth-shell__intro,
html[data-stm-layout="mobile"] .stm-auth-shell__intro{display:none;}html[data-stm-layout="tablet"] .stm-auth-shell__panel,
html[data-stm-layout="mobile"] .stm-auth-shell__panel{justify-content:center;}html[data-stm-layout="tablet"] .stm-auth-card,
html[data-stm-layout="mobile"] .stm-auth-card{max-width:720px; margin:0 auto; padding:var(--stm-space-5);}html[data-stm-layout="tablet"] .stm-auth-card__compact-brand,
html[data-stm-layout="mobile"] .stm-auth-card__compact-brand{display:flex; align-items:center; justify-content:center; gap:var(--stm-space-2); margin:0 0 var(--stm-space-3); text-align:center;}html[data-stm-layout="tablet"] .stm-auth-card__compact-icon,
html[data-stm-layout="mobile"] .stm-auth-card__compact-icon{display:block; width:34px; height:34px; object-fit:contain; flex:0 0 34px;}html[data-stm-layout="tablet"] .stm-auth-card__compact-title,
html[data-stm-layout="mobile"] .stm-auth-card__compact-title{color:var(--stm-color-ink); font-size:var(--stm-font-size-large); line-height:1.2; font-weight:var(--stm-weight-semibold); margin:0;}html[data-stm-layout="tablet"] .stm-auth-card__title,
html[data-stm-layout="mobile"] .stm-auth-card__title{font-size:23px; font-weight:var(--stm-weight-semibold);}html[data-stm-layout="tablet"] .stm-auth-form__row--two,
html[data-stm-layout="mobile"] .stm-auth-form__row--two{grid-template-columns:1fr 1fr;}
html[data-stm-layout="mobile"] .stm-auth-shell{padding:var(--stm-space-3);}html[data-stm-layout="mobile"] .stm-auth-shell__topbar{margin-bottom:var(--stm-space-3);}html[data-stm-layout="mobile"] .stm-auth-shell__back{padding:var(--stm-space-2) var(--stm-space-3); font-size:var(--stm-font-size-label);}html[data-stm-layout="mobile"] .stm-auth-card{padding:var(--stm-space-4) var(--stm-space-3); border-radius:var(--stm-radius-xl); max-width:100%;}html[data-stm-layout="mobile"] .stm-auth-card__compact-brand{margin:0 0 var(--stm-space-3); gap:var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-card__compact-icon{width:30px; height:30px; flex:0 0 30px;}html[data-stm-layout="mobile"] .stm-auth-card__compact-title{font-size:var(--stm-font-size-body); font-weight:var(--stm-weight-semibold);}html[data-stm-layout="mobile"] .stm-auth-card__title{font-size:var(--stm-font-size-title); font-weight:var(--stm-weight-semibold);}html[data-stm-layout="mobile"] .stm-auth-card__subtitle{font-size:var(--stm-font-size-label);}html[data-stm-layout="mobile"] .stm-auth-form{gap:var(--stm-space-3);}html[data-stm-layout="mobile"] .stm-auth-form__row{gap:var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-form__row--two{grid-template-columns:1fr 1fr;}html[data-stm-layout="mobile"] .stm-auth-form__field label{font-size:var(--stm-font-size-label);}html[data-stm-layout="mobile"] .stm-auth-form__field input,
html[data-stm-layout="mobile"] .stm-auth-form__field select{height:44px; padding:0 var(--stm-space-3); font-size:var(--stm-font-size-small); border-radius:var(--stm-radius-md);}html[data-stm-layout="mobile"] .stm-auth-form__field--password input{padding-right:var(--stm-space-16);}html[data-stm-layout="mobile"] .stm-auth-form__toggle{right:8px; min-width:46px; height:28px; padding:0 var(--stm-space-2); font-size:var(--stm-font-size-xs);}html[data-stm-layout="mobile"] .stm-auth-button{min-height:42px; font-size:var(--stm-font-size-small); border-radius:var(--stm-radius-md);}html[data-stm-layout="mobile"] .stm-auth-form__meta{flex-direction:column; align-items:flex-start; gap:var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-card__footer{font-size:var(--stm-font-size-label);}
html[data-stm-layout="mobile"] .stm-auth-shell{padding:var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-shell__back{max-width:100%;}html[data-stm-layout="mobile"] .stm-auth-shell__back-text{white-space:nowrap;}html[data-stm-layout="mobile"] .stm-auth-card{padding:var(--stm-space-4) var(--stm-space-3);}html[data-stm-layout="mobile"] .stm-auth-card__compact-brand{margin:0 0 var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-card__compact-icon{width:28px; height:28px; flex:0 0 28px;}html[data-stm-layout="mobile"] .stm-auth-card__compact-title{font-size:var(--stm-font-size-body);}html[data-stm-layout="mobile"] .stm-auth-card__title{font-size:var(--stm-font-size-xl);}html[data-stm-layout="mobile"] .stm-auth-form__row--two{grid-template-columns:1fr 1fr; gap:var(--stm-space-2);}html[data-stm-layout="mobile"] .stm-auth-form__field input,
html[data-stm-layout="mobile"] .stm-auth-form__field select{height:42px; padding:0 var(--stm-space-2); font-size:var(--stm-font-size-label);}html[data-stm-layout="mobile"] .stm-auth-form__field--password input{padding-right:var(--stm-space-16);}html[data-stm-layout="mobile"] .stm-auth-form__toggle{right:6px; min-width:42px; height:26px; padding:0 var(--stm-space-2); font-size:var(--stm-font-size-xs);}html[data-stm-layout="mobile"] .stm-auth-button{min-height:40px; font-size:var(--stm-font-size-label);}html[data-stm-layout="mobile"] .stm-auth-alert{padding:var(--stm-space-2) var(--stm-space-3); border-radius:var(--stm-radius-lg); font-size:var(--stm-font-size-label);}