/* Swiss Stock Notifier — front end styles (brand-matched) */

/* ---- Notify buttons ---- */
.ssn-notify-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:8px;
	cursor:pointer;font-family:inherit;font-weight:700;line-height:1;
	border:0;border-radius:12px;background:var(--green,#1DA074);color:#fff;
	transition:background .15s ease,opacity .15s ease;
}
.ssn-notify-btn:hover{background:var(--green-d,#178460);}
.ssn-notify-btn .ssn-ico{width:18px;height:18px;flex:0 0 auto;}

/* Card variant: matches the round add-to-cart icon button */
.ssn-notify-btn.ssn-card-btn{
	width:44px;height:44px;padding:0;border-radius:50%;gap:0;
}
.ssn-notify-btn.ssn-card-btn .ssn-btn-label{display:none;}
.ssn-notify-btn.ssn-card-btn .ssn-ico{width:20px;height:20px;}

/* Single-product variant: full-width brand button like .pd-add */
.ssn-notify-btn.ssn-single-btn{
	width:100%;padding:15px 20px;font-size:15px;border-radius:14px;
}
.ssn-single-variation{margin-top:14px;}

/* OOS block on single product */
.pd-oos-form.ssn-oos{margin-top:6px;}
.pd-oos-form.ssn-oos .pd-oos-head{margin-bottom:12px;}

/* ---- Modal ---- */
body.ssn-noscroll{overflow:hidden;}
.ssn-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;}
.ssn-modal[hidden]{display:none;}
.ssn-backdrop{position:absolute;inset:0;background:rgba(15,30,24,.55);backdrop-filter:saturate(120%) blur(2px);}
.ssn-card{
	position:relative;z-index:1;width:100%;max-width:420px;background:#fff;
	border-radius:18px;padding:26px 24px 22px;box-shadow:0 24px 60px rgba(0,0,0,.28);
	font-family:var(--font-jost,inherit);
	animation:ssn-pop .18s ease;
}
@keyframes ssn-pop{from{transform:translateY(8px) scale(.98);opacity:0;}to{transform:none;opacity:1;}}
.ssn-x{
	position:absolute;top:10px;right:12px;width:34px;height:34px;border:0;background:transparent;
	font-size:26px;line-height:1;color:#8a968f;cursor:pointer;border-radius:8px;
}
.ssn-x:hover{background:#f1f5f3;color:#333;}
.ssn-title{font-size:20px;font-weight:800;color:var(--ink,#12211b);padding-right:28px;}
.ssn-prod{margin-top:6px;font-weight:700;color:var(--green-d,#178460);font-size:14px;}
.ssn-desc{margin-top:8px;color:var(--muted,#5b6b63);font-size:13.5px;line-height:1.5;}
.ssn-field{margin-top:16px;}
.ssn-email{
	width:100%;box-sizing:border-box;padding:13px 14px;border:1.5px solid var(--line,#e3e9e5);
	border-radius:12px;font-size:15px;font-family:inherit;color:var(--ink,#12211b);background:#fff;
}
.ssn-email:focus{outline:none;border-color:var(--green,#1DA074);box-shadow:0 0 0 3px rgba(29,160,116,.15);}
.ssn-email.ssn-locked{background:#f5f9f7;color:#5b6b63;}
.ssn-submit{
	margin-top:14px;width:100%;padding:14px 18px;border:0;border-radius:12px;cursor:pointer;
	background:var(--green,#1DA074);color:#fff;font-weight:800;font-size:15px;font-family:inherit;
	transition:background .15s ease,opacity .15s ease;
}
.ssn-submit:hover{background:var(--green-d,#178460);}
.ssn-submit:disabled{opacity:.7;cursor:default;}
.ssn-msg{margin-top:12px;font-size:13.5px;min-height:18px;}
.ssn-msg.ok{color:var(--green-d,#178460);font-weight:600;}
.ssn-msg.err{color:var(--red,#D62A28);}

@media (max-width:480px){
	.ssn-card{max-width:none;border-radius:16px;padding:22px 18px 18px;}
}
