/* =====================================================================
   site-auth.css - עיצוב מחדש של התחברות / הרשמה / חנות
   נטען אחרי styles.css ואחרי site.css, ודורס רק את מה שצריך (תחת body.sk).
   ===================================================================== */
body.sk--sky {
    background: linear-gradient(180deg, #1d8fff 0%, #5cbcff 45%, #a6e3ff 80%, #d6f3ff 100%) fixed;
    position: relative;
}
body.sk--sky .bg-clouds { position: fixed; inset: 0; pointer-events: none; overflow: hidden; z-index: 0; }
body.sk--sky main, body.sk--sky .login-screen, body.sk--sky .register-screen { position: relative; z-index: 2; }

.sk .login-screen, .sk .register-screen { min-height: calc(100vh - 96px); padding: 30px 16px 60px; }
.sk .login-container, .sk .register-container {
    background: #fff; backdrop-filter: none; border-radius: var(--radius-lg);
    border: 4px solid #fff; padding: 44px 36px 36px;
    box-shadow: 0 10px 0 rgba(21, 101, 216, .35), 0 30px 60px rgba(11, 61, 145, .35);
    overflow: visible;
}
.sk .login-container { max-width: 460px; }
.sk .register-container { max-width: 620px; }
.sk .login-container::before, .sk .register-container::before { display: none; }

.sk .login-logo { margin-bottom: 26px; }
.sk .login-logo-img { width: 170px; max-width: 60%; filter: drop-shadow(0 8px 10px rgba(21, 60, 130, .25)); animation: floaty 5s ease-in-out infinite; }
.sk .login-title {
    font: 400 2.1rem var(--font-display); color: var(--sky-900); background: none;
    -webkit-text-fill-color: currentColor; text-shadow: none; margin: 4px 0;
}
.sk .login-subtitle { color: var(--ink-soft); font-weight: 500; }

.sk .form-label { font: 400 1.05rem var(--font-display); color: var(--sky-900); }
.sk .form-input {
    background: var(--sky-50); border: 3px solid var(--sky-100); border-radius: 16px; color: var(--ink);
    font-family: var(--font-body); padding: 13px 16px;
}
.sk .form-input:focus, .sk .form-input:focus-visible { border-color: var(--sky-500); background: #fff; box-shadow: 0 0 0 5px rgba(46, 155, 255, .2); outline: none; }

.sk .login-button, .sk .register-button {
    border: 0; border-radius: 18px; font: 400 1.25rem var(--font-display); color: #5a2a00; cursor: pointer;
    background: linear-gradient(180deg, var(--orange-300), var(--orange-500)); text-shadow: 0 1px 0 rgba(255, 255, 255, .45);
    box-shadow: 0 6px 0 var(--orange-600), 0 14px 20px rgba(20, 40, 90, .2), inset 0 2px 0 rgba(255, 255, 255, .55);
    transition: transform .12s, box-shadow .12s, filter .2s; animation: none;
}
.sk .login-button { width: 100%; padding: 15px; }
.sk .login-button::before, .sk .register-button::before { display: none; }
.sk .login-button:hover, .sk .register-button:hover { transform: translateY(-2px); filter: brightness(1.06); }
.sk .login-button:active, .sk .register-button:active { transform: translateY(6px); box-shadow: 0 0 0 var(--orange-600), inset 0 2px 0 rgba(255,255,255,.4); }
.sk .login-button:disabled, .sk .register-button:disabled { filter: grayscale(.6); cursor: not-allowed; transform: none; }
.sk .register-button.secondary { background: linear-gradient(180deg, #fff, #e6f3ff); color: var(--sky-900); box-shadow: 0 6px 0 #a9c8ec, inset 0 2px 0 #fff; }
.sk .register-button.success { background: linear-gradient(180deg, #7cf0ae, var(--green-500)); color: #063d1f; box-shadow: 0 6px 0 var(--green-600), inset 0 2px 0 rgba(255,255,255,.55); }

.sk .remember-me-text, .sk .register-link-text { color: var(--ink-soft); }
.sk .remember-me-checkbox { accent-color: var(--violet-500); }
.sk .register-link, .sk .back-to-home-link { color: var(--sky-700); font-weight: 700; }
.sk .register-link::after { background: var(--sky-500); }
.sk .saved-users-title { font-family: var(--font-display); color: var(--sky-900); font-weight: 400; }

/* הרשמה */
.sk .step-number { background: var(--sky-100); border-color: var(--sky-100); color: var(--ink-soft); font-family: var(--font-display); font-weight: 400; }
.sk .progress-step.active .step-number {
    background: linear-gradient(180deg, #6cc4ff, var(--sky-500)); border-color: #fff; color: #fff;
    box-shadow: 0 4px 0 var(--sky-700);
}
.sk .step-label { color: var(--ink-soft); }
.sk .progress-step.active .step-label { color: var(--sky-700); }
.sk .progress-line { background: var(--sky-100); height: 8px; border-radius: 8px; }
.sk .progress-fill { background: repeating-linear-gradient(-45deg, var(--orange-300) 0 10px, var(--orange-500) 10px 20px); border-radius: 8px; }
.sk .step-title, .sk .welcome-title, .sk .success-title, .sk .info-title { font-family: var(--font-display); font-weight: 400; color: var(--sky-900); background: none; -webkit-text-fill-color: currentColor; }
.sk .step-info, .sk .info-text, .sk .welcome-text, .sk .welcome-question, .sk .success-info, .sk .success-message { color: var(--ink-soft); }
.sk .rewards-box { background: #fff7e0; border: 3px solid var(--orange-300); border-radius: 20px; box-shadow: 0 5px 0 var(--orange-300); }
.sk .bonus-text { color: var(--orange-600); }

/* ===================== חנות ===================== */
.shop-wrap { max-width: 920px; margin: 0 auto; padding: 30px 20px 90px; text-align: center; color: #fff; }
.shop-badge { display: inline-flex; align-items: center; gap: 8px; background: var(--yellow-400); color: #6b4a00; font-weight: 700; padding: 7px 18px; border-radius: 999px; box-shadow: 0 4px 0 #d9a800; }
.shop-title { font: 400 clamp(2.4rem, 6vw, 4rem)/1.1 var(--font-display); margin: 18px 0 12px; text-shadow: 0 4px 0 var(--sky-700), 0 12px 24px rgba(11, 61, 145, .35); }
.shop-sub { font-size: 1.2rem; max-width: 52ch; margin: 0 auto 40px; font-weight: 500; text-shadow: 0 2px 6px rgba(10, 50, 130, .45); }
.shop-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-bottom: 36px; text-align: center; }
.shop-card { background: #fff; color: var(--ink); border-radius: var(--radius-md); padding: 26px 18px; border: 4px solid var(--sky-300); box-shadow: 0 8px 0 var(--sky-700), 0 22px 34px rgba(11, 61, 145, .25); transition: transform .25s cubic-bezier(.2, 1.4, .4, 1); }
.shop-card:nth-child(2) { border-color: #c9b6ff; box-shadow: 0 8px 0 var(--violet-700), 0 22px 34px rgba(11, 61, 145, .25); }
.shop-card:nth-child(3) { border-color: #ffd9a1; box-shadow: 0 8px 0 var(--orange-600), 0 22px 34px rgba(11, 61, 145, .25); }
.shop-card:hover { transform: translateY(-8px) rotate(-1deg); }
.shop-card__icon { font-size: 2.8rem; line-height: 1; margin-bottom: 8px; display: block; }
.shop-card h3 { font: 400 1.35rem var(--font-display); color: var(--sky-900); margin: 0 0 6px; }
.shop-card p { margin: 0; color: var(--ink-soft); }
.shop-panel { background: rgba(255, 255, 255, .95); color: var(--ink); border-radius: var(--radius-lg); padding: 28px; margin-bottom: 22px; border: 4px solid #fff; box-shadow: 0 8px 0 rgba(21, 101, 216, .3), 0 22px 40px rgba(11, 61, 145, .25); }
.shop-progress__label { display: flex; justify-content: space-between; font: 400 1.1rem var(--font-display); color: var(--sky-900); margin-bottom: 10px; }
.shop-progress__bar { height: 22px; border-radius: 999px; background: var(--sky-100); border: 3px solid var(--sky-100); overflow: hidden; }
.shop-progress__fill { height: 100%; width: 72%; border-radius: 999px; background: repeating-linear-gradient(-45deg, var(--orange-300) 0 12px, var(--orange-500) 12px 24px); background-size: 34px 34px; animation: stripes 1s linear infinite; }
.shop-panel h2 { font: 400 1.5rem var(--font-display); color: var(--sky-900); margin: 0 0 16px; }
.notify-form { display: flex; gap: 12px; max-width: 520px; margin-inline: auto; }
.notify-form .form-input { flex: 1; direction: ltr; text-align: left; }
.notify-form .btn { margin-bottom: 0; white-space: nowrap; }
.notify-success { display: none; margin-top: 14px; font-weight: 700; color: var(--green-600); }
.back-home { display: inline-block; margin-top: 18px; color: #fff; font-weight: 700; text-decoration: none; text-shadow: 0 2px 4px rgba(10, 50, 130, .4); }
.back-home:hover { text-decoration: underline; }
@media (max-width: 700px) {
    .shop-features { grid-template-columns: 1fr; }
    .notify-form { flex-direction: column; }
    .sk .login-container, .sk .register-container { padding: 36px 20px 28px; }
}
