/* Nefes Terapi — giriş / kayıt ekranı (body.nt-auth). Eklentinin form işleyişine dokunmaz, yalnızca görünüm. */

body.nt-auth {
	--n-night: #07131a;
	--n-night-2: #0d1f27;
	--n-gold: #d6ba7d;
	--n-gold-bright: #f1dca6;
	--n-mint: #8fd6c8;
	--n-teal: #3f6f73;
	--n-deep: #24474a;
	--n-line: #dfe7e6;
	--n-display: "Cormorant Garamond", Georgia, serif;
	--n-body: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
	min-height: 100dvh;
	background:
		radial-gradient(60vw 60vw at 85% -10%, rgba(63, 160, 160, .25), transparent 60%),
		radial-gradient(50vw 50vw at -10% 45%, rgba(150, 120, 220, .14), transparent 60%),
		radial-gradient(70vw 50vw at 50% 110%, rgba(40, 110, 150, .22), transparent 60%),
		var(--n-night) fixed;
	font-family: var(--n-body);
}
body.nt-auth::before {
	/* Yıldızlar */
	content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 0; opacity: .8;
	background-image:
		radial-gradient(1px 1px at 12% 18%, #fff 50%, transparent 51%),
		radial-gradient(1px 1px at 78% 12%, #f1dca6 50%, transparent 51%),
		radial-gradient(1.4px 1.4px at 32% 72%, #fff 50%, transparent 51%),
		radial-gradient(1px 1px at 90% 64%, #fff 50%, transparent 51%),
		radial-gradient(1.2px 1.2px at 55% 30%, #e6efee 50%, transparent 51%),
		radial-gradient(1px 1px at 8% 88%, #f1dca6 50%, transparent 51%),
		radial-gradient(1px 1px at 66% 90%, #fff 50%, transparent 51%),
		radial-gradient(1.3px 1.3px at 44% 8%, #fff 50%, transparent 51%),
		radial-gradient(1px 1px at 22% 44%, #e6efee 50%, transparent 51%),
		radial-gradient(1px 1px at 96% 30%, #f1dca6 50%, transparent 51%);
	animation: nt-twinkle 6s ease-in-out infinite alternate;
}
@keyframes nt-twinkle { from { opacity: .45; } to { opacity: .95; } }

body.nt-auth .aipc-page { position: relative; z-index: 1; background: transparent; }

/* Yerleşim */
body.nt-auth .aipc-page .aipc-auth {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
	padding: 84px 16px 40px; background: transparent; color: #1f2a2c;
}
body.nt-auth .aipc-page .aipc-auth > .nt-panel-bar {
	position: absolute; top: 18px; left: 18px; margin: 0; justify-content: flex-start;
}
body.nt-auth .aipc-page .aipc-auth > .nt-panel-bar .nt-home-link {
	background: rgba(13, 31, 39, .7); color: var(--n-gold); border: 1px solid rgba(214, 186, 125, .45);
	backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); font-weight: 500; letter-spacing: .02em;
}
body.nt-auth .aipc-page .aipc-auth > .nt-panel-bar .nt-home-link:hover { background: var(--n-gold); color: var(--n-night); box-shadow: 0 0 24px rgba(214, 186, 125, .4); }

/* Marka başlığı (auth.js ekler) */
.nt-auth-brand { text-align: center; margin: 0 0 22px; color: #fff; }
.nt-auth-brand__mark { display: grid; place-items: center; width: 92px; height: 92px; margin: 0 auto 12px; position: relative; color: var(--n-gold); }
.nt-auth-brand__mark::before {
	content: ""; position: absolute; inset: 0; border-radius: 50%;
	background: radial-gradient(circle, rgba(241, 220, 166, .28), rgba(143, 214, 200, .08) 55%, transparent 70%);
	animation: nt-auth-breath 8s ease-in-out infinite;
}
.nt-auth-brand__mark::after { content: ""; position: absolute; inset: 4px; border: 1px dashed rgba(214, 186, 125, .4); border-radius: 50%; animation: nt-auth-spin 40s linear infinite; }
.nt-auth-brand__mark svg { position: relative; width: 52px; height: 52px; animation: nt-auth-breath 8s ease-in-out infinite; filter: drop-shadow(0 0 10px rgba(241, 220, 166, .45)); }
.nt-auth-brand__name { display: block; font-family: var(--n-display); font-size: 2.2rem; font-weight: 600; letter-spacing: .03em; line-height: 1.05; }
.nt-auth-brand__tag { display: block; margin-top: 6px; font-size: .7rem; letter-spacing: .32em; text-transform: uppercase; color: #9fb5b6; }
@keyframes nt-auth-breath { 0%, 100% { transform: scale(.9); } 45%, 55% { transform: scale(1.08); } }
@keyframes nt-auth-spin { to { transform: rotate(360deg); } }

/* Kart */
body.nt-auth .aipc-page .aipc-auth .aipc-card {
	position: relative; width: 100%; max-width: 460px; margin: 0;
	padding: 34px 34px 28px; border: 0; border-radius: 26px;
	background: #fff;
	box-shadow: 0 0 0 1px rgba(214, 186, 125, .35), 0 40px 90px -30px rgba(0, 0, 0, .85), 0 0 80px -30px rgba(143, 214, 200, .35);
	animation: nt-auth-in .7s cubic-bezier(.2, .7, .2, 1) both;
}
body.nt-auth .aipc-page .aipc-auth .aipc-card::before {
	content: ""; position: absolute; left: 34px; right: 34px; top: 0; height: 3px; border-radius: 0 0 4px 4px;
	background: linear-gradient(90deg, transparent, var(--n-gold), var(--n-mint), transparent);
}
@keyframes nt-auth-in { from { opacity: 0; transform: translateY(18px) scale(.98); } to { opacity: 1; transform: none; } }

body.nt-auth .aipc-auth .aipc-title { font-family: var(--n-display); font-size: 2rem; font-weight: 600; color: var(--n-deep); text-align: center; margin: 0 0 4px; }
body.nt-auth .aipc-auth .aipc-card > .aipc-muted { text-align: center; margin: 0 0 6px; color: #6a7b7d; }

/* Sekmeler: bölümlü düğme */
body.nt-auth .aipc-auth .aipc-tabs { gap: 4px; margin: 20px 0 24px; padding: 5px; border-radius: 999px; background: #eef3f2; box-shadow: inset 0 1px 2px rgba(0, 0, 0, .05); }
body.nt-auth .aipc-auth .aipc-tab { padding: 10px 12px; border-radius: 999px; background: transparent; color: #4d6062; font-weight: 500; transition: background .25s, color .25s, box-shadow .25s; }
body.nt-auth .aipc-auth .aipc-tab:hover { color: var(--n-deep); background: rgba(255, 255, 255, .6); }
body.nt-auth .aipc-auth .aipc-tab.is-active { background: #fff; color: var(--n-deep); box-shadow: 0 2px 10px rgba(36, 71, 74, .14); }

/* Alanlar */
body.nt-auth .aipc-auth form p { margin: 0 0 16px; }
body.nt-auth .aipc-auth label { font-size: .86rem; font-weight: 500; color: #34494b; margin-bottom: 6px; letter-spacing: .01em; }
body.nt-auth .aipc-auth input[type="text"],
body.nt-auth .aipc-auth input[type="email"],
body.nt-auth .aipc-auth input[type="password"] {
	min-height: 50px; padding: .7rem 1rem; border: 1.5px solid var(--n-line); border-radius: 14px;
	background: #f8fbfa; font-size: 1rem; transition: border-color .2s, box-shadow .2s, background .2s;
}
body.nt-auth .aipc-auth input[type="text"]:hover,
body.nt-auth .aipc-auth input[type="email"]:hover,
body.nt-auth .aipc-auth input[type="password"]:hover { border-color: #c5d4d2; }
body.nt-auth .aipc-auth input[type="text"]:focus,
body.nt-auth .aipc-auth input[type="email"]:focus,
body.nt-auth .aipc-auth input[type="password"]:focus {
	outline: none; border-color: var(--n-teal); background: #fff; box-shadow: 0 0 0 4px rgba(63, 111, 115, .14);
}
body.nt-auth .aipc-auth small { display: block; margin-top: 6px; color: #7a8a8c; font-size: .8rem; }

/* Parola göster/gizle (auth.js) */
.nt-pass { position: relative; display: block; }
.nt-pass input { padding-right: 52px !important; }
.nt-pass__toggle {
	position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px;
	display: grid; place-items: center; border: 0; border-radius: 10px; background: transparent; color: #6a7b7d; cursor: pointer;
}
.nt-pass__toggle:hover { color: var(--n-deep); background: #eef3f2; }
.nt-pass__toggle:focus-visible { outline: 2px solid var(--n-teal); outline-offset: 1px; }
.nt-pass__toggle svg { width: 20px; height: 20px; }

/* Beni hatırla / rıza */
body.nt-auth .aipc-auth .login-remember label { display: inline-flex; align-items: center; gap: 8px; font-weight: 400; color: #4d6062; cursor: pointer; }
body.nt-auth .aipc-auth input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--n-teal); margin: 0; }
body.nt-auth .aipc-auth .aipc-check { padding: 14px; border-radius: 14px; background: #f4f8f7; border: 1px solid var(--n-line); }
body.nt-auth .aipc-auth .aipc-check input { margin-top: 3px; }
body.nt-auth .aipc-auth .aipc-check label {
	font-size: .8rem; line-height: 1.55; color: #4d6062; font-weight: 400; margin: 0;
	max-height: 168px; overflow-y: auto; padding-right: 6px; scrollbar-width: thin;
}

/* Gönder */
body.nt-auth .aipc-auth #wp-submit,
body.nt-auth .aipc-auth .aipc-form .aipc-btn--primary {
	width: 100%; min-height: 52px; border: 0; border-radius: 999px; cursor: pointer;
	background: linear-gradient(135deg, var(--n-gold-bright), var(--n-gold)); color: #1d1a10;
	font-family: var(--n-body); font-size: .95rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase;
	box-shadow: 0 12px 28px -14px rgba(160, 125, 50, .9); transition: transform .2s, box-shadow .25s, filter .2s;
}
body.nt-auth .aipc-auth #wp-submit:hover,
body.nt-auth .aipc-auth .aipc-form .aipc-btn--primary:hover { transform: translateY(-2px); box-shadow: 0 16px 34px -14px rgba(160, 125, 50, 1); filter: saturate(1.1); color: #1d1a10; }
body.nt-auth .aipc-auth #wp-submit:focus-visible,
body.nt-auth .aipc-auth .aipc-form .aipc-btn--primary:focus-visible { outline: 3px solid var(--n-teal); outline-offset: 3px; }
body.nt-auth .aipc-auth .login-submit { margin: 22px 0 0 !important; }

/* Parolamı unuttum */
body.nt-auth .aipc-auth .aipc-auth__alt { text-align: center; margin: 16px 0 0; }
body.nt-auth .aipc-auth .aipc-auth__alt a { color: var(--n-teal); font-size: .9rem; text-decoration: none; border-bottom: 1px solid rgba(63, 111, 115, .3); }
body.nt-auth .aipc-auth .aipc-auth__alt a:hover { color: var(--n-deep); border-color: var(--n-deep); }

/* Hata/uyarı kutuları */
body.nt-auth .aipc-auth .aipc-alert, body.nt-auth .aipc-auth .aipc-notice { border-radius: 14px; }

/* Güven satırı (auth.js) */
.nt-auth-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 20px; margin: 22px 0 0; padding: 0; list-style: none; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: #9fb5b6; }
.nt-auth-trust li { display: inline-flex; align-items: center; gap: 7px; }
.nt-auth-trust i { width: 7px; height: 7px; border-radius: 50%; background: #5fd38d; box-shadow: 0 0 8px #5fd38d; }
.nt-auth-trust a { color: var(--n-gold); text-decoration: none; }
.nt-auth-trust a:hover { color: var(--n-gold-bright); }

@media (max-width: 520px) {
	body.nt-auth .aipc-page .aipc-auth { padding: 76px 14px 28px; justify-content: flex-start; }
	body.nt-auth .aipc-page .aipc-auth > .nt-panel-bar { top: 14px; left: 14px; }
	body.nt-auth .aipc-page .aipc-auth .aipc-card { padding: 28px 20px 22px; border-radius: 22px; }
	body.nt-auth .aipc-page .aipc-auth .aipc-card::before { left: 20px; right: 20px; }
	.nt-auth-brand__mark { width: 74px; height: 74px; margin-bottom: 8px; }
	.nt-auth-brand__mark svg { width: 42px; height: 42px; }
	.nt-auth-brand__name { font-size: 1.85rem; }
	body.nt-auth .aipc-auth .aipc-title { font-size: 1.7rem; }
	.nt-auth-trust { gap: 6px 14px; font-size: .7rem; }
}
@media (prefers-reduced-motion: reduce) {
	body.nt-auth::before, .nt-auth-brand__mark::before, .nt-auth-brand__mark::after, .nt-auth-brand__mark svg,
	body.nt-auth .aipc-page .aipc-auth .aipc-card { animation: none; }
}
