/* login.css - Admin belépő oldal (Belépés / Elfelejtett jelszó / Levél elküldve). Önálló: nem tölti be a ba.css-t.
   Terv: design/Admin-belepes.dc.html. Színek/méretek a tervből, a ba tokenekkel egyezően. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:local("Inter"),url("../../fonts/inter-400.ttf") format("truetype")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:local("Inter SemiBold"),url("../../fonts/inter-600.ttf") format("truetype")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:local("Inter Bold"),url("../../fonts/inter-700.ttf") format("truetype")}

html,body.lg{margin:0;min-height:100%}
body.lg{background:#f5f5f7;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter",system-ui,sans-serif;font-size:14px;line-height:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.lg *,.lg *::before,.lg *::after{box-sizing:border-box}
.lg a{color:#b85600;text-decoration:none}
.lg a:hover{color:#8f4300}
.lg [hidden]{display:none !important}

@keyframes lgFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes lgIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes lgShake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
@keyframes lgSpin{to{transform:rotate(360deg)}}

.lg-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(460px,1fr)}

/* ---- bal: márka ---- */
.lg-brand{position:relative;background:#000;color:#fff;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:40px 48px;min-width:0}
.lg-brand__glow{position:absolute;left:-10%;right:-10%;top:30%;height:520px;background:radial-gradient(closest-side,rgba(245,130,32,.22),rgba(0,0,0,0));pointer-events:none}
.lg-brand__top{position:relative;display:flex;align-items:center;gap:12px}
.lg-brand__logo{height:28px;width:auto;display:block}
.lg-brand__fleet{display:flex;flex-direction:column;line-height:1.1;border-left:1px solid #333;padding-left:12px}
.lg-brand__fleet span:first-child{font-size:14px;font-weight:600}
.lg-brand__fleet span:last-child{font-size:11px;color:#8e8e93}
.lg-brand__mid{position:relative;display:flex;flex-direction:column;gap:18px;max-width:560px}
.lg-brand__eyebrow{font-size:14px;color:#ff9a3d;letter-spacing:.08em}
.lg-brand__title{font-size:56px;font-weight:600;letter-spacing:-.03em;line-height:1.04}
.lg-brand__car{position:relative;margin:12px -24px}
.lg-brand__car img{width:100%;max-width:760px;height:auto;display:block;margin:0 auto;animation:lgFloat 7s ease-in-out infinite}

/* ---- jobb: űrlap ---- */
.lg-main{display:flex;flex-direction:column;justify-content:space-between;padding:40px 48px;min-width:0}
.lg-box{width:100%;max-width:400px;align-self:center;display:flex;flex-direction:column;gap:22px;animation:lgIn .18s ease-out}
.lg-head{display:flex;flex-direction:column;gap:8px}
.lg-title{margin:0;font-size:34px;font-weight:600;letter-spacing:-.02em;line-height:normal}
.lg-sub{margin:0;font-size:17px;color:#6e6e73}
.lg-sub--tall{line-height:1.45}
.lg-form{display:flex;flex-direction:column;gap:22px;margin:0}
.lg-fields{display:flex;flex-direction:column;gap:14px}
.lg-fields.is-shake{animation:lgShake .35s linear}
.lg-field{display:flex;flex-direction:column;gap:6px}
.lg-label{font-size:13px;color:#6e6e73}
.lg-label--row{display:flex;justify-content:space-between}
.lg-label--row a{color:#b85600}

.lg-input{position:relative;display:flex;align-items:center}
.lg-input__icon{position:absolute;left:14px;color:#8e8e93;pointer-events:none}
.lg-input__control{width:100%;height:48px;border-radius:12px;border:1px solid #d2d2d7;background:#fff;padding:0 14px 0 40px;font-size:17px;font-family:inherit;color:#1d1d1f;outline:none;box-sizing:border-box;-webkit-appearance:none;appearance:none}
.lg-input__control--eye{padding-right:48px}
.lg-input__control::placeholder{color:#8e8e93;opacity:1}
.lg-input__control:focus{border-color:#f58220;box-shadow:0 0 0 3px rgba(245,130,32,.2)}
.lg-input__control.is-error{border-color:#e0606e}
.lg-input__control.is-error:focus{border-color:#f58220}
.lg-eye{position:absolute;right:8px;width:34px;height:34px;border-radius:8px;border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;color:#6e6e73;cursor:pointer;font-size:14px}
.lg-eye:hover{background:#f0f0f2}
.lg-eye:focus-visible{outline:2px solid #f58220;outline-offset:2px}

.lg-caps{font-size:12px;color:#a14b00}

.lg-check{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer;user-select:none;position:relative}
.lg-check input{position:absolute;opacity:0;width:20px;height:20px;margin:0;cursor:pointer}
.lg-check__box{width:20px;height:20px;flex:none;border-radius:6px;background:#fff;border:1px solid #d2d2d7;color:transparent;display:flex;align-items:center;justify-content:center;font-size:11px}
.lg-check input:checked + .lg-check__box{background:#f58220;border-color:#f58220;color:#1d1d1f}
.lg-check input:focus-visible + .lg-check__box{outline:2px solid #f58220;outline-offset:2px}

.lg-alert{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.4;animation:lgIn .2s}
.lg-alert i{margin-top:2px}
.lg-alert--bad{background:#fdeced;color:#c4001a}
.lg-alert--ok{background:#e8f6ec;color:#1f7a3a}

.lg-btn{height:50px;border-radius:999px;border:0;background:#f58220;color:#1d1d1f;display:flex;align-items:center;justify-content:center;gap:10px;font-size:17px;font-family:inherit;font-weight:400;cursor:pointer;width:100%;padding:0;text-decoration:none}
.lg-btn:hover{background:#ff9a3d;color:#1d1d1f}
.lg-btn:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}
.lg-btn.is-loading{opacity:.75;cursor:progress}
.lg-btn.is-loading .fa{animation:lgSpin .8s linear infinite}
.lg-btn--dark,.lg a.lg-btn--dark{background:#1d1d1f;color:#fff}
.lg-btn--dark:hover,.lg a.lg-btn--dark:hover{background:#000;color:#fff}
.lg-back{font-size:15px;color:#b85600;text-align:center}

.lg-badge{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:20px}
.lg-badge--key{border-radius:14px;background:#fff1e3;color:#b85600}
.lg-badge--ok{border-radius:50%;background:#e8f6ec;color:#1f7a3a}

.lg-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#8e8e93;gap:16px}
.lg-foot__right{display:flex;gap:16px}
.lg-foot a{font-size:12px}

/* ---- tablet: keskenyebb márka-oszlop, kisebb főcím ---- */
@media (max-width:1180px){
	.lg-page{grid-template-columns:minmax(0,1fr) minmax(460px,1fr)}
	.lg-brand,.lg-main{padding:36px 36px}
	.lg-brand__title{font-size:44px}
	.lg-brand__car{margin:12px -12px}
}
/* ---- keskeny tablet / telefon: egy oszlop, a márka-panel alacsony sáv ---- */
@media (max-width:860px){
	.lg-page{display:flex;flex-direction:column;min-height:100vh}
	.lg-brand{padding:20px 24px;flex:none}
	.lg-brand__glow{top:-60%;height:260px}
	.lg-brand__mid,.lg-brand__car{display:none}
	.lg-main{flex:1;padding:32px 24px 24px}
	.lg-box{margin:auto 0;align-self:center}
	.lg-main > div:first-child{display:none}
}
@media (max-width:860px) and (min-width:600px){
	.lg-brand{padding:24px 48px;}
	.lg-brand__mid{display:flex;margin-top:16px;gap:10px}
	.lg-brand__title{font-size:30px}
	.lg-main{padding:48px}
}
@media (max-width:480px){
	.lg-main{padding:28px 20px 20px}
	.lg-title{font-size:30px}
	.lg-sub{font-size:16px}
	.lg-foot{flex-direction:column;align-items:flex-start;gap:6px}
}
@media (prefers-reduced-motion:reduce){
	.lg-brand__car img,.lg-box,.lg-alert,.lg-fields.is-shake{animation:none}
}

/* ---- A0 mobil belépő (<=600 px): terv design/Mobil-nezetek.dc.html A0, státuszsáv nélkül ---- */
@media (max-width:600px){
	.lg-page{min-height:100vh;min-height:100dvh}
	/* felső fekete blokk: logó-sor + 170 px-es "hero" */
	.lg-brand{padding:calc(env(safe-area-inset-top) + 14px) max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left));justify-content:flex-start;gap:0;overflow:hidden}
	.lg-brand__glow{top:auto;bottom:0;left:0;right:0;height:170px;background:radial-gradient(closest-side,rgba(245,130,32,.22),rgba(0,0,0,0))}
	.lg-brand__top{gap:10px}
	.lg-brand__logo{height:24px}
	.lg-brand__fleet{padding-left:10px}
	.lg-brand__fleet span:first-child{font-size:13px}
	.lg-brand__fleet span:last-child{font-size:10px}
	.lg-brand__mid{display:none}
	.lg-brand__car{display:flex;align-items:center;justify-content:center;height:170px;margin:0;position:relative}
	.lg-brand__car picture{display:block;flex:none}
	.lg-brand__car img{width:320px;max-width:none;height:auto;flex:none;animation:none}
	/* form-lap: -22 px átfedés, 26 px lekerekítés */
	.lg-main{flex:1;position:relative;margin-top:-22px;border-radius:26px 26px 0 0;background:#f5f5f7;justify-content:flex-start;padding:28px max(24px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
	.lg-box{margin:0;max-width:none;align-self:stretch;gap:16px}
	.lg-head{gap:6px}
	.lg-title{font-size:30px}
	.lg-sub{font-size:15px}
	.lg-form{gap:20px}
	.lg-fields{gap:16px}
	/* mezők: 50 px, 12 px lekerekítés; fókusz = 2 px #f58220 keret + 3 px gyűrű (a belső méret nem ugrik: padding -1 px) */
	.lg-input__control{height:50px;padding:0 14px 0 40px}
	.lg-input__control--eye{padding-right:48px}
	.lg-input__control:focus{border-width:2px;border-color:#f58220;box-shadow:0 0 0 3px rgba(245,130,32,.2);padding-left:39px}
	.lg-input__control--eye:focus{padding-right:47px}
	/* hibaállapot a terv hangján: piros 2 px keret + halvány gyűrű, a hibasáv a meglévő #fdeced pill */
	.lg-input__control.is-error{border-width:2px;border-color:#e0606e;box-shadow:0 0 0 3px rgba(224,96,110,.16);padding-left:39px}
	.lg-input__control--eye.is-error{padding-right:47px}
	.lg-input__control.is-error:focus{border-color:#f58220;box-shadow:0 0 0 3px rgba(245,130,32,.2)}
	.lg-eye{right:4px;width:40px;height:40px;font-size:16px}
	.lg-alert{padding:12px 14px;font-size:14px}
	.lg-btn{height:52px;font-size:17px}
	/* lábléc: a tervben két elem, a ballaauto.hu link nem kell */
	.lg-foot{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px}
	.lg-foot__right{gap:0}
	.lg-foot a{display:none}
}
