/* Secure Mark Scheduler — front-end styles. Branded, responsive, touch-friendly. */
.smsch-widget,.smsch-lp{--smsch-primary:#0B2545;--smsch-accent:#C9A227;--smsch-text:#0B2545;
	--smsch-radius:14px;--smsch-border:#e6eaf0;--smsch-muted:#6b7688;--smsch-bg:#fff;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:#1a2233;line-height:1.5;-webkit-font-smoothing:antialiased;box-sizing:border-box;}
.smsch-widget *,.smsch-lp *{box-sizing:border-box;}

/* Widget shell */
.smsch-widget{max-width:640px;margin:0 auto;background:var(--smsch-bg);border:1px solid var(--smsch-border);
	border-radius:var(--smsch-radius);padding:22px;box-shadow:0 10px 40px rgba(11,37,69,.06);}
.smsch-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;}
.smsch-step{font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:var(--smsch-muted);
	padding:5px 10px;border-radius:20px;background:#f2f5f9;position:relative;}
.smsch-step.is-active{background:var(--smsch-primary);color:#fff;}
.smsch-step.is-done{background:#dceccf;color:#2f6b1f;}
.smsch-step.is-done::before{content:"✓ ";}
.smsch-tzbar{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--smsch-muted);
	background:#f7f9fc;border:1px solid var(--smsch-border);border-radius:10px;padding:8px 12px;margin-bottom:16px;}
.smsch-tzbar strong{color:var(--smsch-text);}
.smsch-q{font-size:18px;margin:0 0 14px;color:var(--smsch-text);font-weight:700;}
.smsch-loading,.smsch-slots-hint{color:var(--smsch-muted);font-size:14px;padding:20px 4px;text-align:center;}
.smsch-err{color:#b3261e;background:#fdeceb;border:1px solid #f5c6c2;border-radius:10px;padding:12px;font-size:14px;}
.smsch-ok{color:#2f6b1f;background:#eef7e8;border:1px solid #cfe6bf;border-radius:10px;padding:12px;font-size:14px;}

/* Cards (service + staff) */
.smsch-cards{display:flex;flex-direction:column;gap:10px;}
.smsch-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;
	background:#fff;border:1.5px solid var(--smsch-border);border-radius:12px;padding:16px;transition:.16s;font:inherit;}
.smsch-card:hover{border-color:var(--smsch-primary);box-shadow:0 6px 18px rgba(11,37,69,.08);transform:translateY(-1px);}
.smsch-card-dot{width:12px;height:12px;border-radius:50%;flex:none;}
.smsch-card-avatar{width:40px;height:40px;border-radius:50%;flex:none;background:var(--smsch-primary);color:#fff;
	display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;}
.smsch-card-body{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;}
.smsch-card-name{font-weight:700;font-size:15.5px;color:var(--smsch-text);}
.smsch-card-meta{font-size:12.5px;color:var(--smsch-accent);font-weight:600;}
.smsch-card-desc{font-size:13px;color:var(--smsch-muted);}
.smsch-card-arrow{color:var(--smsch-muted);font-size:18px;flex:none;}
.smsch-card:hover .smsch-card-arrow{color:var(--smsch-primary);}
.smsch-back{background:none;border:none;color:var(--smsch-muted);font-size:13.5px;cursor:pointer;padding:0 0 12px;font-weight:600;}
.smsch-back:hover{color:var(--smsch-primary);}

/* Calendar */
.smsch-cal-wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.smsch-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.smsch-cal-month{font-weight:700;font-size:15px;color:var(--smsch-text);}
.smsch-cal-nav{width:34px;height:34px;border-radius:8px;border:1px solid var(--smsch-border);background:#fff;
	cursor:pointer;font-size:18px;line-height:1;color:var(--smsch-primary);}
.smsch-cal-nav:disabled{opacity:.35;cursor:not-allowed;}
.smsch-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.smsch-cal-dow{text-align:center;font-size:11px;color:var(--smsch-muted);font-weight:600;padding:4px 0;}
.smsch-cal-empty{aspect-ratio:1;}
.smsch-cal-day{aspect-ratio:1;border:none;border-radius:9px;background:#f2f5f9;color:#c3ccd8;font:inherit;font-size:14px;cursor:not-allowed;}
.smsch-cal-day.is-open{background:#eaf1ea;color:var(--smsch-primary);font-weight:700;cursor:pointer;border:1.5px solid transparent;}
.smsch-cal-day.is-open:hover{border-color:var(--smsch-primary);background:#fff;}
.smsch-cal-day.is-selected{background:var(--smsch-primary)!important;color:#fff!important;}

/* Slots */
.smsch-slots-date{font-weight:700;font-size:14px;margin:0 0 10px;color:var(--smsch-text);}
.smsch-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;max-height:280px;overflow:auto;}
.smsch-slot{padding:11px 8px;border:1.5px solid var(--smsch-border);border-radius:9px;background:#fff;
	color:var(--smsch-primary);font-weight:600;font-size:13.5px;cursor:pointer;transition:.14s;font-family:inherit;}
.smsch-slot:hover{border-color:var(--smsch-primary);background:var(--smsch-primary);color:#fff;}

/* Details form */
.smsch-selected{background:#f7f9fc;border:1px solid var(--smsch-border);border-radius:10px;padding:11px 14px;
	font-size:13.5px;font-weight:600;color:var(--smsch-text);margin-bottom:16px;}
.smsch-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.smsch-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:var(--smsch-text);}
.smsch-field-full{grid-column:1/-1;}
.smsch-field input,.smsch-field textarea{border:1.5px solid var(--smsch-border);border-radius:9px;padding:11px 12px;
	font-size:15px;font-family:inherit;color:#1a2233;transition:.14s;width:100%;}
.smsch-field input:focus,.smsch-field textarea:focus{outline:none;border-color:var(--smsch-primary);box-shadow:0 0 0 3px rgba(11,37,69,.1);}
.smsch-form-err{grid-column:1/-1;color:#b3261e;background:#fdeceb;border:1px solid #f5c6c2;border-radius:9px;padding:10px 12px;font-size:13.5px;}
.smsch-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:10px;
	padding:14px 22px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:.16s;text-decoration:none;}
.smsch-btn-primary{background:var(--smsch-primary);color:#fff;}
.smsch-btn-primary:hover{background:#123a63;}
.smsch-btn-primary:disabled{opacity:.6;cursor:default;}
.smsch-btn-ghost{background:#fff;border:1.5px solid var(--smsch-primary);color:var(--smsch-primary);}
.smsch-submit{grid-column:1/-1;}
.smsch-fineprint{grid-column:1/-1;font-size:12px;color:var(--smsch-muted);text-align:center;margin:2px 0 0;font-weight:400;}

/* Confirmation */
.smsch-confirm{text-align:center;padding:14px 8px 8px;}
.smsch-check{width:64px;height:64px;border-radius:50%;background:#2f8f2f;color:#fff;font-size:34px;
	display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 8px 20px rgba(47,143,47,.3);}
.smsch-confirm h3{font-size:22px;color:var(--smsch-text);margin:0 0 10px;}
.smsch-confirm-when{font-size:15px;font-weight:700;color:var(--smsch-text);margin:0 0 8px;}
.smsch-confirm-msg{font-size:14px;color:var(--smsch-muted);margin:0 0 14px;}
.smsch-confirm-id{font-size:13px;color:var(--smsch-muted);margin-bottom:16px;}

/* Honeypot */
.smsch-hp{position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden;}

/* Manage view */
.smsch-manage-title{font-size:20px;color:var(--smsch-text);margin:0 0 14px;}
.smsch-manage-card{border:1px solid var(--smsch-border);border-radius:12px;overflow:hidden;margin-bottom:16px;}
.smsch-manage-card.is-cancelled{opacity:.75;}
.smsch-manage-row{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;font-size:14px;border-bottom:1px solid var(--smsch-border);}
.smsch-manage-row:last-child{border-bottom:none;}
.smsch-manage-row span{color:var(--smsch-muted);}
.smsch-status{padding:2px 10px;border-radius:20px;font-size:12px;}
.smsch-status-confirmed{background:#eaf1ea;color:#2f6b1f;}
.smsch-status-cancelled{background:#fdeceb;color:#b3261e;}
.smsch-status-completed{background:#eef2fb;color:#123a63;}
.smsch-manage-actions{display:flex;gap:10px;margin-bottom:14px;}
.smsch-manage-note,.smsch-manage-err{font-size:14px;color:var(--smsch-muted);}
.smsch-manage-err{background:#fdeceb;border:1px solid #f5c6c2;color:#b3261e;border-radius:10px;padding:14px;}

/* Landing page */
.smsch-lp{padding:0;}
.smsch-lp-inner{max-width:1160px;margin:0 auto;padding:20px;}
.smsch-lp-narrow{max-width:680px;}
.smsch-lp-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start;}
.smsch-eyebrow{display:inline-block;background:rgba(201,162,39,.15);color:var(--smsch-accent);font-weight:700;
	font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:6px 14px;border-radius:20px;margin-bottom:14px;}
.smsch-h1{font-size:38px;line-height:1.12;color:var(--smsch-text);margin:0 0 16px;font-weight:800;letter-spacing:-.5px;}
.smsch-lede{font-size:17px;color:#44506a;margin:0 0 22px;}
.smsch-benefits{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:11px;}
.smsch-benefits li{display:flex;gap:11px;font-size:15px;color:#2a3550;align-items:flex-start;}
.smsch-benefits li span{color:#fff;background:#2f8f2f;border-radius:50%;width:22px;height:22px;font-size:13px;
	display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:1px;}
.smsch-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;}
.smsch-trust-item{text-align:center;background:#fff;border:1px solid var(--smsch-border);border-radius:12px;padding:14px 8px;}
.smsch-trust-item strong{display:block;font-size:22px;color:var(--smsch-primary);font-weight:800;}
.smsch-trust-item span{font-size:11.5px;color:var(--smsch-muted);}
.smsch-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.smsch-badge{font-size:12.5px;font-weight:600;background:#f4f7fb;border:1px solid var(--smsch-border);
	border-radius:8px;padding:7px 12px;color:var(--smsch-text);}
.smsch-quote{margin:0;padding:16px 20px;background:#0b2545;color:#e8eef6;border-radius:12px;font-size:15px;font-style:italic;}
.smsch-quote cite{display:block;margin-top:10px;font-style:normal;font-size:13px;color:var(--smsch-accent);font-weight:600;}
.smsch-widget-card{background:#fff;border:1px solid var(--smsch-border);border-radius:16px;box-shadow:0 20px 60px rgba(11,37,69,.12);
	overflow:hidden;position:sticky;top:20px;}
.smsch-widget-head{background:var(--smsch-primary);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;}
.smsch-widget-head strong{font-size:16px;}
.smsch-scarcity{font-size:12px;background:rgba(201,162,39,.2);color:var(--smsch-accent);padding:4px 10px;border-radius:20px;font-weight:600;}
.smsch-widget-card .smsch-widget{border:none;box-shadow:none;border-radius:0;margin:0;}
.smsch-faq{margin-top:48px;max-width:820px;}
.smsch-faq h2{font-size:26px;color:var(--smsch-text);margin:0 0 18px;font-weight:800;}
.smsch-faq-item{border:1px solid var(--smsch-border);border-radius:12px;margin-bottom:10px;background:#fff;overflow:hidden;}
.smsch-faq-item summary{cursor:pointer;padding:16px 18px;font-weight:700;font-size:15.5px;color:var(--smsch-text);list-style:none;position:relative;}
.smsch-faq-item summary::-webkit-details-marker{display:none;}
.smsch-faq-item summary::after{content:"+";position:absolute;right:18px;color:var(--smsch-accent);font-size:20px;font-weight:700;}
.smsch-faq-item[open] summary::after{content:"–";}
.smsch-faq-a{padding:0 18px 16px;font-size:14.5px;color:#44506a;}

/* Responsive */
@media(max-width:860px){
	.smsch-lp-grid{grid-template-columns:1fr;gap:28px;}
	.smsch-h1{font-size:30px;}
	.smsch-widget-card{position:static;}
}
@media(max-width:560px){
	.smsch-cal-wrap{grid-template-columns:1fr;}
	.smsch-form{grid-template-columns:1fr;}
	.smsch-trust{grid-template-columns:repeat(2,1fr);}
	.smsch-widget{padding:16px;}
	.smsch-h1{font-size:26px;}
	.smsch-slot-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));}
}
