/* Reference-driven receipt styling; scoped to plugin to avoid theme collisions. */
.wls-widget.ws-shell{--c-bg-card:var(--wls-bg,#111827);--c-border:var(--wls-border,#283348);--c-text:var(--wls-title,#e5e7eb);--c-text-muted:var(--wls-footer,#94a3b8);--c-primary:var(--wls-amount,#3982f7);--c-success:var(--wls-success,#16a34a);--c-primary-rgb:56 125 242;--c-success-rgb:22 163 74;--ws-card-w:194px;--ws-card-gap:12px;--r-card:20px;box-sizing:border-box;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--r-card);box-shadow:inset 0 1px #ffffff14,0 2px 8px #0003;overflow:hidden;width:100%;max-width:100%;font-family:var(--wls-font,inherit)}
.ws-shell *,.ws-shell *:before,.ws-shell *:after{box-sizing:border-box}
.ws-shell .ws-header{border-bottom:1px solid var(--c-border);gap:9px;padding:13px 16px;align-items:center;display:flex}
.ws-shell .ws-header-icon{background:linear-gradient(135deg,var(--wls-accent,#4079e8),var(--wls-icon,#315fb7));border-radius:10px;color:#fff;flex-shrink:0;height:30px;justify-content:center;width:30px;align-items:center;display:flex}
.ws-shell .ws-header-icon svg{width:16px;height:16px}
.ws-shell .ws-header-title{color:var(--c-text);font-size:13.5px;font-weight:700;text-shadow:0 0 var(--wls-title-blur,0px) var(--wls-title,#fff)}
.ws-shell .ws-live{align-items:center;background:rgb(var(--c-success-rgb)/.12);border:1px solid rgb(var(--c-success-rgb)/.3);border-radius:999px;color:var(--c-success);display:flex;flex-shrink:0;font-size:10px;font-weight:600;gap:5px;letter-spacing:.2px;margin-left:auto;padding:4px 10px}
.ws-shell .ws-dot{animation:wls-pulse 1.7s ease-in-out infinite;background:var(--c-success);border-radius:50%;height:5px;width:5px}
@keyframes wls-pulse{0%,100%{box-shadow:0 0 rgb(var(--c-success-rgb)/.55)}50%{box-shadow:0 0 0 4px rgb(var(--c-success-rgb)/0)}}
.ws-shell .ws-rail{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent);overflow:hidden;padding:14px 0 16px;position:relative}
.ws-shell .ws-track{animation:wls-scroll var(--wls-duration,90s) linear infinite;contain:layout style;display:flex;gap:0;width:max-content;will-change:transform}
.ws-shell .ws-track:hover{animation-play-state:paused}
.ws-shell .ws-set{display:flex;gap:var(--ws-card-gap);padding:0 6px;flex:none}
@keyframes wls-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.ws-shell .ws-slip{background:var(--wls-card,#fff);border-radius:14px 14px 3px 3px;box-shadow:0 10px 24px #00000059;contain:layout style;flex-shrink:0;padding:11px 12px 13px;position:relative;width:var(--ws-card-w);color:#475569;display:block;border:0;height:auto;min-width:var(--ws-card-w);overflow:visible}
.ws-shell .ws-slip:after{background:conic-gradient(from 135deg at 50% 0,var(--wls-card,#fff) 0 90deg,transparent 90deg) 0 0/10px 5px repeat-x;bottom:-5px;content:"";height:5px;left:0;position:absolute;right:0}
.ws-shell .ws-slip-top{gap:7px;padding-bottom:9px;align-items:center;display:flex}
.ws-shell .ws-logo{background:#fff;border:1px solid #e2e8f0;border-radius:7px;flex-shrink:0;height:24px;justify-content:center;overflow:hidden;width:24px;align-items:center;display:flex;color:var(--bank-color,#334155);font-size:8px;font-weight:800}
.ws-shell .ws-logo img{height:100%;object-fit:contain;padding:3px;width:100%}
.ws-shell .ws-bank-info{min-width:0;flex:1}
.ws-shell .ws-bankname{color:#0f172a;font-size:10.5px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.ws-shell .ws-acc{color:#94a3b8;font-size:9px;font-weight:500;margin-top:1px;display:block}
.ws-shell .ws-ok{align-items:center;background:rgb(var(--c-success-rgb)/.14);border-radius:7px;color:var(--c-success);display:flex;flex-shrink:0;font-size:8.5px;font-weight:600;gap:3px;margin-left:auto;padding:3px 7px;white-space:nowrap}
.ws-shell .ws-cut{background:repeating-linear-gradient(90deg,#e2e8f0 0 4px,transparent 4px 8px);height:1px;margin:0 -12px;position:relative;border:0}
.ws-shell .ws-cut:after,.ws-shell .ws-cut:before{background:var(--c-bg-card);border-radius:50%;content:"";height:12px;position:absolute;top:-6px;width:12px}
.ws-shell .ws-cut:before{left:-6px}.ws-shell .ws-cut:after{right:-6px}
.ws-shell .ws-amt-box{padding:12px 0 11px;text-align:center;display:block;height:auto}
.ws-shell .ws-amt-label{color:#94a3b8;font-size:9px;font-weight:400;letter-spacing:1px;text-transform:uppercase}
.ws-shell .ws-amt{color:var(--c-primary);font-size:22px;font-weight:700;letter-spacing:-.5px;line-height:1.15;margin-top:4px;font-variant-numeric:tabular-nums}
.ws-shell .ws-amt em{color:#94a3b8;font-size:11px;font-style:normal;font-weight:400;margin-left:3px}
.ws-shell .ws-rows{padding-top:10px;display:block;flex:none}
.ws-shell .ws-row{align-items:center;display:flex;gap:8px;padding:3px 0;justify-content:initial;font-size:9px}
.ws-shell .ws-k{color:#94a3b8;flex-shrink:0;font-weight:400;font-size:9px}
.ws-shell .ws-v{color:#475569;font-weight:500;margin-left:auto;max-width:62%;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.ws-shell .ws-ref{align-items:center;border-top:1px solid #f1f5f9;color:#94a3b8;display:flex;font-size:8px;font-weight:600;gap:5px;letter-spacing:.4px;margin:9px 0 0;padding:8px 0 0}
.ws-shell .ws-ref svg{color:#cbd5e1;flex-shrink:0;width:10px;height:10px}
.ws-shell .ws-foot{align-items:center;border-top:1px solid var(--c-border);color:var(--c-text-muted);display:flex;font-size:10.5px;font-weight:400;gap:6px;justify-content:center;padding:11px 16px;background:transparent;height:auto}
@media(max-width:380px){.ws-shell .ws-header-title{font-size:13px}}
@media(prefers-reduced-motion:reduce){.ws-shell .ws-track{animation:none}.ws-shell .ws-rail{overflow-x:auto}.ws-shell .ws-dot{animation:none}}

/* V2.3 - WP theme native font & reference typography */
.wls-widget.ws-shell{font-family:inherit!important;line-height:normal;-webkit-font-smoothing:antialiased}
.ws-shell .ws-header,.ws-shell .ws-header-title,.ws-shell .ws-live,.ws-shell .ws-slip,.ws-shell .ws-slip *,.ws-shell .ws-foot{font-family:inherit!important}
.ws-shell .ws-header-title{font-size:13.5px;font-weight:700;letter-spacing:0;line-height:1.5}
.ws-shell .ws-bankname{font-size:10.5px;font-weight:650;line-height:1.3}
.ws-shell .ws-amt{font-size:22px;letter-spacing:-.5px;font-weight:750}
.ws-shell .ws-row{line-height:1.65}
.ws-shell .ws-foot svg{width:14px;height:14px;flex-shrink:0;color:var(--c-primary)}
.ws-shell .ws-track{gap:0}
.ws-shell .ws-set{padding:0 6px}
.ws-shell .ws-header-icon{background:linear-gradient(135deg,#427af3,#81a6ff)}
.ws-shell .ws-live{background:#e5f7ed;border:1px solid #a6dfba;color:#12a04a}
.ws-shell .ws-dot{background:#12a04a}
.ws-shell .ws-amt{color:#2869e7}
.ws-shell .ws-header{min-height:52px}

/* 2.4: all theme colors remain editable; avoid hard-coded overrides */
.ws-shell .ws-header-icon{background:linear-gradient(135deg,var(--wls-accent,#5087ea),var(--wls-icon,#4b84eb))}
.ws-shell .ws-live{background:color-mix(in srgb,var(--wls-success,#18a45b) 12%,transparent);border:1px solid color-mix(in srgb,var(--wls-success,#18a45b) 30%,transparent);color:var(--wls-success,#18a45b)}
.ws-shell .ws-dot{background:var(--wls-success,#18a45b)}
.ws-shell .ws-amt{color:var(--wls-amount,#2b66d9)}
.ws-shell .ws-demo-disclaimer{text-align:center;font-size:10px;padding:0 12px 10px;color:var(--wls-footer,#5680d2);opacity:.8}
