/* NV EventFlow — public */
.nvef-flyer{max-width:900px;margin:0 auto;border-radius:10px;overflow:hidden;box-shadow:0 24px 60px -28px rgba(6,34,47,.5)}
.nvef-frame{width:100%;min-width:0;border:0;display:block;background:#0b5e8c;color-scheme:light}
.nvef-flyer *{box-sizing:border-box}

.nvef-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
	background:#06334C;color:#F0E9DB;padding:18px 22px;font-family:system-ui,-apple-system,sans-serif}
.nvef-cta-text{display:flex;flex-direction:column;gap:3px;font-size:15px}
.nvef-cta-text span{font-size:13.5px;color:rgba(245,240,230,.95)}
.nvef-cta-btn{background:#FF6B2C;color:#2A0C00;text-decoration:none;font-weight:800;
	padding:12px 20px;border-radius:4px;box-shadow:0 4px 0 #C6440F;white-space:nowrap;transition:transform .12s,box-shadow .12s}
.nvef-cta-btn:hover,.nvef-cta-btn:focus{transform:translateY(2px);box-shadow:0 2px 0 #C6440F;color:#2A0C00}

.nvef-panel{max-width:900px;margin:26px auto;padding:24px;border:1px solid rgba(6,34,47,.16);border-radius:10px;background:#fff;color:#122a35}
.nvef-panel-title{margin:0 0 14px;font-size:20px}
.nvef-ticket{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid rgba(6,34,47,.1)}
.nvef-ticket.is-out{opacity:.55}
.nvef-ticket-info{display:flex;flex-direction:column;gap:3px}
.nvef-ticket-desc{font-size:13.5px;color:#26414d}
.nvef-left{font-size:12px;color:#C6440F;font-weight:700}
.nvef-ticket-buy{display:flex;align-items:center;gap:12px}
.nvef-price{font-weight:800}
.nvef-out{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#4a626d}
.nvef-qty{width:70px;padding:8px;border:1px solid rgba(6,34,47,.28);border-radius:4px}

.nvef-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.nvef-fields label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}
.nvef-fields input{padding:11px;border:1px solid rgba(6,34,47,.28);border-radius:4px;font-size:15px}
.nvef-total{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid rgba(6,34,47,.14);font-size:17px}
.nvef-submit{width:100%;background:#0B5E8C;color:#fff;border:0;border-radius:5px;padding:15px;font-size:16px;font-weight:800;cursor:pointer}
.nvef-submit:disabled{opacity:.6;cursor:progress}
.nvef-msg{margin:10px 0 0;font-size:14px}
.nvef-msg.is-error{color:#b3261e}
.nvef-secure{margin:10px 0 0;font-size:12.5px;color:#2f4a57}
.nvef-blocked{background:#fff4e5;border:1px solid #f0c99a;padding:14px;border-radius:6px}

.nvef-confirm{max-width:900px;margin:26px auto;padding:24px;border-radius:10px;background:#eefaf3;border:1px solid #b6e2c9}
.nvef-codes{list-style:none;margin:14px 0 0;padding:0}
.nvef-codes li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed rgba(6,34,47,.2)}
.nvef-codes code{font-size:18px;letter-spacing:.08em}

.nvef-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.nvef-card{display:block;text-decoration:none;color:inherit;border:1px solid rgba(6,34,47,.14);border-radius:10px;overflow:hidden;background:#fff}
.nvef-card img{width:100%;height:150px;object-fit:cover;display:block}
.nvef-card-body{display:block;padding:14px}
.nvef-card-date{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#0B5E8C}
.nvef-card-city{display:block;font-size:13.5px;color:#26414d;margin-top:3px}

.nvef-dash{max-width:1180px;margin:0 auto;color:#122a35;font-family:system-ui,-apple-system,sans-serif}
.nvef-h2{margin:30px 0 12px;font-size:22px}
.nvef-h3{margin:26px 0 8px;font-size:17px}
.nvef-hint{font-size:13.5px;color:#26414d;margin:0 0 10px}
.nvef-notice{padding:12px 14px;border-radius:6px;margin:12px 0}
.nvef-notice-ok{background:#eefaf3;border:1px solid #b6e2c9}
.nvef-notice-error{background:#fdecea;border:1px solid #f3b7b1}
.nvef-connect{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
	padding:16px;border-radius:8px;background:#f4f7f9;border:1px solid rgba(6,34,47,.14);margin:16px 0}
.nvef-connect.is-ready{background:#eefaf3;border-color:#b6e2c9}
.nvef-connect strong{display:block}
.nvef-connect span{font-size:13.5px;color:#26414d}
.nvef-connect-actions{display:flex;gap:8px;align-items:center}
.nvef-btn{display:inline-block;background:#0B5E8C;color:#fff;border:0;border-radius:5px;padding:11px 16px;
	font-weight:700;cursor:pointer;text-decoration:none;font-size:14px}
.nvef-btn:hover{color:#fff}
.nvef-btn-ghost{background:transparent;color:#0B5E8C;border:1px solid #0B5E8C}
.nvef-btn-ghost:hover{color:#0B5E8C}
.nvef-list{display:flex;flex-direction:column;gap:8px}
.nvef-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
	padding:12px 14px;border:1px solid rgba(6,34,47,.14);border-radius:6px;background:#fff}
.nvef-row-meta{display:block;font-size:13.5px;color:#26414d}
.nvef-row-actions{display:flex;gap:8px}
.nvef-form{background:#fff;border:1px solid rgba(6,34,47,.14);border-radius:8px;padding:18px}
.nvef-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.nvef-field label{font-size:13px;font-weight:600}
.nvef-field input[type=text],.nvef-field input[type=number],.nvef-field input[type=datetime-local],
.nvef-field select,.nvef-field textarea{padding:10px;border:1px solid rgba(6,34,47,.28);border-radius:4px;font-size:15px;width:100%}
.nvef-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nvef-ticket-row{display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:8px;margin-bottom:8px}
.nvef-ticket-row input{padding:9px;border:1px solid rgba(6,34,47,.28);border-radius:4px;width:100%}
.nvef-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.nvef-gen-msg{font-size:14px;margin-top:10px}
.nvef-gen-msg.is-error{color:#b3261e}
.nvef-gen-msg.is-ok{color:#1e7a45}
.nvef-checkin{max-width:420px;margin:0 auto;text-align:center}
.nvef-checkin input{width:100%;padding:14px;font-size:22px;text-align:center;letter-spacing:.1em;
	border:1px solid rgba(6,34,47,.28);border-radius:6px;margin:10px 0}
.nvef-checkin-msg.is-ok{color:#1e7a45;font-weight:700}
.nvef-checkin-msg.is-error{color:#b3261e;font-weight:700}

@media (max-width:640px){
	.nvef-fields,.nvef-cols{grid-template-columns:1fr}
	.nvef-ticket-row{grid-template-columns:1fr 1fr}
	.nvef-cta{flex-direction:column;align-items:flex-start}
}

/* ---------- brand footer ---------- */
.nvef-brand{display:flex;justify-content:center;padding:16px 20px}
.nvef-brand-link{display:inline-flex;align-items:center;gap:11px;text-decoration:none;
	opacity:.75;transition:opacity .2s ease,transform .2s ease}
.nvef-brand-link:hover{opacity:1;transform:translateY(-1px)}
.nvef-brand-logo{height:26px;width:auto;display:block}
.nvef-brand-meta{display:flex;flex-direction:column;line-height:1.25}
.nvef-brand-by{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.nvef-brand-url{font-size:12px;letter-spacing:.02em}

.nvef-brand-dark{color:#2c4552}
.nvef-brand-dark .nvef-brand-link{color:#2c4552}
.nvef-brand-dark .nvef-brand-url{color:#2f4a57}

.nvef-brand-light{background:#04283C;color:#EDE6D8}
.nvef-brand-light .nvef-brand-link{color:#EDE6D8}
.nvef-brand-light .nvef-brand-url{color:rgba(237,230,216,.72)}

/* the bundled SVG paints with currentColor, so it follows the tone */
.nvef-brand-inherit .nvef-brand-logo{filter:none}

.nvef-flyer .nvef-brand{margin-top:0}

/* ============================================================
   Reactive builder
   ============================================================ */
.nvef-builder{--b-ink:#102733;--b-mut:#2f4a57;--b-line:rgba(6,34,47,.2);--b-pool:#0B5E8C;--b-pop:#FF6B2C;color:var(--b-ink)}
.nvef-builder-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:14px}

.nvef-steps-bar{display:flex;gap:6px;list-style:none;margin:0;padding:0}
.nvef-steps-bar li{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--b-mut);
	padding:7px 13px;border-radius:99px;background:#eef3f5;transition:background .3s ease,color .3s ease}
.nvef-steps-bar li span{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;
	background:#cfdde3;color:#12313f;font-size:11px;transition:background .3s ease,color .3s ease,transform .3s ease}
.nvef-steps-bar li.is-active{background:var(--b-pool);color:#fff}
.nvef-steps-bar li.is-active span{background:#fff;color:var(--b-pool);transform:scale(1.1)}
.nvef-steps-bar li.is-done span{background:#1E7A45;color:#fff}

.nvef-builder-grid{display:grid;grid-template-columns:1fr 330px;gap:22px;align-items:start}

.nvef-form{background:#fff;border:1px solid var(--b-line);border-radius:14px;padding:22px}
.nvef-fs{border:0;margin:0 0 26px;padding:0}
.nvef-fs legend{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--b-pool);padding:0 0 12px}

/* floating labels */
.nvef-float{position:relative;margin-bottom:20px}
.nvef-float input,.nvef-float textarea{
	width:100%;padding:20px 12px 9px;border:1px solid var(--b-line);border-radius:9px;
	font-size:15.5px;color:var(--b-ink);background:#fff;transition:border-color .2s ease,box-shadow .2s ease;
}
.nvef-float textarea{padding-top:24px;resize:vertical}
.nvef-float label{
	position:absolute;left:13px;top:15px;font-size:15px;color:var(--b-mut);pointer-events:none;
	transition:transform .18s cubic-bezier(.2,.8,.25,1),color .18s ease,font-size .18s ease;transform-origin:left top;
}
.nvef-float input:focus,.nvef-float textarea:focus{outline:0;border-color:var(--b-pool);box-shadow:0 0 0 4px rgba(11,94,140,.13)}
.nvef-float input:focus+label,.nvef-float textarea:focus+label,
.nvef-float input:not(:placeholder-shown)+label,.nvef-float textarea:not(:placeholder-shown)+label{
	transform:translateY(-9px) scale(.74);color:var(--b-pool);font-weight:700;letter-spacing:.04em}
.nvef-bar{position:absolute;left:12px;right:12px;bottom:0;height:2px;background:var(--b-pool);
	transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.8,.25,1);border-radius:2px}
.nvef-float input:focus~.nvef-bar,.nvef-float textarea:focus~.nvef-bar{transform:scaleX(1)}
.nvef-count{position:absolute;right:11px;bottom:7px;font-size:10.5px;color:var(--b-mut);opacity:0;transition:opacity .2s ease}
.nvef-float input:focus~.nvef-count,.nvef-float textarea:focus~.nvef-count{opacity:.85}

/* palette swatches */
.nvef-swatches{margin-bottom:20px}
.nvef-swatch-label{display:block;font-size:12px;font-weight:700;color:var(--b-mut);margin-bottom:7px}
.nvef-swatch-row{display:flex;gap:8px;flex-wrap:wrap}
.nvef-swatch{position:relative;display:flex;flex-direction:column;gap:5px;align-items:center;cursor:pointer;
	padding:8px 10px;border:1px solid var(--b-line);border-radius:10px;transition:border-color .2s,transform .2s,box-shadow .2s}
.nvef-swatch input{position:absolute;opacity:0;inset:0;cursor:pointer}
.nvef-swatch-chips{display:flex}
.nvef-swatch-chips i{width:15px;height:15px;border-radius:50%;margin-left:-5px;border:2px solid #fff}
.nvef-swatch-chips i:first-child{margin-left:0}
.nvef-swatch em{font-style:normal;font-size:11px;font-weight:700;color:var(--b-mut)}
.nvef-swatch:hover{transform:translateY(-2px)}
.nvef-swatch.is-on{border-color:var(--b-pool);box-shadow:0 0 0 3px rgba(11,94,140,.14)}
.nvef-swatch.is-on em{color:var(--b-pool)}

/* ticket rows */
.nvef-ticket-row{
	display:grid;grid-template-columns:2fr 1fr .8fr 2fr 34px;gap:10px;align-items:end;
	padding:12px;border:1px solid var(--b-line);border-radius:11px;margin-bottom:10px;background:#fbfdfd;
	animation:nvef-row-in .4s cubic-bezier(.2,.8,.25,1) both;
}
@keyframes nvef-row-in{from{opacity:0;transform:translateY(-8px) scale(.99)}to{opacity:1;transform:none}}
.nvef-ticket-row.is-going{animation:nvef-row-out .3s ease forwards}
@keyframes nvef-row-out{to{opacity:0;transform:translateX(-14px);height:0;margin:0;padding:0;border-width:0}}
.nvef-tf{display:flex;flex-direction:column;gap:4px}
.nvef-tf span{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--b-mut)}
.nvef-tf input{padding:9px 10px;border:1px solid var(--b-line);border-radius:7px;font-size:14.5px;color:var(--b-ink);width:100%}
.nvef-tf input:focus{outline:0;border-color:var(--b-pool);box-shadow:0 0 0 3px rgba(11,94,140,.12)}
.nvef-tf-money input{font-variant-numeric:tabular-nums}
.nvef-row-x{background:transparent;border:1px solid var(--b-line);color:var(--b-mut);border-radius:7px;
	width:34px;height:36px;font-size:19px;line-height:1;cursor:pointer;transition:all .18s ease}
.nvef-row-x:hover{background:#fdecea;border-color:#e3a49e;color:#a3231c;transform:rotate(90deg)}

/* payout meter */
.nvef-payout{margin-top:18px;padding:16px 18px;border-radius:12px;background:#06334C;color:#EDE6D8;
	display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.nvef-payout div{display:flex;flex-direction:column;gap:3px}
.nvef-payout span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(237,230,216,.72);font-weight:700}
.nvef-payout strong{font-size:20px;font-variant-numeric:tabular-nums;transition:color .3s ease}
.nvef-payout-fee strong{color:#FFA26B}
.nvef-payout-net strong{color:#7BE8C4}
.nvef-payout-bar{grid-column:1/-1;height:7px;border-radius:99px;background:rgba(255,255,255,.16);overflow:hidden;display:block}
.nvef-payout-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#7BE8C4,#34C6E8);
	transition:width .7s cubic-bezier(.2,.8,.25,1)}

/* prompt chips */
.nvef-chips{display:flex;gap:8px;flex-wrap:wrap;margin:-8px 0 14px}
.nvef-chip{background:#eef3f5;border:1px solid transparent;border-radius:99px;padding:7px 13px;
	font-size:12.5px;color:#20404e;cursor:pointer;transition:all .18s ease}
.nvef-chip:hover{background:#fff;border-color:var(--b-pool);color:var(--b-pool);transform:translateY(-2px)}

/* switch */
.nvef-switch{display:flex;align-items:center;gap:11px;cursor:pointer;margin-top:6px}
.nvef-switch input{position:absolute;opacity:0}
.nvef-switch-track{width:46px;height:26px;border-radius:99px;background:#c6d4da;position:relative;transition:background .25s ease}
.nvef-switch-track i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;
	transition:transform .28s cubic-bezier(.2,1.4,.4,1);box-shadow:0 1px 3px rgba(0,0,0,.3)}
.nvef-switch input:checked+.nvef-switch-track{background:#1E7A45}
.nvef-switch input:checked+.nvef-switch-track i{transform:translateX(20px)}
.nvef-switch input:focus-visible+.nvef-switch-track{box-shadow:0 0 0 3px rgba(11,94,140,.3)}
.nvef-switch-text{font-size:14px;font-weight:600}

.nvef-sticky{position:sticky;bottom:0;background:linear-gradient(transparent,#fff 30%);padding-top:16px;margin-top:6px}
.nvef-btn-lg{padding:14px 26px;font-size:15px}

/* ---------- live preview ---------- */
.nvef-live-sticky{position:sticky;top:24px}
.nvef-live-tag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
	color:#2f4a57;margin-bottom:8px}
.nvef-mini{border-radius:13px;overflow:hidden;border:1px solid rgba(6,34,47,.16);background:#F0E9DB;
	box-shadow:0 18px 40px -26px rgba(6,34,47,.7);--m-deep:#06334C;--m-acc:#34C6E8;--m-pop:#FF6B2C}
.nvef-mini[data-palette=sunset]{--m-deep:#3A1220;--m-acc:#FFB27A;--m-pop:#FF3D6E}
.nvef-mini[data-palette=midnight]{--m-deep:#080B1F;--m-acc:#6FF2C9;--m-pop:#B44BFF}
.nvef-mini[data-palette=paper]{--m-deep:#1F2421;--m-acc:#C9D6C4;--m-pop:#D9622B}
.nvef-mini-rail{background:var(--m-deep);color:var(--m-acc);font-size:9px;letter-spacing:.2em;
	text-transform:uppercase;padding:7px 12px;white-space:nowrap;overflow:hidden;font-weight:700}
.nvef-mini-hero{position:relative;background:linear-gradient(150deg,var(--m-deep),#12688f 140%);
	padding:26px 14px 30px;min-height:132px;display:flex;flex-direction:column;justify-content:flex-end}
.nvef-mini-badge{position:absolute;top:10px;right:10px;background:var(--m-pop);color:#fff;font-size:10px;
	font-weight:800;padding:4px 8px;border-radius:5px;transform:rotate(3deg)}
.nvef-mini-eyebrow{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--m-acc);
	font-weight:700;margin-bottom:5px;min-height:11px}
.nvef-mini-title{font-size:23px;line-height:1;font-weight:900;color:#fff;letter-spacing:-.02em;word-break:break-word;
	text-shadow:0 2px 10px rgba(0,0,0,.5);transition:opacity .2s ease}
.nvef-mini-sub{font-size:23px;line-height:1;font-weight:900;color:var(--m-pop);letter-spacing:-.02em;word-break:break-word}
.nvef-mini-wave{position:absolute;bottom:-1px;left:0;width:100%;height:22px;fill:var(--m-acc);opacity:.9}
.nvef-mini-body{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(6,34,47,.16)}
.nvef-mini-cell{background:#F0E9DB;padding:9px 11px}
.nvef-mini-cell b{display:block;font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:#2f4a57}
.nvef-mini-cell span{display:block;font-size:12.5px;font-weight:800;color:#102733;margin-top:2px;
	white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nvef-mini-blurb{margin:0;padding:11px 12px 14px;font-size:11.5px;line-height:1.45;color:#26414d;background:#F0E9DB}
.nvef-live-note{font-size:11.5px;color:#2f4a57;margin:9px 0 0}
.nvef-flash{animation:nvef-flash .5s ease}
@keyframes nvef-flash{0%{background-color:rgba(52,198,232,.35)}100%{background-color:transparent}}

/* notices */
.nvef-notice{display:flex;align-items:center;gap:10px;font-size:14px}
.nvef-notice-ico{flex:0 0 18px;width:18px;height:18px;border-radius:50%;position:relative}
.nvef-notice-ok .nvef-notice-ico{background:#1E7A45}
.nvef-notice-error .nvef-notice-ico{background:#b3261e}
.nvef-notice-warn{background:#fff6e5;border:1px solid #f0cd9a}
.nvef-notice-warn .nvef-notice-ico{background:#b1700a}
.nvef-notice-ico::after{content:"";position:absolute;left:6px;top:3px;width:4px;height:8px;
	border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.nvef-notice-error .nvef-notice-ico::after,.nvef-notice-warn .nvef-notice-ico::after{
	content:"!";border:0;left:0;right:0;top:0;text-align:center;font:800 12px/18px system-ui;color:#fff;transform:none}

@media (max-width:900px){
	.nvef-builder-grid{grid-template-columns:1fr}
	.nvef-live-sticky{position:static}
	.nvef-ticket-row{grid-template-columns:1fr 1fr;}
	.nvef-ticket-row .nvef-tf-wide{grid-column:1/-1}
	.nvef-payout{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
	.nvef-builder *,.nvef-mini *{animation:none!important;transition:none!important}
}
.nvef-panel-error{background:#fdecea;border-color:#f3b7b1;color:#7d1a14}
.nvef-panel-error p{margin:0;font-weight:600}

/* ============================================================
   Preset picker + flyer library
   ============================================================ */
.nvef-presets{display:flex;flex-direction:column;gap:18px;margin-bottom:22px}
.nvef-preset-group h4{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:.16em;
	text-transform:uppercase;color:#2f4a57}
.nvef-preset-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:10px}
.nvef-preset{position:relative;display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:9px;
	border:1px solid rgba(6,34,47,.18);border-radius:11px;background:#fff;
	transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.nvef-preset input{position:absolute;opacity:0;inset:0;cursor:pointer}
.nvef-preset:hover{transform:translateY(-3px);box-shadow:0 12px 24px -18px rgba(6,34,47,.8)}
.nvef-preset.is-on{border-color:#0B5E8C;box-shadow:0 0 0 3px rgba(11,94,140,.16)}
.nvef-preset-swatch{position:relative;display:block;height:56px;border-radius:7px;overflow:hidden}
.nvef-preset-swatch i{position:absolute;width:26px;height:26px;border-radius:50%;filter:blur(7px);opacity:.9}
.nvef-preset-swatch i:nth-child(1){top:8px;left:14px}
.nvef-preset-swatch i:nth-child(2){bottom:6px;right:16px}
.nvef-preset strong{font-size:12.5px;color:#102733;line-height:1.2}
.nvef-preset small{font-size:11px;color:#3a5865;line-height:1.35}
.nvef-preset.is-on strong{color:#0B5E8C}

.nvef-switch-anim{align-items:flex-start;margin-top:4px;padding:14px;border-radius:11px;
	background:#f3f7f9;border:1px solid rgba(6,34,47,.14)}
.nvef-switch-anim .nvef-switch-text{display:flex;flex-direction:column;gap:3px}
.nvef-switch-anim small{font-size:12.5px;font-weight:500;color:#2f4a57;line-height:1.45;max-width:56ch}

.nvef-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.nvef-lib-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(6,34,47,.16);
	border-radius:13px;overflow:hidden;animation:nvef-lib-in .5s cubic-bezier(.2,.8,.25,1) both;animation-delay:var(--d,0ms);
	transition:transform .2s ease,box-shadow .2s ease}
@keyframes nvef-lib-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.nvef-lib-card:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(6,34,47,.8)}
.nvef-lib-card.is-past{opacity:.72}
.nvef-lib-thumb{position:relative;display:block;height:110px;overflow:hidden}
.nvef-lib-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.75}
.nvef-lib-preset{position:absolute;left:9px;bottom:8px;font-style:normal;font-size:10px;font-weight:800;
	letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.5);
	padding:4px 8px;border-radius:99px;backdrop-filter:blur(4px)}
.nvef-lib-anim{position:absolute;right:9px;top:8px;font-style:normal;color:#7BE8C4;font-size:13px;
	text-shadow:0 0 8px rgba(123,232,196,.9);animation:nvef-anim-pulse 2s ease-in-out infinite}
@keyframes nvef-anim-pulse{0%,100%{opacity:.5}50%{opacity:1}}
.nvef-lib-body{flex:1;padding:14px}
.nvef-lib-body h3{margin:0 0 6px;font-size:15.5px;color:#102733;line-height:1.25}
.nvef-lib-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 6px;font-size:12px;color:#2f4a57}
.nvef-state{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
	padding:3px 8px;border-radius:99px}
.nvef-state-publish{background:#e4f6ec;color:#136b3d}
.nvef-state-draft,.nvef-state-pending{background:#eef1f3;color:#3a5865}
.nvef-lib-past{color:#8a5a12;font-weight:700}
.nvef-lib-stats{margin:0 0 10px;font-size:12.5px;color:#2f4a57}
.nvef-lib-stats strong{color:#102733}
.nvef-lib-link{display:flex;gap:6px}
.nvef-lib-link input{flex:1;min-width:0;font-size:11.5px;padding:7px 9px;border:1px solid rgba(6,34,47,.2);
	border-radius:6px;color:#2f4a57;background:#f8fafb}
.nvef-copy-link{background:#0B5E8C;color:#fff;border:0;border-radius:6px;padding:7px 12px;
	font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.nvef-copy-link.is-copied{background:#136b3d}
.nvef-lib-actions{display:flex;gap:6px;flex-wrap:wrap;padding:12px 14px;border-top:1px solid rgba(6,34,47,.12);
	background:#fbfcfd}
.nvef-lib-actions .nvef-btn{padding:7px 12px;font-size:12.5px}
.nvef-inline-form{display:inline}
.nvef-btn-danger{background:transparent;color:#a3231c;border:1px solid #e3a49e}
.nvef-btn-danger:hover{background:#a3231c;color:#fff}

@media (max-width:640px){
	.nvef-preset-row{grid-template-columns:1fr 1fr}
	.nvef-library{grid-template-columns:1fr}
}
.nvef-mini.is-still,.nvef-mini.is-still *{animation:none!important;transition:none!important}
.nvef-mini.is-still::after{content:"Still";position:absolute;top:6px;right:6px;font-size:9px;font-weight:800;
	letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.5);padding:3px 7px;border-radius:99px}
.nvef-mini{position:relative}

/* ---------- media uploads ---------- */
.nvef-uploads{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.nvef-upload{display:flex;flex-direction:column;gap:7px}
.nvef-upload-k{font-size:12px;font-weight:700;color:#2f4a57}
.nvef-upload-box{position:relative;display:flex;align-items:center;justify-content:center;
	min-height:118px;border:2px dashed rgba(6,34,47,.24);border-radius:11px;background:#f8fafb;
	overflow:hidden;transition:border-color .2s ease,background .2s ease}
.nvef-upload-box.has-file{border-style:solid;border-color:rgba(6,34,47,.18);background:#0e2b3a}
.nvef-upload-box.is-logo.has-file{background:
	linear-gradient(45deg,#dfe6ea 25%,transparent 25%) -8px 0/16px 16px,
	linear-gradient(-45deg,#dfe6ea 25%,transparent 25%) -8px 0/16px 16px,
	linear-gradient(45deg,transparent 75%,#dfe6ea 75%) 0 0/16px 16px,
	linear-gradient(-45deg,transparent 75%,#dfe6ea 75%) 0 0/16px 16px,#fff}
.nvef-upload-prev{max-width:100%;max-height:118px;display:block;object-fit:cover}
.nvef-upload-box.is-logo .nvef-upload-prev{object-fit:contain;padding:10px}
.nvef-upload-empty{display:flex;flex-direction:column;gap:3px;text-align:center;padding:12px}
.nvef-upload-empty strong{font-size:13px;color:#2f4a57}
.nvef-upload-empty small{font-size:11.5px;color:#3a5865;max-width:26ch}
.nvef-upload-btns{display:flex;align-items:center;gap:10px}
.nvef-upload-btns .nvef-btn{padding:8px 13px;font-size:12.5px}
.nvef-link-btn{background:none;border:0;padding:0;color:#a3231c;font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:underline}
.nvef-logo-size{display:flex;align-items:center;gap:9px;font-size:12px;color:#2f4a57;font-weight:600}
.nvef-logo-size input{flex:1}
.nvef-mini-logo{position:absolute;top:10px;left:11px;z-index:5;max-width:60px;max-height:34px;
	object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}
.nvef-mini-hero.has-photo{background-size:cover;background-position:center}
.nvef-mini-hero.has-photo::before{content:"";position:absolute;inset:0;
	background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.25) 60%,transparent)}
.nvef-mini-hero>*{position:relative;z-index:2}
@media (max-width:640px){.nvef-uploads{grid-template-columns:1fr}}

/* ---------- honest signals ---------- */
.nvef-signals{display:flex;gap:8px;flex-wrap:wrap;max-width:900px;margin:20px auto -8px;padding:0 4px}
.nvef-sig{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;
	padding:7px 13px;border-radius:99px;letter-spacing:.01em}
.nvef-sig::before{content:"";width:7px;height:7px;border-radius:50%}
.nvef-sig-going{background:#e8f2f7;color:#124b68}
.nvef-sig-going::before{background:#0B5E8C}
.nvef-sig-recent{background:#eef7f0;color:#155e34}
.nvef-sig-recent::before{background:#1E7A45;animation:nvef-pulse 2.2s ease-out infinite}
.nvef-sig-low{background:#fff1e8;color:#8d3208}
.nvef-sig-low::before{background:#D9622B}
.nvef-sig-fill{background:#fff8e6;color:#7a5310}
.nvef-sig-fill::before{background:#C99A18}
.nvef-sig-out{background:#f2f4f5;color:#3a5865}
.nvef-sig-out::before{background:#8b9aa2}

/* ---------- promo code ---------- */
.nvef-promo{display:flex;gap:8px;margin:14px 0 4px}
.nvef-promo input{flex:1;min-width:0;padding:11px;border:1px dashed rgba(6,34,47,.32);border-radius:6px;
	font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.nvef-promo input:read-only{background:#eef7f0;border-style:solid;border-color:#1E7A45;color:#155e34}
.nvef-code-apply{background:#fff;border:1px solid #0B5E8C;color:#0B5E8C;border-radius:6px;
	padding:11px 16px;font-weight:700;font-size:13.5px;cursor:pointer}
.nvef-code-apply:hover{background:#0B5E8C;color:#fff}
.nvef-code-msg{margin:6px 0 0;font-size:13px}
.nvef-code-msg.is-ok{color:#155e34;font-weight:600}
.nvef-code-msg.is-error{color:#b3261e}
.nvef-total-value s{color:#5c7480;font-weight:500;margin-right:6px}

/* ---------- waitlist ---------- */
.nvef-waitlist{margin-top:20px;padding:18px;border-radius:10px;background:#f4f7f9;border:1px solid rgba(6,34,47,.16)}
.nvef-waitlist h3{margin:0 0 4px;font-size:16px;color:#102733}
.nvef-waitlist p{margin:0 0 12px;font-size:13.5px;color:#2f4a57}
.nvef-waitlist form{display:flex;gap:8px;flex-wrap:wrap}
.nvef-waitlist input{flex:1;min-width:140px;padding:11px;border:1px solid rgba(6,34,47,.24);border-radius:6px;font-size:14px}

/* ---------- calendar ---------- */
.nvef-cal{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;
	padding-top:14px;border-top:1px solid rgba(6,34,47,.12);font-size:13px;color:#2f4a57}
.nvef-cal span{font-weight:700}
.nvef-cal a{color:#0B5E8C;font-weight:600;text-decoration:none;padding:6px 12px;
	border:1px solid rgba(11,94,140,.35);border-radius:99px}
.nvef-cal a:hover{background:#0B5E8C;color:#fff}
.nvef-sub{margin:22px 0 4px;font-size:13.5px;font-weight:800;color:#102733}
.nvef-code-row{display:grid;grid-template-columns:1.6fr .9fr .8fr .8fr .7fr 34px;gap:8px;align-items:end;
	padding:11px;border:1px solid rgba(6,34,47,.18);border-radius:10px;margin-bottom:9px;background:#fbfdfd;
	animation:nvef-row-in .4s cubic-bezier(.2,.8,.25,1) both}
.nvef-code-row select,.nvef-code-row input{padding:9px;border:1px solid rgba(6,34,47,.2);border-radius:7px;width:100%;font-size:14px}
.nvef-code-row.is-going{animation:nvef-row-out .3s ease forwards}
@media (max-width:700px){.nvef-code-row{grid-template-columns:1fr 1fr}}
