@keyframes ons-ready-bounce{0%,100%{transform:translateY(0) scale(1)}15%{transform:translateY(-2px) scale(1.01)}30%{transform:translateY(0) scale(1)}45%{transform:translateY(-1px) scale(1.006)}60%,95%{transform:translateY(0) scale(1)}}
:root{color-scheme:light;--primary:#31235e;--secondary:#0b8ed6;--bg:#f3f6fb;--surface:#fff;--text:#252236;--muted:#707482;--line:rgba(49,35,94,.09);--shadow:0 22px 70px rgba(42,31,82,.10);--soft-shadow:0 10px 30px rgba(42,31,82,.08);--radius:26px;--safe-bottom:max(18px,env(safe-area-inset-bottom))}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:radial-gradient(circle at 12% -10%,rgba(11,142,214,.11),transparent 30%),radial-gradient(circle at 90% 0,rgba(49,35,94,.11),transparent 30%),var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;line-height:1.6}
body.workspace-body{background:#eef2f8}
a{color:inherit;text-decoration:none}
img{max-width:100%}
button,input,select,textarea{font:inherit}
button,.primary-btn{border:0;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-radius:16px;padding:14px 20px;font-weight:850;font-size:14px;cursor:pointer;box-shadow:0 12px 28px rgba(49,35,94,.18);transition:.18s ease}
button:hover,.primary-btn:hover{transform:translateY(-1px);filter:saturate(1.06)}
button:active,.primary-btn:active{transform:translateY(0)}
button:disabled,input:disabled{opacity:.5;cursor:not-allowed}
.primary-btn,.secondary-btn,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center}
.secondary-btn,.ghost-button{border:1px solid rgba(49,35,94,.15);background:#fff;color:var(--primary);border-radius:16px;padding:13px 18px;font-weight:850;box-shadow:none}
.ghost-button{background:rgba(255,255,255,.7)}
.compact{padding:10px 14px!important;font-size:12px!important;border-radius:13px!important}
.app-shell{width:min(100%,820px);min-height:100vh;margin:auto;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,254,.97));box-shadow:0 0 100px rgba(49,35,94,.07);overflow:clip}
.workspace-shell{width:min(100%,1420px);background:#f7f9fc}
main{padding:0 18px 34px}
.workspace-main{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
.topbar{height:78px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;position:sticky;top:0;background:rgba(255,255,255,.88);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);z-index:50;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px;min-width:0}
.brand img{width:50px;height:50px;object-fit:contain;background:#fff;border-radius:16px;border:1px solid var(--line);padding:3px;box-shadow:0 6px 18px rgba(49,35,94,.08)}
.brand span{display:flex;flex-direction:column;min-width:0}
.brand b{color:var(--primary);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand small{color:var(--muted);font-size:10px;letter-spacing:.4px}
.top-actions{display:flex;align-items:center;gap:7px}
.icon-btn{font-size:11px;padding:9px 11px;border-radius:13px;background:#f2eff8;color:var(--primary);font-weight:850;white-space:nowrap}
.card,.form-card,.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--soft-shadow)}
footer{text-align:center;padding:28px 18px calc(25px + env(safe-area-inset-bottom));color:var(--muted);font-size:10px}
footer a{color:var(--primary);font-weight:750}

/* Public landing and galleries */
.hero{padding:52px 4px 24px;text-align:center;overflow:hidden}
.eyebrow,.form-eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:#f0ecf8;color:var(--primary);font-size:10px;font-weight:900;letter-spacing:1px}
.hero h1{font-size:clamp(40px,10vw,72px);line-height:1.04;margin:18px 0 12px;letter-spacing:-2px}
.hero h1 span{background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;color:transparent}
.hero p{max-width:560px;margin:auto;color:var(--muted);font-size:16px;line-height:1.9}
.hero-orb{width:300px;height:300px;margin:22px auto;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0,#dff4ff 25%,#b7a5df 60%,var(--primary) 100%);box-shadow:0 35px 80px rgba(49,35,94,.22);position:relative}
.hero-orb:after,.hero-orb:before{content:"";position:absolute;border-radius:24px;background:white;box-shadow:0 14px 35px rgba(32,25,58,.18)}
.hero-orb:before{width:72px;height:92px;right:-4px;top:42px;transform:rotate(10deg)}
.hero-orb:after{width:62px;height:76px;left:8px;bottom:38px;transform:rotate(-12deg)}
.phone{width:154px;height:265px;background:#111;border:7px solid #15131a;border-radius:34px;padding:13px 9px;transform:rotate(-5deg);box-shadow:0 25px 50px rgba(0,0,0,.35);z-index:2}
.phone-head{color:white;font-weight:800;font-size:13px;padding:12px 0}
.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.mini-grid i{height:82px;border-radius:10px;background:linear-gradient(145deg,#dbd4eb,#8069af)}
.mini-grid i:nth-child(2){background:linear-gradient(145deg,#bfe9fa,#278ac0)}
.mini-grid i:nth-child(3){background:linear-gradient(145deg,#f1d7e8,#8e619a)}
.join-card{padding:24px;margin:22px 0}
.join-card h2{margin:0 0 4px}.join-card p{color:var(--muted);margin:4px 0 16px}
.join-card form{display:flex;gap:9px}
.join-card input{flex:1}
.portal-entry{text-align:center;color:var(--muted);font-size:12px}.portal-entry a{color:var(--secondary);font-weight:900}
.event-cover{margin:18px 0;padding:24px;border-radius:30px;background:linear-gradient(135deg,var(--primary),#513b88 58%,var(--secondary));color:white;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 22px 55px rgba(49,35,94,.24)}
.event-cover h1{font-size:clamp(25px,7vw,38px);margin:12px 0 5px;line-height:1.2}.event-cover p{margin:0;opacity:.8;font-size:11px}
.live-pill{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.16);padding:7px 10px;border-radius:99px;font-size:11px}.live-pill i{width:8px;height:8px;border-radius:50%;background:#6effb0;box-shadow:0 0 0 5px rgba(110,255,176,.15)}
.qr-small{padding:6px;background:white;border-radius:17px;box-shadow:none;flex:0 0 auto}.qr-small img{width:78px;display:block}
.event-choices{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0 0 20px}.event-choices.single{grid-template-columns:1fr}
.event-choice{display:flex;align-items:center;gap:12px;padding:17px;border-radius:23px;border:1px solid var(--line);background:#fff;box-shadow:var(--soft-shadow);min-height:96px}.event-choice span:not(.choice-icon){display:flex;flex-direction:column;gap:3px;flex:1}.event-choice b{font-size:15px;color:var(--primary)}.event-choice small{font-size:10px;line-height:1.6;color:var(--muted)}.event-choice strong{font-size:20px;color:var(--secondary)}
.choice-icon,.face-icon,.face-badge{display:grid;place-items:center;flex:0 0 auto;width:49px;height:49px;border-radius:17px;background:#f1eef8;color:var(--primary);font-size:25px}
.face-choice{background:linear-gradient(135deg,var(--primary),#51418a);color:#fff}.face-choice b,.face-choice small,.face-choice strong{color:#fff}.face-choice small{opacity:.82}.face-choice .choice-icon{background:rgba(255,255,255,.16);color:#fff}
.disabled-choice{opacity:.92;cursor:default}.disabled-choice>a{font-size:11px;text-decoration:underline;white-space:nowrap}
.gallery{columns:2;column-gap:8px}.photo{display:block;padding:0;margin:0 0 8px;width:100%;background:none!important;box-shadow:none!important;border-radius:18px;overflow:hidden;break-inside:avoid}.photo img{display:block;width:100%;border-radius:18px;background:#e9edf4}
.empty-grid{column-span:all;text-align:center;padding:68px 20px;color:var(--muted)}
.spinner{width:50px;height:50px;border-radius:50%;border:4px solid #e9e4f2;border-top-color:var(--secondary);animation:spin 1s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}
dialog{border:0;border-radius:28px;max-width:min(92vw,570px);padding:20px;text-align:center;box-shadow:0 40px 100px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(15,11,28,.78);backdrop-filter:blur(8px)}dialog>button{position:absolute;left:12px;top:12px;width:38px;height:38px;padding:0;border-radius:50%}dialog img{max-width:100%;max-height:72vh;border-radius:20px}dialog p{word-break:break-all;color:var(--muted)}#viewer .primary-btn{display:flex;margin-top:12px}

/* Forms and authentication */
.auth-card,.form-card{max-width:650px;margin:42px auto;padding:28px}.wide-form{max-width:940px}
.auth-card{text-align:center}.auth-card>p,.provider-auth>p{color:var(--muted);line-height:1.8}
.auth-card form,.form-card form{display:grid;gap:15px;text-align:right}
.webapp-login{margin-top:70px}.webapp-login img{width:150px;max-height:100px;object-fit:contain}
label{font-size:12px;font-weight:800;display:grid;gap:7px;color:#3b3850}label small{color:var(--muted);font-weight:500}
input,select,textarea{width:100%;border:1px solid #dce2ec;background:#fbfcfe;padding:13px 14px;border-radius:14px;outline:none;color:var(--text);transition:.18s ease}
textarea{resize:vertical;min-height:92px}
input:focus,select:focus,textarea:focus{border-color:var(--secondary);box-shadow:0 0 0 4px rgba(11,142,214,.1);background:#fff}
.form-grid{display:grid;gap:13px}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid .full{grid-column:1/-1}
.toggle{display:flex;align-items:flex-start;gap:10px;background:#f7f7fb;padding:13px;border-radius:15px;border:1px solid rgba(49,35,94,.05)}.toggle input{width:auto;margin-top:3px}.toggle span{line-height:1.6}
.feature-group{display:grid;gap:10px;border:1px solid var(--line);background:#fcfbfe;border-radius:20px;padding:14px}
.color-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.auth-switch{text-align:center!important;font-size:12px}.auth-switch a{color:var(--secondary);font-weight:850}
.account-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
.provider-notice,.price-banner,.success-card,.payment-summary{margin:14px 0;padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:#f7f5fb}.provider-notice b,.price-banner b,.success-card b,.payment-summary b{color:var(--primary)}.provider-notice p,.price-banner span,.success-card p{display:block;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.8}.price-banner{display:grid;gap:4px}.price-banner small{color:var(--secondary);font-weight:900}.price-banner b{font-size:28px}.success-card{background:#effaf5;border-color:#bce8d2}.success-card b{color:#087a55}

/* App navigation and page headers */
.app-nav{position:fixed;z-index:80;right:50%;transform:translateX(50%);bottom:0;width:min(100%,820px);display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));align-items:end;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(22px);border-top:1px solid var(--line);box-shadow:0 -14px 40px rgba(49,35,94,.09)}
.app-nav a{min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#757688;border-radius:15px;font-size:10px;font-weight:800}.app-nav a:hover{background:#f2eff8;color:var(--primary)}.app-nav span{font-size:21px;line-height:1}.app-nav b{font-size:9px}.nav-main-action{background:linear-gradient(135deg,var(--primary),var(--secondary))!important;color:#fff!important;transform:translateY(-10px);box-shadow:0 12px 26px rgba(49,35,94,.23)}
.app-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:30px 3px 18px}.app-page-head>div{min-width:0}.app-page-head>a:first-child,.event-detail-head>div>a:first-child{color:var(--secondary);font-size:11px;font-weight:850}.app-page-head small{display:block;color:var(--secondary);font-weight:900;font-size:10px;letter-spacing:.4px}.app-page-head h1{font-size:clamp(25px,5vw,38px);margin:4px 0;line-height:1.25}.app-page-head p{margin:0;color:var(--muted);font-size:12px;max-width:680px}.head-actions{display:flex;gap:8px;flex-wrap:wrap}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.stats.four{grid-template-columns:repeat(4,1fr)}.stats div{background:#fff;padding:17px 10px;border-radius:20px;text-align:center;border:1px solid var(--line);box-shadow:0 7px 20px rgba(49,35,94,.04)}.stats b{display:block;font-size:24px;color:var(--primary);line-height:1.2}.stats span{font-size:10px;color:var(--muted)}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:27px 3px 11px}.section-title h2{margin:0;font-size:19px}.section-title a{color:var(--secondary);font-size:11px;font-weight:850}
.admin-list,.compact-request-list,.notification-list{display:grid;gap:10px}
.event-admin-card,.compact-request-card,.notification-card{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;padding:16px;border-radius:20px;border:1px solid var(--line);box-shadow:0 7px 22px rgba(49,35,94,.04);transition:.18s ease}.event-admin-card:hover,.compact-request-card:hover{transform:translateY(-1px);box-shadow:var(--soft-shadow)}.event-admin-card h3,.compact-request-card h3{margin:6px 0 2px;font-size:15px}.event-admin-card p,.compact-request-card p,.notification-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.event-admin-card>div,.compact-request-card>div{min-width:0;flex:1}
.app-event-card time{width:54px;height:58px;border-radius:17px;background:#f2eff8;color:var(--primary);display:grid;place-items:center;align-content:center;flex:0 0 auto}.app-event-card time b{font-size:22px;line-height:1}.app-event-card time small{font-size:9px}.app-event-card strong{color:var(--secondary)}
.status{display:inline-flex;font-size:9px;padding:4px 8px;border-radius:99px;background:#e8f8ef;color:#087a55;font-weight:850}.status.expired{background:#f1f2f4;color:#777}.status.request-pending{background:#fff4d9;color:#946200}.status.request-approved{background:#e8f8ef;color:#087a55}.status.request-rejected{background:#fdecea;color:#b42318}
.admin-shortcuts,.app-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0}.admin-shortcuts a{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--line);border-radius:19px;padding:16px;box-shadow:0 7px 20px rgba(49,35,94,.04)}.admin-shortcuts span{font-weight:900;color:var(--primary);font-size:13px}.admin-shortcuts b{font-size:10px;color:var(--secondary)}
.system-health-grid,.compliance-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:13px 0}.service-status{display:flex;align-items:center;gap:11px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:18px}.service-status div{display:flex;flex-direction:column;min-width:0}.service-status b{font-size:12px}.service-status small{color:var(--muted);font-size:9px;overflow:hidden;text-overflow:ellipsis}.dot{width:10px;height:10px;border-radius:50%;background:#a5a7ad;flex:0 0 auto}.dot.ok{background:#19a974;box-shadow:0 0 0 5px rgba(25,169,116,.12)}.dot.off{background:#d59b28;box-shadow:0 0 0 5px rgba(213,155,40,.12)}

/* Professional calendars */
.calendar-filter{display:flex;justify-content:flex-end;margin-bottom:10px}.calendar-filter label{width:min(100%,320px)}
.calendar-layout{display:grid;grid-template-columns:minmax(470px,1.1fr) minmax(320px,.9fr);gap:14px;align-items:start}
.calendar-card,.calendar-agenda{padding:18px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.calendar-toolbar>a{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#f2eff8;color:var(--primary);font-size:25px;font-weight:800}.calendar-toolbar div{text-align:center}.calendar-toolbar small{color:var(--secondary);font-size:9px;font-weight:900}.calendar-toolbar h2{margin:0;font-size:20px}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{text-align:center;color:var(--muted);font-size:9px;font-weight:800;padding:5px}
button.calendar-day,.calendar-day{min-height:74px;padding:7px;border-radius:14px;background:#f9fafc!important;color:var(--text)!important;border:1px solid #edf0f5!important;box-shadow:none!important;text-align:right;display:flex;flex-direction:column;justify-content:space-between}.calendar-day:hover{border-color:rgba(11,142,214,.35)!important;background:#f3f9fd!important}.calendar-day b{font-size:12px}.calendar-day>span{display:flex;gap:3px;flex-wrap:wrap}.calendar-day i{width:6px;height:6px;background:var(--secondary);border-radius:50%}.calendar-day small{font-size:8px;color:var(--secondary)}.calendar-day.has-events{background:linear-gradient(145deg,#f3effb,#eef9fd)!important;border-color:rgba(49,35,94,.12)!important}.calendar-day.muted-day{opacity:.35}.calendar-day.is-selected{outline:3px solid rgba(11,142,214,.14);border-color:var(--secondary)!important}
.agenda-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.agenda-head h3{margin:0;font-size:17px}.agenda-head small{color:var(--muted);font-size:9px}
.calendar-event{display:flex;align-items:center;gap:11px;padding:12px;border-radius:16px;background:#fafbfe;border:1px solid #edf0f5;margin-bottom:7px}.calendar-event time{width:66px;color:var(--primary);font-size:11px;font-weight:900;flex:0 0 auto}.calendar-event>div{display:flex;flex-direction:column;min-width:0;flex:1}.calendar-event b{font-size:12px}.calendar-event span{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event strong{color:var(--secondary)}.company-chip{display:inline-flex!important;width:max-content;margin-top:3px;padding:3px 6px;background:#f0ecf8;border-radius:99px;color:var(--primary)!important;font-weight:800}
.filter-row{display:flex;gap:8px;overflow:auto;padding:2px 0 10px}.filter-chip{white-space:nowrap;padding:8px 12px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:10px;font-weight:800}.filter-chip.active{background:var(--primary);color:#fff}
.next-event-hero{display:flex;justify-content:space-between;gap:18px;padding:22px;margin:8px 0 15px;background:linear-gradient(135deg,var(--primary),#51418a 58%,var(--secondary));color:#fff;border-radius:26px;box-shadow:0 20px 48px rgba(49,35,94,.22)}.next-event-hero small{opacity:.72}.next-event-hero h2{margin:5px 0}.next-event-hero p{margin:0;opacity:.82;font-size:11px}.next-event-hero a{align-self:center;background:#fff;color:var(--primary);padding:11px 14px;border-radius:14px;font-weight:850;font-size:11px}

/* Event workspace, QR and camera setup */
.event-info-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:12px 0}.event-info-strip>div,.event-info-strip>a{background:#fff;border:1px solid var(--line);border-radius:17px;padding:13px;min-width:0}.event-info-strip small{display:block;color:var(--muted);font-size:9px}.event-info-strip b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-info-strip>a{display:grid;place-items:center;color:var(--secondary);font-size:10px;font-weight:850}
.provider-event-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}.provider-event-summary>div{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px}.provider-event-summary small{color:var(--secondary);font-weight:900;font-size:9px}.provider-event-summary b{color:var(--primary);font-size:17px}.provider-event-summary span{font-size:10px;color:var(--muted)}
.event-setup-pro{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(390px,1.14fr);gap:14px;margin:14px 0}.setup-panel{background:#fff;border:1px solid var(--line);border-radius:30px;padding:22px;box-shadow:var(--shadow);position:relative;overflow:hidden}.setup-panel:before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(11,142,214,.07);top:-70px;left:-60px}.panel-kicker{display:flex;align-items:center;gap:9px;position:relative}.panel-kicker span{width:31px;height:31px;border-radius:11px;display:grid;place-items:center;background:#f0ecf8;color:var(--primary);font-size:10px;font-weight:900}.panel-kicker b{font-size:12px;color:var(--primary)}
.qr-panel{text-align:center}.qr-frame{width:min(72%,250px);margin:18px auto 10px;background:#fff;padding:12px;border:1px solid #e8e9ef;border-radius:25px;box-shadow:0 15px 35px rgba(49,35,94,.12);position:relative}.qr-frame:after{content:"ONS";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);background:#fff;padding:4px 6px;border-radius:7px;color:var(--primary);font-size:9px;font-weight:900}.qr-panel h2{margin:10px 0 2px}.qr-panel p{margin:0 auto 9px;max-width:350px;color:var(--muted);font-size:10px;line-height:1.7}.qr-panel code{display:block;padding:9px;background:#f7f8fb;border-radius:12px;font-size:9px;word-break:break-all;color:var(--primary)}.panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.panel-actions button{padding:11px;font-size:10px;box-shadow:none}
.ftp-panel{background:linear-gradient(155deg,#fff,#fbfcff)}.ftp-status{display:flex;align-items:center;gap:8px;margin:16px 0 10px;padding:10px 12px;border-radius:14px;background:#effaf5;color:#087a55;font-size:10px;font-weight:800}.ftp-status i{width:9px;height:9px;border-radius:50%;background:#19a974;box-shadow:0 0 0 5px rgba(25,169,116,.12)}
.credential-list{border:1px solid #e9edf3;border-radius:20px;overflow:hidden}.credential-list>div{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border-bottom:1px solid #edf0f5}.credential-list>div:last-child{border-bottom:0}.credential-list small{color:var(--muted);font-size:9px}.credential-list code{font-size:11px;font-weight:850;color:#2f2d3d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credential-list button{padding:6px 9px;border-radius:9px;background:#f1eef8;color:var(--primary);font-size:8px;box-shadow:none}.credential-buttons{display:flex;gap:4px}.setup-steps{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:start;margin-top:14px;padding:12px;border-radius:16px;background:#f7f8fb}.setup-steps b{font-size:10px;color:var(--primary)}.setup-steps ol{margin:0;padding-right:18px;color:var(--muted);font-size:9px}.security-note{margin:11px 0 0;padding:10px 12px;border-radius:14px;background:#fff7e5;color:#785500;font-size:9px;line-height:1.7;border:1px solid #f2ddab}
.prereg-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;margin-top:12px}.prereg-card small{color:var(--secondary);font-weight:900;font-size:9px}.prereg-card h3{margin:5px 0}.prereg-card p{color:var(--muted);font-size:10px}.prereg-card code{display:block;color:var(--secondary);font-size:9px;word-break:break-all}.prereg-card img{width:124px;border-radius:16px;background:#fff;padding:7px}.prereg-card button{margin-top:8px;padding:9px 12px;font-size:9px}
.uploader,.event-settings,.provider-edit,.request-overview,.approval-card,.rejection-card,.settings-card,.env-settings,.compliance-checklist{padding:21px;margin-top:12px}.modern-uploader{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:center}.modern-uploader small,.card-heading small{color:var(--secondary);font-size:9px;font-weight:900}.modern-uploader h3,.card-heading h3{margin:4px 0}.modern-uploader p{margin:0;color:var(--muted);font-size:10px}.modern-uploader form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center}.upload-drop{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px dashed rgba(49,35,94,.25);border-radius:16px;padding:12px;background:#f9f8fc;cursor:pointer}.upload-drop input{display:none}.upload-drop span{color:var(--primary);font-weight:850}.upload-drop small{color:var(--muted)}
.event-settings form{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.event-settings form button{grid-column:1/-1}
.warning-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:15px;border-radius:18px;background:#fff8e8;border:1px solid #f2d48e}.warning-card span{font-size:10px;color:#805a00}.warning-card button{padding:9px 12px;font-size:10px}

/* Requests, settings, notifications */
.payment-summary{display:flex;align-items:center;gap:12px}.payment-summary b{font-size:21px}.payment-summary small{margin-inline-start:auto;color:#087a55;font-weight:800}
.request-overview dl{display:grid;grid-template-columns:130px 1fr;margin:14px 0}.request-overview dt,.request-overview dd{padding:10px;border-bottom:1px solid #edf0f5;margin:0}.request-overview dt{color:var(--muted);font-size:10px}.request-overview dd{font-weight:800;font-size:11px}
.approval-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;margin-top:14px}.approval-card,.rejection-card{display:grid;gap:12px}.approval-card form,.rejection-card form,.provider-edit form{display:grid;gap:12px}.rejection-card{border-color:#f4d2ce}
.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.legal-acceptance{padding:14px;border-radius:16px;background:#f7f5fb;color:var(--muted);font-size:10px}.legal-acceptance a{color:var(--secondary);font-weight:850}
.settings-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:13px}.logo-preview{min-height:190px;display:grid;place-items:center;background:linear-gradient(145deg,#f7f8fb,#eef2f8);border-radius:22px;margin:12px 0;padding:20px}.logo-preview img{max-width:220px;max-height:150px;object-fit:contain}.env-settings p{color:var(--muted);font-size:11px}.env-settings a{color:var(--secondary);font-weight:850}
.notification-card{justify-content:flex-start}.notification-card>div{display:flex;flex-direction:column;min-width:0}.notification-card small{font-size:9px;color:var(--muted)}

/* Compliance and legal */
.compliance-alert{margin:12px 0;padding:16px 18px;border-radius:19px;background:#fff7e5;border:1px solid #f0d38e;color:#6f5000}.compliance-alert b{font-size:12px}.compliance-alert p{margin:5px 0;color:#806520;font-size:10px;line-height:1.8}.compliance-alert a{color:var(--primary);font-weight:900;font-size:10px}.success-alert{background:#effaf5;border-color:#bce8d2;color:#087a55}.success-alert p{color:#286b53}
.compliance-status-grid .card{padding:18px}.compliance-status-grid small{color:var(--secondary);font-size:9px;font-weight:900}.compliance-status-grid h2{margin:5px 0;font-size:18px}.compliance-status-grid p{margin:0;color:var(--muted);font-size:9px}.compliance-checklist ol{color:var(--muted);font-size:11px;line-height:2}.legal-links,.legal-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.legal-links a{color:var(--secondary);font-weight:850;font-size:10px}
.legal-page{max-width:800px;margin:28px auto}.legal-hero{padding:30px;border-radius:30px;background:linear-gradient(135deg,var(--primary),#51418a 58%,var(--secondary));color:#fff;box-shadow:0 22px 55px rgba(49,35,94,.22)}.legal-hero small{opacity:.7}.legal-hero h1{margin:6px 0;font-size:clamp(28px,6vw,45px)}.legal-hero p{margin:0;opacity:.82}.face-legal{background:linear-gradient(135deg,#27203f,#513b88 55%,#0b8ed6)}.legal-card{margin-top:13px;padding:27px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--soft-shadow)}.legal-card h2{font-size:17px;margin:24px 0 5px;color:var(--primary)}.legal-card h2:first-of-type{margin-top:0}.legal-card p{color:#606275;font-size:12px;line-height:1.95}.legal-card a:not(.primary-btn):not(.secondary-btn){color:var(--secondary);font-weight:850}

/* Face profile and account */
.account-head,.my-photos-head{text-align:center;padding:32px 10px 22px}.account-head .face-badge,.my-photos-head .face-badge{margin:auto;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 11px 25px rgba(49,35,94,.20)}.account-head h1,.my-photos-head h1{margin:12px 0 4px;font-size:32px}.account-head p,.my-photos-head p{margin:0;color:var(--muted)}.my-photos-head>a{display:inline-block;color:var(--secondary);font-size:11px;font-weight:850;margin-bottom:18px}.my-photos-head small{display:inline-block;margin-top:8px;padding:5px 9px;border-radius:99px;background:#edf7fc;color:#0877ad;font-size:9px}
.face-profile-card{margin:8px 0 24px;padding:21px;display:flex;align-items:center;justify-content:space-between;gap:18px}.face-profile-card small{color:var(--secondary);font-weight:900;font-size:9px}.face-profile-card h2{margin:5px 0}.face-profile-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.7}
.selfie-card{margin-top:28px}.selfie-hero{text-align:center;margin:14px 0 25px}.selfie-hero>span{display:grid;place-items:center;width:74px;height:74px;border-radius:26px;margin:0 auto 14px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:39px;box-shadow:0 18px 36px rgba(49,35,94,.24)}.selfie-hero h1{margin:0 0 8px}.selfie-hero p{margin:0;color:var(--muted);line-height:1.8;font-size:11px}.privacy-box{padding:15px;border-radius:16px;background:#f4f1fa;border:1px solid var(--line)}.privacy-box b{color:var(--primary)}.privacy-box p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.8}.consent{align-items:flex-start}.privacy-actions{margin:24px 0}.privacy-actions details{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}.privacy-actions summary{cursor:pointer;font-weight:850}.privacy-actions p{color:var(--muted);font-size:10px;line-height:1.8}

/* Dangerous actions and common empty states */
.danger-zone{margin:28px 0;padding:20px;background:#fff;border:1px solid #f3d1cd;border-radius:24px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px}.danger-zone h3{margin:0}.danger-zone p{margin:4px 0 0;color:var(--muted);font-size:10px}.danger-zone form{display:grid;gap:7px}.danger-button{background:#fff!important;color:#b42318!important;border:1px solid #efc0bc!important;box-shadow:none!important}.solid-danger{background:#b42318!important;color:#fff!important}.text-link{background:none!important;color:#a23!important;box-shadow:none!important;padding:9px!important}.logout-form{text-align:center;margin-top:18px}.empty{text-align:center;padding:72px 20px}.empty h1{color:var(--primary)}.empty p{color:var(--muted)}.empty-mini{padding:22px;text-align:center;color:var(--muted)}

@media(max-width:900px){
  .calendar-layout,.event-setup-pro,.settings-grid{grid-template-columns:1fr}
  .calendar-card{order:1}.calendar-agenda{order:2}
  .event-info-strip{grid-template-columns:repeat(3,1fr)}
  .modern-uploader{grid-template-columns:1fr}
  .system-health-grid,.compliance-status-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  main{padding-inline:14px}.topbar{padding-inline:14px;height:72px}.brand img{width:45px;height:45px}.top-actions .icon-btn:first-child{display:none}
  .hero{padding-top:38px}.hero-orb{width:270px;height:270px}.join-card form{display:grid}
  .event-choices,.form-grid.two,.account-choice,.provider-event-summary,.approval-grid{grid-template-columns:1fr}
  .stats.four{grid-template-columns:1fr 1fr}.stats{grid-template-columns:repeat(3,1fr)}.stats b{font-size:21px}.stats span{font-size:8px}
  .app-page-head{align-items:flex-start;flex-direction:column;padding-top:23px}.app-page-head .primary-btn{width:100%}.head-actions{width:100%}.head-actions a{flex:1}
  .admin-shortcuts,.app-shortcuts{grid-template-columns:1fr 1fr}
  .system-health-grid,.compliance-status-grid{grid-template-columns:1fr}
  .event-info-strip{grid-template-columns:1fr 1fr}.event-info-strip>a{grid-column:1/-1}
  .event-settings form{grid-template-columns:1fr}
  .modern-uploader form{grid-template-columns:1fr}
  .prereg-card{align-items:flex-start}.prereg-card img{width:95px}
  .danger-zone{grid-template-columns:1fr}.danger-zone button{width:100%}
  .calendar-card,.calendar-agenda{padding:13px}.calendar-day{min-height:58px!important;padding:5px!important;border-radius:10px!important}.calendar-day b{font-size:10px}.calendar-event time{width:58px;font-size:9px}
  .credential-list>div{grid-template-columns:72px minmax(0,1fr) auto;padding:10px}.credential-list code{font-size:9px}.setup-panel{padding:18px}.setup-steps{grid-template-columns:1fr}
  .event-admin-card,.compact-request-card{padding:14px}.app-event-card time{width:49px;height:54px}
  .legal-hero,.legal-card{padding:22px}.legal-actions>a{width:100%}
  .gallery{columns:2}.face-profile-card{align-items:flex-start;flex-direction:column}
}
@media(min-width:1000px){
  .workspace-shell{padding-right:112px}
  .workspace-main{padding:0 28px 45px}
  .app-nav{right:24px;transform:none;top:104px;bottom:auto;width:84px;display:flex;flex-direction:column;gap:7px;padding:9px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow)}
  .app-nav a{width:100%;min-height:62px}.app-nav b{font-size:9px}.nav-main-action{transform:none}
  .workspace-shell footer{padding-right:20px}
}
@media(min-width:760px){.gallery{columns:3}}
@media print{body *{visibility:hidden!important}.qr-panel,.qr-panel *{visibility:visible!important}.qr-panel{position:absolute!important;inset:0!important;width:100%!important;min-height:100vh!important;border:0!important;box-shadow:none!important}.qr-panel .panel-actions,.qr-panel .panel-kicker{display:none!important}.qr-frame{width:360px!important;max-width:75vw!important}}
.calendar-day.selected{outline:3px solid rgba(11,142,214,.14);border-color:var(--secondary)!important}

.events-filter{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(130px,.8fr)) auto;gap:9px;align-items:end;padding:14px;margin-bottom:12px}.events-filter button{height:47px}@media(max-width:900px){.events-filter{grid-template-columns:1fr 1fr}}@media(max-width:650px){.events-filter{grid-template-columns:1fr}.events-filter button{width:100%}}

/* =====================================================================
   ONS Moments v1.5 — Premium UI refresh
   Inspired by the lighter, elegant v1.2/v1.3 visual language while keeping
   the operational features introduced in v1.4.
   ===================================================================== */
:root{
  --primary:#2e2671;
  --secondary:#078ed1;
  --accent:#7258e8;
  --accent-soft:#ece9ff;
  --success:#128a63;
  --warning:#a16a00;
  --danger:#b42318;
  --bg:#f4f6fb;
  --surface:#ffffff;
  --surface-soft:#f8f9fd;
  --text:#25223a;
  --muted:#747789;
  --line:rgba(46,38,113,.09);
  --line-strong:rgba(46,38,113,.15);
  --shadow:0 24px 70px rgba(35,29,88,.12);
  --soft-shadow:0 12px 34px rgba(35,29,88,.075);
  --small-shadow:0 8px 22px rgba(35,29,88,.06);
  --radius:24px;
  --radius-sm:16px;
  --sidebar-width:236px;
}

html,body{min-height:100%}
body{
  background:
    radial-gradient(circle at 10% 0,rgba(7,142,209,.12),transparent 28%),
    radial-gradient(circle at 96% 10%,rgba(114,88,232,.10),transparent 30%),
    linear-gradient(180deg,#f8f9fd 0,#f3f5fa 100%);
  letter-spacing:0;
}
body.workspace-body{background:linear-gradient(145deg,#f4f6fb 0,#eef2f8 100%)}
body:not(.ui-ready){visibility:visible}

button,.primary-btn{
  min-height:46px;
  border-radius:15px;
  padding:12px 18px;
  background:linear-gradient(135deg,var(--primary) 0,var(--accent) 52%,var(--secondary) 100%);
  box-shadow:0 13px 28px rgba(66,52,156,.20);
  font-weight:800;
  letter-spacing:.05px;
}
button:hover,.primary-btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(66,52,156,.24)}
.secondary-btn,.ghost-button{
  min-height:44px;
  border-radius:15px;
  border:1px solid var(--line-strong);
  background:rgba(255,255,255,.92);
  box-shadow:0 7px 20px rgba(35,29,88,.05);
}

.app-shell{
  width:min(100%,860px);
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-inline:1px solid rgba(255,255,255,.75);
  box-shadow:0 0 110px rgba(36,31,83,.08);
}
.workspace-shell{
  width:min(100%,1580px);
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
.workspace-main{padding-bottom:118px}

.topbar{
  height:82px;
  margin:0;
  padding:14px 20px;
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(46,38,113,.07);
  box-shadow:0 6px 24px rgba(35,29,88,.035);
}
.brand{gap:12px}
.brand img{
  width:52px;height:52px;
  border-radius:17px;
  border:1px solid rgba(46,38,113,.08);
  background:#fff;
  padding:4px;
  box-shadow:0 9px 24px rgba(35,29,88,.09);
}
.brand b{font-size:16px;letter-spacing:-.15px}
.brand small{font-size:10px;color:#8a8d9a}
.top-actions{gap:8px}
.icon-btn{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 13px;
  border:1px solid rgba(46,38,113,.07);
  border-radius:14px;
  background:#f7f5fc;
  color:var(--primary);
  box-shadow:none;
}
.language-switch{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--primary);
  box-shadow:var(--small-shadow);
  border-radius:14px;
  font-size:10px;
  font-weight:900;
}
.language-switch i{width:1px;height:15px;background:#d8d9e2}
.language-switch[aria-pressed="false"] .lang-ar,
.language-switch[aria-pressed="true"] .lang-en{color:var(--secondary)}
.language-switch[aria-pressed="false"] .lang-en,
.language-switch[aria-pressed="true"] .lang-ar{color:#aaaeba}
.auth-language{position:fixed;z-index:90;top:18px;left:18px}
html[dir="ltr"] .auth-language{left:auto;right:18px}

.card,.form-card,.auth-card{
  border:1px solid rgba(46,38,113,.075);
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--soft-shadow);
}

.app-page-head{
  position:relative;
  align-items:center;
  padding:31px 3px 20px;
}
.app-page-head:before{
  content:"";
  position:absolute;
  inset-inline-start:-10px;
  top:25px;
  width:4px;
  height:42px;
  border-radius:9px;
  background:linear-gradient(180deg,var(--accent),var(--secondary));
}
.app-page-head small{font-size:10px;letter-spacing:.65px;text-transform:uppercase}
.app-page-head h1{font-size:clamp(27px,4vw,42px);letter-spacing:-.7px;margin:3px 0 6px}
.app-page-head p{font-size:12px;line-height:1.8}
.head-actions{align-items:center}

.stats,.stats.four{
  gap:12px;
  margin:2px 0 16px;
}
.stats div{
  min-height:108px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:19px 20px;
  text-align:start;
  border:1px solid rgba(46,38,113,.07);
  border-radius:21px;
  background:linear-gradient(155deg,#fff 0,#fbfbff 100%);
  box-shadow:var(--small-shadow);
}
.stats div:after{
  content:"";
  position:absolute;
  width:84px;height:84px;
  border-radius:50%;
  inset-inline-end:-28px;
  top:-28px;
  background:radial-gradient(circle,rgba(114,88,232,.13),rgba(7,142,209,.03) 66%,transparent 68%);
}
.stats div:nth-child(2):after{background:radial-gradient(circle,rgba(7,142,209,.14),rgba(7,142,209,.02) 66%,transparent 68%)}
.stats div:nth-child(3):after{background:radial-gradient(circle,rgba(245,161,69,.14),rgba(245,161,69,.02) 66%,transparent 68%)}
.stats div:nth-child(4):after{background:radial-gradient(circle,rgba(20,167,118,.13),rgba(20,167,118,.02) 66%,transparent 68%)}
.stats b{font-size:28px;line-height:1.1;color:var(--primary);letter-spacing:-.8px}
.stats span{margin-top:8px;font-size:10px;font-weight:700;color:var(--muted)}

.admin-shortcuts,.app-shortcuts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:14px 0 18px;
}
.admin-shortcuts a,.app-shortcuts a{
  min-height:116px;
  position:relative;
  overflow:hidden;
  justify-content:flex-end;
  padding:18px;
  border:1px solid rgba(46,38,113,.07);
  border-radius:21px;
  background:linear-gradient(150deg,#fff 0,#f9f9fe 100%);
  box-shadow:var(--small-shadow);
  transition:.2s ease;
}
.admin-shortcuts a:before,.app-shortcuts a:before{
  content:"";
  position:absolute;
  width:58px;height:58px;
  border-radius:20px;
  inset-inline-end:15px;
  top:15px;
  background:linear-gradient(145deg,rgba(114,88,232,.16),rgba(7,142,209,.08));
}
.admin-shortcuts a:hover,.app-shortcuts a:hover{transform:translateY(-3px);border-color:rgba(114,88,232,.22);box-shadow:0 16px 36px rgba(35,29,88,.10)}
.admin-shortcuts span,.app-shortcuts span{font-size:13px;color:var(--primary)}
.admin-shortcuts b,.app-shortcuts b{font-size:10px;line-height:1.6;color:var(--muted)}

.system-health-grid,.compliance-status-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:13px 0 20px;
}
.service-status{
  margin:0;
  min-height:64px;
  border-radius:19px;
  background:rgba(255,255,255,.88);
  box-shadow:var(--small-shadow);
}
.service-status b{font-size:12px}.service-status small{font-size:9px;line-height:1.5}

.section-title{margin:27px 3px 12px}
.section-title h2{margin:0;font-size:18px;letter-spacing:-.25px}
.section-title a{padding:7px 10px;border-radius:12px;background:#eef7fc;font-size:10px}

.admin-list,.compact-request-list{gap:10px}
.event-admin-card,.compact-request-card{
  min-height:86px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:15px 17px;
  border:1px solid rgba(46,38,113,.075);
  border-radius:20px;
  background:rgba(255,255,255,.95);
  box-shadow:0 8px 24px rgba(35,29,88,.055);
  transition:.2s ease;
}
.event-admin-card:hover,.compact-request-card:hover{transform:translateY(-2px);border-color:rgba(114,88,232,.22);box-shadow:0 14px 34px rgba(35,29,88,.09)}
.app-event-card time{
  width:58px;height:62px;
  display:grid;
  place-items:center;
  align-content:center;
  border-radius:18px;
  background:linear-gradient(145deg,#f1effd,#eef8fc);
  color:var(--primary);
  border:1px solid rgba(114,88,232,.09);
  flex:0 0 auto;
}
.app-event-card time b{font-size:21px;line-height:1}.app-event-card time small{font-size:8px;margin-top:3px;color:var(--secondary)}
.event-admin-card>div,.compact-request-card>div{flex:1;min-width:0}
.event-admin-card h3,.compact-request-card b{margin:5px 0 3px;font-size:13px;color:var(--text)}
.event-admin-card p,.compact-request-card small{font-size:9.5px;line-height:1.7;color:var(--muted)}
.event-admin-card strong,.compact-request-card strong{font-size:19px;color:var(--secondary)}
.status{font-weight:800;border:1px solid rgba(18,138,99,.1)}
.status.active{background:#eaf8f2;color:#117455}
.status.expired{background:#f1f2f5;color:#727582}
.status.request-pending{background:#fff6df;color:#8d6100}
.status.request-approved{background:#eaf8f2;color:#117455}
.status.request-rejected{background:#fff0ef;color:#a92b22}

.next-event-hero{
  min-height:155px;
  position:relative;
  overflow:hidden;
  align-items:center;
  padding:24px 26px;
  border-radius:26px;
  background:
    radial-gradient(circle at 82% 20%,rgba(255,255,255,.20),transparent 27%),
    linear-gradient(125deg,#282063 0,#4b36a2 50%,#078ed1 100%);
  box-shadow:0 23px 55px rgba(42,32,112,.24);
}
.next-event-hero:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.17);border-radius:50%;inset-inline-end:-65px;bottom:-105px}
.next-event-hero h2{font-size:25px;letter-spacing:-.4px}.next-event-hero p{font-size:11px;line-height:1.8}
.next-event-hero a{z-index:1;min-width:120px;text-align:center;border-radius:15px;box-shadow:0 10px 24px rgba(17,13,52,.18)}

/* Calendar */
.calendar-layout{gap:15px}
.calendar-card,.calendar-agenda{
  padding:20px;
  border:1px solid rgba(46,38,113,.07);
  border-radius:23px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--soft-shadow);
}
.calendar-toolbar{margin-bottom:17px}
.calendar-toolbar>a{width:42px;height:42px;border-radius:14px;background:#f2effd;box-shadow:none}
.calendar-toolbar h2{font-size:21px}.calendar-toolbar small{letter-spacing:.5px}
.calendar-weekdays span{font-size:9px;color:#9093a0}
button.calendar-day,.calendar-day{
  min-height:82px;
  border-radius:15px!important;
  background:#fbfbfd!important;
  border:1px solid #edf0f6!important;
  transition:.18s ease!important;
}
.calendar-day:hover{transform:translateY(-1px);background:#f4f8fd!important;border-color:rgba(7,142,209,.25)!important}
.calendar-day.has-events{background:linear-gradient(150deg,#f2effd,#edf8fd)!important;border-color:rgba(114,88,232,.16)!important}
.calendar-day.is-selected,.calendar-day.selected{outline:3px solid rgba(114,88,232,.13)!important;border-color:var(--accent)!important}
.calendar-day i{width:7px;height:7px;background:linear-gradient(135deg,var(--accent),var(--secondary))}
.calendar-event{border-radius:17px;background:#fafbfe;padding:13px;border-color:#edf0f5}
.calendar-event:hover{background:#f5f7fc}
.calendar-event time{width:70px;font-size:10px}.calendar-event b{font-size:12px}.calendar-event span{font-size:9px}
.company-chip{background:#efecfb!important;color:var(--primary)!important}
.calendar-filter label{background:#fff;padding:10px 12px;border-radius:16px;box-shadow:var(--small-shadow)}

/* Event workspace */
.event-detail-head{padding-bottom:16px}
.provider-event-summary{
  gap:12px;
  margin-bottom:13px;
}
.provider-event-summary>div,.payment-summary{
  min-height:92px;
  padding:17px 19px;
  border-radius:20px;
  border:1px solid rgba(46,38,113,.07);
  background:linear-gradient(145deg,#fff,#f9f9fd);
  box-shadow:var(--small-shadow);
}
.event-info-strip{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:13px 0;
}
.event-info-strip>div,.event-info-strip>a{
  min-height:76px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 14px;
  border-radius:18px;
  border:1px solid rgba(46,38,113,.07);
  background:#fff;
  box-shadow:var(--small-shadow);
}
.event-info-strip small{font-size:8.5px;color:var(--secondary);font-weight:900}.event-info-strip b{font-size:11px;line-height:1.55}
.event-info-strip>a{align-items:center;color:var(--secondary);font-size:10px;font-weight:850}
.event-setup-pro{
  grid-template-columns:minmax(330px,.9fr) minmax(440px,1.1fr);
  gap:15px;
  margin:15px 0;
}
.setup-panel{
  border-radius:25px;
  padding:22px;
  border:1px solid rgba(46,38,113,.075);
  box-shadow:var(--soft-shadow);
  background:linear-gradient(160deg,#fff 0,#fbfbfe 100%);
}
.setup-panel:before{width:190px;height:190px;top:-100px;left:-90px;background:rgba(114,88,232,.06)}
.panel-kicker span{width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#efecfb,#eaf6fc);font-size:9px}
.panel-kicker b{font-size:12px}
.qr-panel{text-align:center}
.qr-frame{
  width:min(100%,255px);
  margin:21px auto 12px;
  padding:13px;
  border-radius:25px;
  background:#fff;
  border:1px solid rgba(46,38,113,.07);
  box-shadow:0 14px 35px rgba(35,29,88,.08);
}
.qr-frame img{display:block;width:100%;border-radius:14px}
.qr-panel h2{font-size:20px;margin:8px 0}.qr-panel p{font-size:10px;color:var(--muted);line-height:1.75}
.qr-panel code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;padding:10px;border-radius:12px;background:#f4f5fa;font-size:8.5px}
.panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.ftp-panel{background:linear-gradient(150deg,#fff 0,#f7f8fd 100%)}
.ftp-status{display:inline-flex;align-items:center;gap:7px;margin:17px 0 12px;padding:7px 10px;border-radius:99px;background:#eaf8f2;color:#147155;font-size:9px;font-weight:850}
.ftp-status i{width:7px;height:7px;border-radius:50%;background:#1eb57e;box-shadow:0 0 0 4px rgba(30,181,126,.12)}
.credential-list{
  overflow:hidden;
  border:1px solid rgba(46,38,113,.07);
  border-radius:18px;
  background:#fff;
}
.credential-list>div{
  display:grid;
  grid-template-columns:88px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:12px 13px;
  border-bottom:1px solid #eef0f5;
}
.credential-list>div:last-child{border-bottom:0}
.credential-list small{font-size:8px;color:var(--muted);font-weight:800}
.credential-list code{font-size:9.5px;font-weight:750;color:#2f2a55;overflow:hidden;text-overflow:ellipsis}
.credential-list button{min-height:32px;padding:6px 9px;border-radius:10px;font-size:8px;box-shadow:none}
.credential-buttons{display:flex;gap:5px}
.setup-steps{margin-top:14px;padding:14px 15px;border-radius:17px;background:#f2f0fb;display:grid;grid-template-columns:90px 1fr;gap:8px}
.setup-steps b{font-size:10px;color:var(--primary)}.setup-steps ol{margin:0;padding-inline-start:18px;font-size:9px;color:var(--muted);line-height:1.9}
.security-note{font-size:8.5px!important;color:#8b6e2d!important;background:#fff9e9;padding:10px 12px;border-radius:13px;border:1px solid #f3e0a9}
.premium-prereg{
  border-radius:23px;
  padding:20px;
  background:linear-gradient(145deg,#fff,#f7f5fd);
  box-shadow:var(--soft-shadow);
}
.premium-prereg img{padding:8px;background:#fff;border:1px solid var(--line);box-shadow:var(--small-shadow)}
.modern-uploader,.event-settings{
  border-radius:23px;
  padding:21px;
  background:linear-gradient(150deg,#fff,#fbfbfe);
}
.upload-drop{min-height:68px;border-radius:17px;background:#f7f6fc;border-color:rgba(114,88,232,.28)}
.event-settings form{gap:9px}
.toggle{border-radius:15px;background:#f8f8fc;border-color:rgba(46,38,113,.055)}

/* Forms and settings */
.auth-card,.form-card{border-radius:26px;padding:30px}
.webapp-login{
  max-width:490px;
  margin-top:78px;
  padding:34px;
  background:
    radial-gradient(circle at 88% 0,rgba(7,142,209,.10),transparent 28%),
    #fff;
  box-shadow:0 28px 80px rgba(35,29,88,.13);
}
.webapp-login img{width:138px;max-height:92px;margin-bottom:6px}
.webapp-login h1{font-size:29px;margin:8px 0}.webapp-login>p{font-size:11px;line-height:1.8}
label{font-size:11px;color:#403d57}
input,select,textarea{
  min-height:47px;
  border-radius:14px;
  border:1px solid #e0e3ec;
  background:#fbfcfe;
  padding:12px 14px;
}
input:focus,select:focus,textarea:focus{border-color:rgba(7,142,209,.65);box-shadow:0 0 0 4px rgba(7,142,209,.09)}
textarea{min-height:104px}
.feature-group,.legal-acceptance{border-radius:19px;background:#faf9fd}
.settings-grid{gap:14px}
.logo-preview{border-radius:20px;background:linear-gradient(145deg,#f7f8fc,#eff3f9)}
.color-row{gap:12px}
.events-filter{
  padding:16px;
  border-radius:21px;
  background:#fff;
  box-shadow:var(--small-shadow);
}
.events-filter label{font-size:9px}
.provider-events-filter{grid-template-columns:minmax(260px,1.8fr) minmax(180px,.8fr) auto}

/* Public event experience, closer to the elegant v1.2/v1.3 direction */
.event-cover{
  min-height:190px;
  position:relative;
  overflow:hidden;
  padding:27px;
  border-radius:27px;
  background:
    radial-gradient(circle at 83% 24%,rgba(255,255,255,.20),transparent 24%),
    linear-gradient(125deg,#2d256f 0,#543ba9 54%,#078ed1 100%);
}
.event-cover:after{content:"";position:absolute;inset-inline-end:-65px;bottom:-95px;width:200px;height:200px;border:1px solid rgba(255,255,255,.17);border-radius:50%}
.event-cover>div,.event-cover>.qr-small{position:relative;z-index:1}
.event-cover h1{font-size:clamp(27px,6vw,40px);letter-spacing:-.6px}
.event-choices{gap:12px}
.event-choice{
  min-height:105px;
  padding:18px;
  border-radius:22px;
  background:linear-gradient(155deg,#fff,#fbfbfe);
  box-shadow:var(--small-shadow);
}
.event-choice:hover{transform:translateY(-2px);border-color:rgba(114,88,232,.18)}
.choice-icon,.face-icon,.face-badge{border-radius:16px;background:linear-gradient(145deg,#efecfb,#eaf6fc)}
.face-choice{background:linear-gradient(130deg,#30266f,#5c44b4 58%,#078ed1)}
.gallery{column-gap:10px}.photo{margin-bottom:10px;border-radius:20px}.photo img{border-radius:20px}

/* Navigation: floating app bar on mobile, full premium sidebar on desktop */
.app-nav{
  width:calc(100% - 20px);
  max-width:820px;
  right:50%;
  transform:translateX(50%);
  bottom:10px;
  display:block;
  padding:7px;
  border:1px solid rgba(46,38,113,.10);
  border-radius:23px;
  background:rgba(255,255,255,.93);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  box-shadow:0 18px 46px rgba(35,29,88,.18);
}
.nav-identity,.nav-foot{display:none}
.nav-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}
.app-nav a{
  min-height:58px;
  padding:5px 3px;
  border-radius:16px;
  color:#838593;
  gap:4px;
  transition:.18s ease;
}
.app-nav a span{width:25px;height:25px;display:grid;place-items:center;font-size:0}
.app-nav a svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.app-nav a b{font-size:8.5px;font-weight:800}
.app-nav a:hover,.app-nav a.is-active{background:#f1eefc;color:var(--primary)}
.app-nav .nav-main-action{
  width:64px;
  min-height:64px;
  justify-self:center;
  transform:translateY(-12px);
  border-radius:22px;
  background:linear-gradient(135deg,var(--primary),var(--accent),var(--secondary))!important;
  color:#fff!important;
  box-shadow:0 15px 31px rgba(66,52,156,.30);
}
.app-nav .nav-main-action span{width:27px;height:27px}.app-nav .nav-main-action b{font-size:8px}
.app-nav .nav-desktop-extra{display:none}

html[dir="ltr"] body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
html[dir="ltr"] .auth-card form,html[dir="ltr"] .form-card form{text-align:left}
html[dir="ltr"] .event-admin-card strong,html[dir="ltr"] .compact-request-card strong{transform:rotate(180deg)}
html[dir="ltr"] .app-page-head:before{left:-10px;right:auto}

@media(max-width:900px){
  .admin-shortcuts,.app-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-info-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .event-setup-pro{grid-template-columns:1fr}
  .calendar-layout{grid-template-columns:1fr}
  .system-health-grid,.compliance-status-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:650px){
  body{background:#f5f6fa}
  .app-shell{width:100%;border:0;box-shadow:none}
  .workspace-shell{width:100%}
  main,.workspace-main{padding-inline:14px;padding-bottom:118px}
  .topbar{height:70px;padding:10px 14px;background:rgba(255,255,255,.94)}
  .brand img{width:44px;height:44px;border-radius:14px}.brand b{font-size:14px}.brand small{font-size:8px}
  .top-actions{gap:5px}.icon-btn{display:none}.language-switch{display:inline-flex;min-height:37px;padding:6px 9px}
  .app-page-head{align-items:flex-start;padding:23px 3px 15px}.app-page-head:before{display:none}
  .app-page-head h1{font-size:26px}.app-page-head p{font-size:10px}.app-page-head .primary-btn{width:100%;margin-top:7px}
  .stats,.stats.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .stats div{min-height:96px;padding:15px;border-radius:19px}.stats b{font-size:24px}.stats span{font-size:8px}
  .admin-shortcuts,.app-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .admin-shortcuts a,.app-shortcuts a{min-height:100px;padding:14px;border-radius:18px}.admin-shortcuts span,.app-shortcuts span{font-size:11px}.admin-shortcuts b,.app-shortcuts b{font-size:8px}
  .system-health-grid,.compliance-status-grid{grid-template-columns:1fr}
  .next-event-hero{min-height:170px;align-items:flex-start;flex-direction:column;padding:21px}.next-event-hero h2{font-size:21px}.next-event-hero a{align-self:stretch;text-align:center}
  .section-title h2{font-size:16px}
  .event-admin-card,.compact-request-card{padding:13px;border-radius:18px}.app-event-card time{width:51px;height:56px;border-radius:16px}.app-event-card time b{font-size:18px}
  .event-info-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.event-info-strip>a{grid-column:1/-1}
  .setup-panel{padding:17px;border-radius:22px}.qr-frame{width:220px}.panel-actions{grid-template-columns:1fr}
  .credential-list>div{grid-template-columns:72px minmax(0,1fr) auto;padding:10px}.credential-list code{font-size:8px}.credential-list button{padding:5px 7px}
  .setup-steps{grid-template-columns:1fr}.modern-uploader{grid-template-columns:1fr}.modern-uploader form{grid-template-columns:1fr}
  .event-settings form{grid-template-columns:1fr}
  .calendar-card,.calendar-agenda{padding:13px;border-radius:20px}.calendar-day{min-height:61px!important;padding:6px!important;border-radius:12px!important}.calendar-day b{font-size:10px}.calendar-weekdays span{font-size:7px}
  .calendar-event{padding:10px}.calendar-event time{width:56px;font-size:8px}
  .events-filter,.provider-events-filter{grid-template-columns:1fr;padding:12px;border-radius:19px}.events-filter button{width:100%}
  .form-grid.two,.event-choices,.provider-event-summary,.approval-grid,.settings-grid{grid-template-columns:1fr}
  .auth-card,.form-card{padding:22px;border-radius:23px}.webapp-login{margin-top:55px;padding:26px 22px}.webapp-login h1{font-size:25px}
  .event-cover{min-height:175px;padding:21px}.event-cover h1{font-size:28px}.qr-small img{width:66px}
  .event-choice{min-height:92px;padding:15px}.event-choice b{font-size:14px}.event-choice small{font-size:9px}
  footer{padding-bottom:125px}
}

@media(min-width:1050px){
  .workspace-shell{
    width:min(100%,1580px);
    padding-right:calc(var(--sidebar-width) + 36px);
    min-height:100vh;
  }
  html[dir="ltr"] .workspace-shell{padding-right:0;padding-left:calc(var(--sidebar-width) + 36px)}
  .workspace-main{padding:0 28px 48px}
  .workspace-shell>.topbar{
    margin:18px 24px 0;
    border:1px solid rgba(46,38,113,.07);
    border-radius:21px;
    box-shadow:var(--small-shadow);
  }
  .app-nav{
    position:fixed;
    z-index:80;
    top:18px;
    bottom:18px;
    right:max(18px,calc((100vw - 1580px)/2 + 18px));
    transform:none;
    width:var(--sidebar-width);
    max-width:none;
    display:flex;
    flex-direction:column;
    padding:17px 13px;
    border:0;
    border-radius:28px;
    overflow:hidden;
    background:
      radial-gradient(circle at 20% 0,rgba(255,255,255,.10),transparent 24%),
      linear-gradient(180deg,#262064 0,#302674 48%,#123e7e 100%);
    box-shadow:0 28px 70px rgba(26,24,70,.26);
  }
  html[dir="ltr"] .app-nav{right:auto;left:max(18px,calc((100vw - 1580px)/2 + 18px))}
  .nav-identity{
    display:flex;
    align-items:center;
    gap:11px;
    min-height:72px;
    margin:0 5px 15px;
    padding:9px;
    border-bottom:1px solid rgba(255,255,255,.11);
  }
  .nav-identity img{width:48px;height:48px;object-fit:contain;padding:3px;border-radius:15px;background:#fff}
  .nav-identity span{display:flex;flex-direction:column;min-width:0}.nav-identity b{color:#fff;font-size:13px}.nav-identity small{color:rgba(255,255,255,.62);font-size:8px}
  .nav-links{display:flex;flex-direction:column;gap:5px;align-items:stretch}
  .app-nav a{
    min-height:48px;
    width:100%;
    flex-direction:row;
    justify-content:flex-start;
    gap:11px;
    padding:8px 12px;
    border-radius:14px;
    color:rgba(255,255,255,.72);
  }
  .app-nav a span{width:25px;height:25px}.app-nav a b{font-size:11px}
  .app-nav a:hover,.app-nav a.is-active{background:linear-gradient(90deg,rgba(255,255,255,.17),rgba(255,255,255,.08));color:#fff;box-shadow:inset 3px 0 0 #56c8ff}
  html[dir="rtl"] .app-nav a:hover,html[dir="rtl"] .app-nav a.is-active{box-shadow:inset -3px 0 0 #56c8ff}
  .app-nav .nav-main-action{
    width:100%;
    min-height:48px;
    transform:none;
    justify-self:auto;
    border-radius:14px;
    background:transparent!important;
    color:rgba(255,255,255,.72)!important;
    box-shadow:none;
  }
  .app-nav .nav-main-action:hover,.app-nav .nav-main-action.is-active{background:linear-gradient(90deg,rgba(255,255,255,.17),rgba(255,255,255,.08))!important;color:#fff!important}
  .app-nav .nav-main-action b{font-size:11px}
  .app-nav .nav-desktop-extra{display:flex}
  .nav-foot{
    display:flex;
    align-items:center;
    gap:9px;
    margin-top:auto;
    padding:13px 11px;
    border-radius:16px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
  }
  .nav-secure-dot{width:9px;height:9px;border-radius:50%;background:#45e2a6;box-shadow:0 0 0 5px rgba(69,226,166,.12)}
  .nav-foot div{display:flex;flex-direction:column}.nav-foot b{font-size:9px;color:#fff}.nav-foot small{font-size:7.5px;color:rgba(255,255,255,.55)}
  .workspace-shell footer{padding-right:20px}
  html[dir="ltr"] .workspace-shell footer{padding-left:20px;padding-right:20px}
}

@media(min-width:1250px){
  .workspace-main{padding-inline:34px}
  .calendar-layout{grid-template-columns:minmax(570px,1.18fr) minmax(340px,.82fr)}
}

/* ============================================================
   ONS Moments v1.6 — premium responsive application layer (base retained in v1.7)
   ============================================================ */
:root{
  --navy:#102657;
  --navy-2:#173b82;
  --blue:#168fe5;
  --violet:#6958e8;
  --success:#0f9f6e;
  --warning:#b77808;
  --danger:#c83d4d;
  --app-border:rgba(18,43,93,.09);
  --app-shadow:0 22px 60px rgba(28,55,112,.10);
  --app-shadow-soft:0 10px 30px rgba(28,55,112,.07);
  --ease:cubic-bezier(.2,.8,.2,1);
}
body.workspace-body{background:linear-gradient(145deg,#f7f9fd 0,#eef3fa 58%,#f8fbff 100%)}
.workspace-shell{width:100%;max-width:none;min-height:100vh;background:transparent;box-shadow:none;overflow:visible}
.workspace-main{max-width:1380px;margin-inline:auto;padding:24px 26px 110px}
.topbar{height:76px;border-bottom:1px solid var(--app-border);box-shadow:0 8px 30px rgba(18,43,93,.035)}
.brand img{border-radius:14px;box-shadow:0 8px 20px rgba(24,61,133,.08)}
.brand b{font-size:16px}.brand small{font-size:10px;letter-spacing:.7px}

/* professional vector icons */
.app-nav svg,.primary-btn svg,.secondary-btn svg,.ghost-button svg,.provider-admin-card svg,.provider-admin-overview svg,.event-form-intro svg,.agreement-preview svg,.public-venue-card svg,.venue-map-button svg,.service-window-banner svg,.empty-icon svg,.stat-icon svg,.feature-card-icon svg,.prereg-icon svg{
  width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto
}
.primary-btn svg,.secondary-btn svg,button svg{width:18px;height:18px}

/* mobile application navigation: always fixed */
.app-nav{
  position:fixed!important;z-index:200;left:0!important;right:0!important;bottom:0!important;top:auto!important;transform:none!important;width:100%!important;
  padding:7px 10px calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border:0;border-top:1px solid rgba(18,43,93,.10);
  box-shadow:0 -12px 36px rgba(22,48,104,.11);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)
}
.app-nav .nav-identity,.app-nav .nav-foot{display:none}
.app-nav .nav-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;max-width:820px;margin:auto}
.app-nav a{min-height:56px;padding:5px 2px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#7d8799;transition:transform .22s var(--ease),background .22s,color .22s}
.app-nav a:hover{transform:translateY(-2px);background:#f2f6fc;color:var(--primary)}
.app-nav a span{display:grid;place-items:center}.app-nav a svg{width:21px;height:21px}.app-nav a b{font-size:9px;font-weight:800;line-height:1.1}
.app-nav .nav-main-action{transform:translateY(-10px)!important;width:58px;height:58px;min-height:58px;margin:auto;border-radius:20px!important;background:linear-gradient(135deg,var(--primary),var(--secondary))!important;color:#fff!important;box-shadow:0 14px 28px rgba(41,63,155,.28)}
.app-nav .nav-main-action b{display:none}.app-nav .nav-main-action svg{width:25px;height:25px}
.nav-desktop-only{display:none!important}

/* cards and transitions */
.card,.form-card,.auth-card,.setup-panel,.provider-admin-card,.provider-profile-summary,.provider-agreement-summary{border:1px solid var(--app-border);box-shadow:var(--app-shadow-soft)}
.card,.form-card,.setup-panel,.provider-admin-card,.event-admin-card,.compact-request-card{animation:ons-rise .46s var(--ease) both}
@keyframes ons-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes ons-pulse{0%,100%{box-shadow:0 0 0 0 rgba(22,143,229,.20)}50%{box-shadow:0 0 0 8px rgba(22,143,229,0)}}
@keyframes ons-shimmer{0%{transform:translateX(-140%)}100%{transform:translateX(240%)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* page heads */
.app-page-head{padding:30px 4px 18px;align-items:center}.app-page-head h1{letter-spacing:-.6px}.app-page-head p{font-size:12px;line-height:1.8}
.primary-btn,button{position:relative;overflow:hidden}.primary-btn:after,button:not(.calendar-day):not(.language-switch):after{content:"";position:absolute;top:-40%;bottom:-40%;width:28px;background:rgba(255,255,255,.18);transform:translateX(-140%) rotate(18deg);transition:.65s var(--ease)}.primary-btn:hover:after,button:hover:after{transform:translateX(420%) rotate(18deg)}

/* company administration */
.provider-stats{margin-bottom:16px}.provider-stats>div{position:relative;overflow:hidden}.provider-stats .stat-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;margin:0 auto 8px;background:linear-gradient(145deg,#eef4ff,#f6f2ff);color:var(--primary)}
.provider-admin-list{display:grid;gap:11px}
.provider-admin-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px 18px;border-radius:22px;background:rgba(255,255,255,.94);transition:.22s var(--ease)}
.provider-admin-card:hover{transform:translateY(-2px);box-shadow:var(--app-shadow);border-color:rgba(22,143,229,.22)}
.provider-card-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#edf4ff,#f3efff);color:var(--primary)}.provider-card-mark svg{width:25px;height:25px}
.provider-card-main{min-width:0}.provider-card-main h3{margin:5px 0 1px;font-size:16px}.provider-card-main p{margin:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-card-main>small{display:block;margin-top:5px;color:#8a92a3;font-size:9px}
.provider-card-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.agreement-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;font-size:8px;font-weight:850}.agreement-chip svg{width:12px;height:12px}.agreement-chip.accepted{background:#eaf9f3;color:#07875c}.agreement-chip.pending{background:#fff5df;color:#9b6500}
.provider-card-price{text-align:left;display:grid;justify-items:end}.provider-card-price b{color:var(--primary);font-size:14px}.provider-card-price span{font-size:8px;color:var(--muted)}.provider-card-price svg{margin-top:8px;width:16px;height:16px;color:var(--secondary)}
.provider-admin-overview{display:grid;grid-template-columns:1.08fr .92fr;gap:12px;margin-bottom:12px}.provider-profile-summary,.provider-agreement-summary{display:flex;align-items:center;gap:14px;padding:19px;border-radius:23px;background:#fff}.provider-profile-summary>span:first-child,.provider-agreement-summary>span:first-child{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#eff4ff;color:var(--primary)}.provider-profile-summary>div,.provider-agreement-summary>div{min-width:0;flex:1}.provider-profile-summary small,.provider-agreement-summary small{color:var(--secondary);font-size:9px;font-weight:850}.provider-profile-summary h2,.provider-agreement-summary h3{margin:2px 0}.provider-profile-summary p,.provider-agreement-summary p{margin:0;color:var(--muted);font-size:9px}.provider-agreement-summary.accepted{background:linear-gradient(145deg,#f4fffa,#fff);border-color:#c8eadc}.provider-agreement-summary.pending{background:linear-gradient(145deg,#fffaf0,#fff);border-color:#efdbac}.provider-agreement-summary>a{font-weight:900;color:var(--secondary);font-size:11px}
.form-section{padding:17px;border:1px solid var(--app-border);border-radius:20px;background:#fbfcff}.form-section+ .form-section{margin-top:3px}.form-section h3{margin:0 0 12px;color:var(--primary);font-size:13px}
.provider-create-form form,.provider-edit form{gap:12px}.agreement-preview{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:linear-gradient(145deg,#eff5ff,#f7f3ff);border:1px solid rgba(39,75,153,.10)}.agreement-preview>span{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#fff;color:var(--primary)}.agreement-preview>div{display:grid;flex:1}.agreement-preview small{color:var(--muted);font-size:9px}.agreement-preview a{font-size:10px;font-weight:900;color:var(--secondary)}

/* agreement and consent experiences */
.agreement-shell{max-width:980px;margin:24px auto}.agreement-hero{display:flex;align-items:center;gap:18px;padding:28px;border-radius:30px;background:linear-gradient(135deg,#112a61,#315cae 56%,#765ce9);color:#fff;box-shadow:0 26px 65px rgba(24,55,119,.24);position:relative;overflow:hidden}.agreement-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08);left:-70px;top:-100px}.agreement-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:21px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px)}.agreement-icon svg{width:31px;height:31px}.agreement-hero h1{margin:4px 0;font-size:clamp(26px,5vw,42px)}.agreement-hero p{margin:0;opacity:.82;font-size:11px;line-height:1.8}.agreement-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;margin:12px 0}.agreement-summary h2{margin:2px 0}.agreement-summary p{margin:0;color:var(--muted);font-size:10px}.agreement-points{padding:20px}.agreement-point-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.agreement-point-grid>div{display:grid;gap:5px;padding:14px;background:#f8faff;border-radius:17px}.agreement-point-grid svg{color:var(--secondary)}.agreement-point-grid b{font-size:11px}.agreement-point-grid span{color:var(--muted);font-size:9px}.agreement-form{margin-top:12px}.agreement-submit{min-height:52px}
.terms-renewal-card,.consent-status-card,.event-consent-card{max-width:850px;margin:28px auto;padding:24px}.terms-renewal-icon,.agreement-status-icon,.event-consent-card>span:first-child{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(145deg,#eef4ff,#f5efff);color:var(--primary)}.terms-document-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.biometric-disclosure{padding:18px;border:1px solid rgba(70,62,150,.14);border-radius:21px;background:linear-gradient(145deg,#f8f9ff,#f5faff)}.disclosure-head{display:flex;align-items:center;gap:11px}.disclosure-head span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--primary)}.disclosure-warning{margin-top:12px;padding:12px;border-radius:14px;background:#fff5e6;color:#805400;font-size:10px}.text-document-link{font-weight:850;color:var(--secondary)}

/* event workspace */
.service-window-banner{display:flex;align-items:center;gap:13px;padding:16px 18px;border-radius:21px;margin:11px 0}.service-window-banner>span:first-child{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.72)}.service-window-banner>div{display:grid;flex:1}.service-window-banner small{font-size:9px}.service-window-banner b{font-size:13px}.service-window-banner.open{background:#eaf9f3;color:#087e59}.service-window-banner.open>span:first-child{animation:ons-pulse 2s infinite}.service-window-banner.scheduled{background:#edf5ff;color:#155f9f}.service-window-banner.closed{background:#fff0f0;color:#a22e3e}.service-window-banner.neutral{background:#f3f4f8;color:#60687a}
.premium-info-strip{grid-template-columns:repeat(4,1fr)!important}.premium-info-strip>div{min-height:75px;display:flex;flex-direction:column;justify-content:center}.venue-map-button{display:flex!important;align-items:center;gap:10px!important;justify-content:center;padding:13px!important;border-radius:16px!important;background:linear-gradient(135deg,#edf5ff,#f4efff)!important;color:var(--primary)!important;font-weight:900}.disabled-map{opacity:.55}
.event-setup-pro{align-items:stretch}.setup-panel{transition:.24s var(--ease)}.setup-panel:hover{transform:translateY(-3px);box-shadow:var(--app-shadow)}.feature-card-icon,.prereg-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#f0f4ff;color:var(--primary)}
.upload-locked{padding:16px;border-radius:17px;background:#fff1f1;color:#9d3340}.locked-action{opacity:.5;pointer-events:none}
.public-venue-card{display:flex;align-items:center;gap:14px;margin:12px 0 18px;padding:16px;border-radius:22px;background:linear-gradient(135deg,#102a61,#2d5bab 62%,#735be5);color:#fff;box-shadow:0 16px 38px rgba(25,57,122,.20);transition:.22s var(--ease)}.public-venue-card:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(25,57,122,.27)}.public-venue-icon{width:49px;height:49px;display:grid;place-items:center;border-radius:17px;background:rgba(255,255,255,.15)}.public-venue-card>span:nth-child(2){display:grid;flex:1}.public-venue-card small{opacity:.72;font-size:9px}.public-venue-card b{font-size:15px}.public-venue-card>svg{width:18px;height:18px}
.empty-icon{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 12px;border-radius:23px;background:#f0f4ff;color:var(--primary)}.empty-icon svg{width:31px;height:31px}

/* responsive desktop sidebar */
@media(min-width:1050px){
  .workspace-shell{padding-right:258px!important}
  [dir="ltr"] .workspace-shell{padding-right:0!important;padding-left:258px!important}
  .workspace-main{padding:30px 34px 50px!important}
  .app-nav{top:18px!important;bottom:18px!important;right:18px!important;left:auto!important;width:222px!important;height:auto!important;padding:18px 13px!important;border:1px solid rgba(255,255,255,.12);border-radius:29px!important;background:linear-gradient(180deg,#112b61 0,#123774 57%,#162d60 100%)!important;box-shadow:0 26px 65px rgba(13,38,88,.24)!important;display:flex!important;flex-direction:column!important;overflow:hidden}
  [dir="ltr"] .app-nav{right:auto!important;left:18px!important}
  .app-nav:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(76,167,255,.14);right:-80px;top:-70px}
  .app-nav .nav-identity{display:flex;align-items:center;gap:10px;padding:5px 7px 18px;color:#fff;position:relative}.nav-identity img{width:47px;height:47px;border-radius:15px;background:#fff;object-fit:contain;padding:3px}.nav-identity span{display:grid}.nav-identity b{font-size:13px}.nav-identity small{font-size:8px;opacity:.64}
  .app-nav .nav-links{display:flex!important;flex-direction:column;gap:5px;width:100%;margin:0;position:relative;flex:1}
  .app-nav a{width:100%!important;min-height:48px!important;padding:8px 11px!important;border-radius:15px!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:11px!important;color:rgba(255,255,255,.72)!important}
  .app-nav a:hover{background:rgba(255,255,255,.10)!important;color:#fff!important;transform:translateX(-2px)}
  [dir="ltr"] .app-nav a:hover{transform:translateX(2px)}
  .app-nav a span{width:30px;height:30px;border-radius:10px;background:rgba(255,255,255,.08)}.app-nav a svg{width:18px;height:18px}.app-nav a b{font-size:10px!important}
  .app-nav .nav-main-action{width:100%!important;height:auto!important;min-height:50px!important;margin:0!important;transform:none!important;background:linear-gradient(135deg,#6656e8,#168fe5)!important;box-shadow:0 12px 24px rgba(11,27,72,.25)!important}.app-nav .nav-main-action b{display:block!important}.app-nav .nav-main-action span{background:rgba(255,255,255,.14)}
  .nav-desktop-only{display:flex!important}
  .app-nav .nav-foot{display:flex;align-items:center;gap:9px;padding:13px 8px 4px;color:#fff;border-top:1px solid rgba(255,255,255,.10)}.nav-secure-dot{width:9px;height:9px;border-radius:50%;background:#58e0a1;box-shadow:0 0 0 5px rgba(88,224,161,.10)}.nav-foot div{display:grid}.nav-foot b{font-size:9px}.nav-foot small{font-size:7px;opacity:.55}
  .workspace-shell footer{padding-bottom:26px!important}
}

@media(max-width:820px){
  .workspace-main{padding:12px 14px 100px}.topbar{height:68px}.top-actions .compliance-link,.top-actions>a:last-child{display:none}
  .provider-admin-overview,.agreement-point-grid{grid-template-columns:1fr 1fr}.premium-info-strip{grid-template-columns:1fr 1fr!important}
  .provider-admin-card{grid-template-columns:48px minmax(0,1fr)}.provider-card-mark{width:46px;height:46px}.provider-card-price{display:none}
  .agreement-hero{padding:22px;align-items:flex-start}.agreement-summary{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .app-page-head{padding-top:20px}.app-page-head h1{font-size:25px}.stats.four,.provider-stats{grid-template-columns:1fr 1fr}
  .provider-admin-overview,.agreement-point-grid{grid-template-columns:1fr}.provider-admin-card{padding:14px 13px;gap:11px}.provider-card-main h3{font-size:14px}.provider-card-main p{white-space:normal;line-height:1.5}
  .agreement-hero{display:grid}.agreement-icon{width:52px;height:52px}.agreement-point-grid>div{grid-template-columns:30px 1fr}.agreement-point-grid>div span{grid-column:2}.premium-info-strip{grid-template-columns:1fr!important}
  .public-venue-card{padding:14px}.public-venue-card b{font-size:13px}
  .event-setup-pro{gap:10px}.setup-panel{border-radius:23px;padding:16px}
}
.app-shortcuts a span{display:flex;align-items:center;gap:8px}.app-shortcuts a span svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-shortcuts a{transition:.22s var(--ease)}.app-shortcuts a:hover{transform:translateY(-3px);box-shadow:var(--app-shadow)}

/* =========================================================
   ONS Moments v1.7 - premium onboarding and legal experience
   ========================================================= */
:root{
  --v17-navy:#122756;
  --v17-blue:#2469d3;
  --v17-cyan:#1aa7dc;
  --v17-purple:#7157df;
  --v17-ink:#20283a;
  --v17-soft:#f6f8fd;
  --v17-border:rgba(28,55,107,.10);
  --v17-shadow:0 28px 80px rgba(26,50,99,.14);
}

.provider-login-v17{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.95fr) minmax(390px,.72fr);align-items:stretch;background:#fff;overflow:hidden}
.provider-login-story{position:relative;padding:clamp(34px,6vw,78px);color:#fff;background:radial-gradient(circle at 20% 10%,rgba(90,177,255,.35),transparent 28%),radial-gradient(circle at 90% 85%,rgba(130,91,235,.32),transparent 32%),linear-gradient(145deg,#0d214e 0%,#183a78 55%,#294f9e 100%);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.provider-login-story:before,.provider-login-story:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.10)}
.provider-login-story:before{width:420px;height:420px;inset:auto -180px -190px auto}.provider-login-story:after{width:250px;height:250px;inset:-110px auto auto -100px}
.provider-login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:13px;margin-bottom:34px}.provider-login-brand img{width:62px;height:62px;border-radius:19px;object-fit:contain;background:#fff;padding:5px;box-shadow:0 18px 40px rgba(0,0,0,.18)}.provider-login-brand span{display:grid}.provider-login-brand b{font-size:19px}.provider-login-brand small{font-size:11px;opacity:.72;letter-spacing:.6px}
.provider-portal-pill{position:relative;z-index:1;width:max-content;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.10);border-radius:999px;font-size:10px;font-weight:850;backdrop-filter:blur(12px)}.provider-portal-pill svg{width:17px;height:17px}
.provider-login-story h1{position:relative;z-index:1;font-size:clamp(34px,5vw,62px);line-height:1.18;margin:18px 0 10px;letter-spacing:-1.6px}.provider-login-story h1 em{font-style:normal;background:linear-gradient(90deg,#a9dcff,#d8c7ff);-webkit-background-clip:text;color:transparent}.provider-login-story>p{position:relative;z-index:1;max-width:650px;margin:0 0 26px;color:rgba(255,255,255,.73);font-size:13px;line-height:1.9}
.provider-login-stepper{position:relative;z-index:1;display:grid;gap:9px;max-width:650px}.provider-login-stepper article{display:grid;grid-template-columns:44px 1fr 30px;align-items:center;gap:12px;padding:10px 14px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.055);backdrop-filter:blur(14px);transition:.2s ease}.provider-login-stepper article:hover{transform:translateX(-3px);background:rgba(255,255,255,.10)}.provider-login-stepper article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.11);font:800 11px/1 Aptos,sans-serif}.provider-login-stepper article>div{display:grid}.provider-login-stepper b{font-size:12px}.provider-login-stepper small{font-size:9px;color:rgba(255,255,255,.65)}.provider-login-stepper svg{width:20px;height:20px;opacity:.4}.provider-login-stepper .is-current{background:linear-gradient(110deg,rgba(75,145,255,.30),rgba(128,90,236,.20));border-color:rgba(171,213,255,.28)}.provider-login-stepper .is-current>span{background:#fff;color:var(--v17-blue)}.provider-login-stepper .is-current svg{opacity:1;color:#7cf0bc}
.provider-login-trust{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.provider-login-trust span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:11px;background:rgba(255,255,255,.07);font-size:8.5px;color:rgba(255,255,255,.72)}.provider-login-trust svg{width:14px;height:14px;color:#9fd8ff}
.provider-login-card{margin:auto;width:min(100% - 42px,510px);padding:34px;border:1px solid var(--v17-border);border-radius:30px;background:rgba(255,255,255,.96);box-shadow:var(--v17-shadow)}.provider-login-progress{display:flex;align-items:center;gap:7px;margin-bottom:28px}.provider-login-progress>span{height:5px;flex:1;border-radius:99px;background:#e8edf6}.provider-login-progress>span.active{background:linear-gradient(90deg,var(--v17-blue),var(--v17-purple))}.provider-login-progress b{font-size:9px;color:var(--muted);margin-inline-start:7px}.provider-login-card h2{font-size:30px;margin:8px 0 4px;color:var(--v17-navy)}.provider-login-card>p{margin:0 0 22px;color:var(--muted);font-size:11px}.provider-login-card form{display:grid;gap:15px}.input-with-icon{display:grid;grid-template-columns:22px 1fr;align-items:center;border:1px solid #dce4f1;background:#f9fbff;border-radius:16px;padding-inline:13px;transition:.18s ease}.input-with-icon:focus-within{border-color:var(--v17-blue);box-shadow:0 0 0 4px rgba(36,105,211,.10);background:#fff}.input-with-icon svg{width:18px;height:18px;color:#7d8aa2}.input-with-icon input{border:0;background:transparent;box-shadow:none!important;padding-inline:8px}.provider-login-submit{min-height:53px;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px}.provider-login-submit svg{width:18px;height:18px;transform:scaleX(-1)}
.provider-login-help{margin-top:22px;padding:15px;border-radius:18px;background:#f5f8fd;display:grid;gap:4px}.provider-login-help b{font-size:11px;color:var(--v17-navy)}.provider-login-help span{font-size:9px;color:var(--muted);line-height:1.7}.provider-login-help a{display:inline-flex;align-items:center;gap:5px;margin-top:5px;color:var(--v17-blue);font-size:9px;font-weight:850}.provider-login-help svg{width:15px;height:15px}.provider-login-legal{margin-top:13px;text-align:center;color:#8b93a4;font-size:8px;line-height:1.7}.provider-login-legal b{color:var(--v17-blue)}

.agreement-onboarding-v17{max-width:1060px;margin:0 auto;padding:18px 0 42px}.onboarding-progress-v17{display:flex;align-items:center;justify-content:center;gap:9px;margin:13px auto 22px}.onboarding-progress-v17>div{display:flex;align-items:center;gap:7px;color:#9aa3b3}.onboarding-progress-v17>div span{width:31px;height:31px;display:grid;place-items:center;border:1px solid #dce4f0;border-radius:11px;background:#fff;font:800 10px/1 Aptos,sans-serif}.onboarding-progress-v17>div b{font-size:9px}.onboarding-progress-v17>i{width:55px;height:2px;background:#e1e7f1}.onboarding-progress-v17 .active,.onboarding-progress-v17 .done{color:var(--v17-blue)}.onboarding-progress-v17 .active span{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--v17-blue),var(--v17-purple));box-shadow:0 8px 18px rgba(70,88,205,.22)}.onboarding-progress-v17 .done span{background:#eaf9f3;border-color:#c8eadc;color:#07875c}.onboarding-progress-v17 .done+i{background:linear-gradient(90deg,#8ad5b8,#8da7eb)}
.agreement-hero-v17{display:grid;grid-template-columns:70px 1fr auto;gap:18px;align-items:center;padding:26px;border-radius:30px;background:radial-gradient(circle at 85% 10%,rgba(130,95,236,.40),transparent 28%),linear-gradient(135deg,#11275a,#2259ad);color:#fff;box-shadow:0 24px 62px rgba(20,48,103,.24)}.agreement-hero-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:21px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px)}.agreement-hero-icon svg{width:30px;height:30px}.agreement-hero-v17 small{font-size:9px;color:#a9d7ff;font-weight:850}.agreement-hero-v17 h1{font-size:clamp(25px,4vw,40px);margin:4px 0}.agreement-hero-v17 p{margin:0;font-size:10px;line-height:1.8;color:rgba(255,255,255,.75)}.agreement-version-chip{padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.09);font:700 9px/1 Aptos,sans-serif;direction:ltr}
.agreement-party-v17{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0;padding:18px}.agreement-party-v17 small{font-size:8px;color:var(--secondary);font-weight:850}.agreement-party-v17 h2{margin:2px 0;font-size:19px}.agreement-party-v17 p{margin:0;font-size:9px;color:var(--muted)}
.agreement-essentials-v17{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0}.agreement-essentials-v17 article{display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid var(--v17-border);border-radius:19px;background:#fff;box-shadow:0 12px 32px rgba(28,54,105,.055)}.agreement-essentials-v17 svg{width:21px;height:21px;flex:0 0 auto;color:var(--v17-blue)}.agreement-essentials-v17 article>div{display:grid}.agreement-essentials-v17 b{font-size:10px;color:var(--v17-navy)}.agreement-essentials-v17 span{font-size:8px;color:var(--muted);line-height:1.6}
.agreement-read-v17{padding:20px;margin:12px 0}.agreement-read-head{display:flex;align-items:center;gap:11px}.agreement-read-head>span{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:#eef4ff;color:var(--v17-blue)}.agreement-read-head svg{width:21px;height:21px}.agreement-read-head small{font-size:8px;color:var(--secondary);font-weight:850}.agreement-read-head h3{margin:2px 0}.agreement-read-v17 ul{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}.agreement-read-v17 li{position:relative;padding-inline-start:23px;font-size:9px;color:#4f586c;line-height:1.75}.agreement-read-v17 li:before{content:"✓";position:absolute;inset-inline-start:0;top:2px;width:16px;height:16px;display:grid;place-items:center;border-radius:6px;background:#e8f8f1;color:#0a8a5e;font-size:9px;font-weight:900}
.agreement-sign-v17{max-width:none;margin:12px 0;padding:24px}.agreement-sign-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.agreement-sign-title>span{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--v17-blue),var(--v17-purple));color:#fff;font:800 11px/1 Aptos,sans-serif}.agreement-sign-title small{font-size:8px;color:var(--secondary);font-weight:850}.agreement-sign-title h2{margin:2px 0;font-size:20px}.agreement-submit-v17{min-height:53px;display:flex;justify-content:center;align-items:center;gap:8px}.agreement-submit-v17 svg{width:19px;height:19px}

.biometric-test-ribbon,.biometric-event-test-banner{display:flex;align-items:flex-start;gap:11px;padding:14px 16px;margin-bottom:13px;border-radius:18px;background:linear-gradient(135deg,#fff7e4,#fffaf1);border:1px solid #efd7a1;color:#805400}.biometric-test-ribbon svg,.biometric-event-test-banner svg{width:22px;height:22px;flex:0 0 auto}.biometric-test-ribbon>div,.biometric-event-test-banner>div{display:grid}.biometric-test-ribbon b,.biometric-event-test-banner b{font-size:10px}.biometric-test-ribbon span,.biometric-event-test-banner span{font-size:8.5px;line-height:1.7}.biometric-event-test-banner{margin:0 0 12px}

.legal-modern-v17{max-width:1080px;margin:20px auto 46px}.legal-modern-hero{display:grid;grid-template-columns:1fr 125px;align-items:center;gap:20px;padding:30px;border-radius:32px;background:radial-gradient(circle at 12% 0,rgba(101,177,255,.25),transparent 30%),linear-gradient(135deg,#11275a,#255cac);color:#fff;box-shadow:0 26px 68px rgba(24,54,115,.24);overflow:hidden}.legal-modern-hero img{width:105px;height:105px;border-radius:27px;object-fit:contain;background:#fff;padding:8px;box-shadow:0 18px 35px rgba(0,0,0,.15)}.legal-label{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.10);font-size:8px;font-weight:850}.legal-label svg{width:16px;height:16px}.legal-modern-hero h1{font-size:clamp(28px,5vw,47px);margin:10px 0 5px}.legal-modern-hero p{margin:0;max-width:720px;color:rgba(255,255,255,.74);font-size:11px;line-height:1.9}.legal-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.legal-meta span{padding:6px 9px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(255,255,255,.07);font-size:8px}.face-hero,.provider-legal-hero,.user-legal-hero{grid-template-columns:1fr auto}.face-hero-orb,.legal-doc-orb{width:105px;height:105px;display:grid;place-items:center;border-radius:32px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.13)}.face-hero-orb svg,.legal-doc-orb svg{width:52px;height:52px}.provider-legal-hero{background:radial-gradient(circle at 85% 0,rgba(136,101,236,.38),transparent 30%),linear-gradient(135deg,#122756,#254e9f)}.user-legal-hero{background:radial-gradient(circle at 10% 0,rgba(59,196,233,.32),transparent 30%),linear-gradient(135deg,#11275a,#256b9f)}
.legal-layout-v17{display:grid;grid-template-columns:230px 1fr;gap:13px;margin-top:13px;align-items:start}.legal-index-v17{position:sticky;top:90px;display:grid;gap:5px;padding:17px;border:1px solid var(--v17-border);border-radius:22px;background:#fff;box-shadow:0 15px 40px rgba(26,50,99,.07)}.legal-index-v17>b{padding:4px 6px 9px;color:var(--v17-navy)}.legal-index-v17>a{padding:9px 10px;border-radius:11px;color:#687187;font-size:9px}.legal-index-v17>a:hover{background:#f2f6fd;color:var(--v17-blue)}.legal-index-v17 .download{margin-top:6px;display:flex;align-items:center;gap:6px;background:#eef4ff;color:var(--v17-blue);font-weight:850}.legal-index-v17 svg{width:15px;height:15px}.legal-content-v17{display:grid;gap:9px}.legal-content-v17>section{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:20px;border:1px solid var(--v17-border);border-radius:21px;background:#fff;box-shadow:0 12px 34px rgba(26,50,99,.05);scroll-margin-top:100px}.legal-content-v17>section>span{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#eef4ff;color:var(--v17-blue);font:800 10px/1 Aptos,sans-serif}.legal-content-v17 h2{margin:1px 0 5px;font-size:16px;color:var(--v17-navy)}.legal-content-v17 p{margin:0;color:#5f687b;font-size:9.5px;line-height:1.9}.legal-content-v17 .test-section{background:linear-gradient(145deg,#fffaf0,#fff);border-color:#eddbb6}.legal-inline-note{display:flex;align-items:center;gap:7px;margin-top:10px;padding:9px 10px;border-radius:12px;background:#eef9f5;color:#0b7c59;font-size:8.5px;font-weight:800}.legal-inline-note svg{width:17px;height:17px}
.face-mode-banner{margin:13px 0;padding:18px 20px;border-radius:21px;border:1px solid}.face-mode-banner b{font-size:13px}.face-mode-banner p{margin:4px 0 0;font-size:9px;line-height:1.8}.face-mode-banner.testing{background:#fff7e4;border-color:#efd7a1;color:#805400}.face-mode-banner.approved{background:#eaf9f3;border-color:#bde5d2;color:#087a55}.face-mode-banner.off{background:#f5f7fb;border-color:#dde3ee;color:#687187}
.legal-feature-grid-v17{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:13px 0}.legal-feature-grid-v17 article{display:grid;justify-items:start;gap:5px;padding:16px;border:1px solid var(--v17-border);border-radius:19px;background:#fff;box-shadow:0 12px 32px rgba(26,50,99,.05)}.legal-feature-grid-v17 svg{width:23px;height:23px;color:var(--v17-blue)}.legal-feature-grid-v17 b{font-size:10px;color:var(--v17-navy)}.legal-feature-grid-v17 span{font-size:8px;color:var(--muted);line-height:1.6}.legal-card-v17{padding:26px;border:1px solid var(--v17-border);border-radius:26px;background:#fff;box-shadow:0 16px 46px rgba(26,50,99,.07)}.legal-card-v17 h2{font-size:16px;color:var(--v17-navy);margin:21px 0 5px}.legal-card-v17 h2:first-child{margin-top:0}.legal-card-v17 p{font-size:9.5px;line-height:1.95;color:#5f687b}.legal-card-v17 .legal-actions{margin-top:20px}

@media(max-width:900px){
  .provider-login-v17{grid-template-columns:1fr}.provider-login-story{padding:34px 24px}.provider-login-story h1{font-size:39px}.provider-login-card{margin:0 auto 36px;transform:translateY(-8px)}
  .agreement-essentials-v17,.legal-feature-grid-v17{grid-template-columns:1fr 1fr}.legal-layout-v17{grid-template-columns:1fr}.legal-index-v17{position:static;grid-template-columns:repeat(3,1fr)}.legal-index-v17>b,.legal-index-v17 .download{grid-column:1/-1}
}
@media(max-width:650px){
  .provider-login-v17{min-height:100svh}.provider-login-story{padding:28px 18px 30px}.provider-login-brand{margin-bottom:22px}.provider-login-brand img{width:52px;height:52px}.provider-login-story h1{font-size:32px;letter-spacing:-.8px}.provider-login-story>p{font-size:10px}.provider-login-stepper article{grid-template-columns:37px 1fr 24px;padding:11px}.provider-login-stepper article>span{width:33px;height:33px}.provider-login-trust{display:none}.provider-login-card{width:calc(100% - 24px);padding:23px;border-radius:25px}.provider-login-card h2{font-size:25px}.auth-language{z-index:120}
  .agreement-onboarding-v17{padding-inline:0}.onboarding-progress-v17>div b{display:none}.onboarding-progress-v17>i{width:34px}.agreement-hero-v17{grid-template-columns:48px 1fr;padding:20px;border-radius:25px}.agreement-hero-icon{width:47px;height:47px;border-radius:16px}.agreement-version-chip{grid-column:2;width:max-content}.agreement-party-v17{align-items:flex-start;flex-direction:column}.agreement-party-v17 a{width:100%}.agreement-essentials-v17{grid-template-columns:1fr 1fr}.agreement-essentials-v17 article{padding:12px}.agreement-sign-v17{padding:19px}
  .legal-modern-v17{margin-top:12px}.legal-modern-hero{grid-template-columns:1fr;padding:23px;border-radius:25px}.legal-modern-hero img,.face-hero-orb,.legal-doc-orb{width:76px;height:76px;border-radius:23px;grid-row:1}.legal-modern-hero>div{grid-row:2}.legal-modern-hero h1{font-size:29px}.legal-meta{gap:5px}.legal-index-v17{grid-template-columns:1fr 1fr}.legal-feature-grid-v17{grid-template-columns:1fr 1fr}.legal-content-v17>section{grid-template-columns:35px 1fr;padding:16px}.legal-content-v17>section>span{width:32px;height:32px}.legal-card-v17{padding:19px}
}
@media(max-width:410px){.agreement-essentials-v17,.legal-feature-grid-v17{grid-template-columns:1fr}.provider-login-stepper small{font-size:8px}}

/* =====================================================================
   ONS Moments v1.8 — compact premium polish
   ===================================================================== */
:root{
  --v18-navy:#16265d;
  --v18-blue:#2475d8;
  --v18-cyan:#2aa9dc;
  --v18-purple:#7058df;
  --v18-soft:#f6f8fc;
  --v18-border:rgba(28,54,112,.10);
  --v18-shadow:0 15px 40px rgba(28,54,112,.08);
}

/* Vector icon normalization: never render as oversized black shapes. */
.ons-icon{
  width:18px;
  height:18px;
  display:block;
  flex:0 0 auto;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.75!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  overflow:visible;
}
.ons-icon path,.ons-icon rect,.ons-icon circle,.ons-icon line,.ons-icon polyline,.ons-icon polygon{
  fill:none!important;
  stroke:currentColor!important;
  vector-effect:non-scaling-stroke;
}
.app-nav .ons-icon{width:19px;height:19px}
.stat-icon .ons-icon,.feature-card-icon .ons-icon,.venue-map-icon .ons-icon,.public-venue-icon .ons-icon,.prereg-icon .ons-icon,.service-window-icon .ons-icon{width:20px;height:20px}
.primary-btn .ons-icon,.secondary-btn .ons-icon,button .ons-icon{width:17px;height:17px}

/* More compact cards and typography. */
.workspace-main{padding-bottom:104px}
.card,.form-card,.auth-card,.setup-panel{border-radius:20px}
.app-page-head{padding-top:23px;padding-bottom:14px}
.app-page-head h1{font-size:clamp(24px,3.4vw,36px);margin:2px 0 4px}
.app-page-head p{font-size:10.5px;line-height:1.65}
.stats,.stats.four{gap:9px}
.stats div{min-height:86px;padding:10px 14px;border-radius:18px}
.stats .stat-icon{width:34px;height:34px;border-radius:12px;margin:0 0 5px;background:linear-gradient(145deg,#eef4ff,#f5efff);color:var(--v18-blue)}
.stats b{font-size:20px}.stats small{font-size:8px}

/* Event information and location hierarchy. */
.premium-info-strip{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin:10px 0!important;
}
.premium-info-strip>div{
  min-width:0!important;
  min-height:82px!important;
  display:grid!important;
  grid-template-columns:30px 1fr!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:2px 9px!important;
  padding:12px!important;
  border:1px solid var(--v18-border)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(28,54,112,.045)!important;
}
.premium-info-strip>div>span:first-child{
  grid-row:1/3!important;
  width:30px!important;height:30px!important;
  display:grid!important;place-items:center!important;
  border-radius:10px!important;
  background:#eef4ff!important;color:var(--v18-blue)!important;
}
.premium-info-strip small{font-size:7.5px!important;color:#8991a3!important}
.premium-info-strip b{font-size:10px!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:anywhere!important;min-width:0!important}
.venue-map-button,.public-venue-card{
  min-width:0;
  padding:10px 14px!important;
  gap:11px!important;
  border-radius:18px!important;
}
.venue-map-button>span:nth-child(2),.public-venue-card>span:nth-child(2){min-width:0;display:grid;gap:1px}
.venue-map-button b,.public-venue-card b{font-size:12px!important;line-height:1.45!important;white-space:normal!important;overflow-wrap:anywhere!important}
.venue-map-button em,.public-venue-card em{font-size:8.5px!important;line-height:1.4!important;white-space:normal!important}
.venue-map-icon,.public-venue-icon{width:38px!important;height:38px!important;border-radius:13px!important}

/* QR / FTP cards. */
.event-setup-pro{gap:10px;margin:10px 0}
.setup-panel{padding:17px!important;box-shadow:var(--v18-shadow)!important}
.panel-kicker span{width:32px!important;height:32px!important;border-radius:11px!important}
.panel-kicker b{font-size:10px!important}
.qr-frame{max-width:220px!important;margin:12px auto!important;padding:10px!important;border-radius:18px!important}
.qr-panel h2{font-size:20px!important;margin:5px 0!important}.qr-panel p{font-size:9px!important;line-height:1.6!important}
.credential-list>div{min-height:45px!important;padding:8px 10px!important}.credential-list small{font-size:7px!important}.credential-list code{font-size:9px!important}
.setup-steps{padding:12px!important;border-radius:15px!important}.setup-steps li,.security-note{font-size:8.5px!important}

/* Fixed, reachable mobile bottom bar. */
@media(max-width:999px){
  body.workspace-body{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .workspace-main{padding-bottom:24px!important}
  .app-nav{
    position:fixed!important;
    z-index:1000!important;
    left:50%!important;
    right:auto!important;
    bottom:10px!important;
    top:auto!important;
    transform:translateX(-50%)!important;
    width:min(calc(100% - 20px),760px)!important;
    min-height:64px!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:center!important;
    gap:3px!important;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;
    border:1px solid rgba(28,54,112,.10)!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.94)!important;
    backdrop-filter:blur(24px)!important;
    -webkit-backdrop-filter:blur(24px)!important;
    box-shadow:0 16px 42px rgba(18,38,91,.18)!important;
  }
  .app-nav .nav-identity,.app-nav .nav-foot,.app-nav .nav-desktop-only{display:none!important}
  .app-nav .nav-links{display:contents!important}
  .app-nav a{min-width:0!important;min-height:50px!important;padding:4px 2px!important;border-radius:15px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;color:#7d8495!important}
  .app-nav a>span{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;background:transparent!important;border-radius:10px!important}
  .app-nav a b{font-size:8px!important;line-height:1!important;white-space:nowrap!important}
  .app-nav a.is-active{background:#eef4ff!important;color:var(--v18-blue)!important}
  .app-nav .nav-main-action{transform:none!important;background:linear-gradient(135deg,var(--v18-blue),var(--v18-purple))!important;color:#fff!important;box-shadow:0 9px 22px rgba(61,86,183,.24)!important}
  .app-nav .nav-main-action b{display:block!important;color:#fff!important}
  footer{padding-bottom:18px!important;margin-bottom:76px!important}
}
@media(min-width:1000px){
  .workspace-shell{padding-right:224px!important}
  .app-nav{
    position:fixed!important;
    top:20px!important;bottom:20px!important;right:20px!important;left:auto!important;
    transform:none!important;
    width:194px!important;
    display:flex!important;flex-direction:column!important;
    padding:15px!important;border-radius:28px!important;
    background:linear-gradient(180deg,#13265d,#204d9a 66%,#6655d3)!important;
    border:0!important;box-shadow:0 24px 65px rgba(23,50,111,.24)!important;
  }
  .app-nav .nav-identity{display:flex!important}.app-nav .nav-foot{display:flex!important}.app-nav .nav-links{display:grid!important;gap:5px!important}
  .app-nav a{min-height:44px!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:10px!important;padding:8px 11px!important;border-radius:13px!important;color:rgba(255,255,255,.73)!important}
  .app-nav a>span{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.07)}
  .app-nav a b{font-size:10px!important}.app-nav a.is-active{background:rgba(255,255,255,.14)!important;color:#fff!important}
  .app-nav .nav-main-action{transform:none!important;background:rgba(255,255,255,.13)!important;color:#fff!important;box-shadow:none!important}.app-nav .nav-main-action b{display:block!important}
}

/* Compact face enrollment. */
.selfie-card-v18{max-width:650px!important;padding:22px!important}
.compact-selfie-hero{text-align:center;margin:0 0 15px!important}
.compact-selfie-hero>span{width:52px!important;height:52px!important;border-radius:18px!important;font-size:0!important;margin-bottom:9px!important}
.compact-selfie-hero>span .ons-icon{width:25px;height:25px}
.compact-selfie-hero h1{font-size:26px!important;margin:5px 0!important}.compact-selfie-hero p{font-size:9.5px!important;line-height:1.7!important;max-width:500px;margin:auto!important}
.compact-selfie-form{display:grid;gap:11px!important}
.selfie-capture-card{display:grid;gap:9px}
.selfie-open-button{width:100%;min-height:76px;display:grid!important;grid-template-columns:46px 1fr 18px!important;align-items:center!important;text-align:start!important;gap:11px!important;padding:12px 14px!important;border:1px solid #dce5f3!important;background:linear-gradient(145deg,#f8faff,#f3f7ff)!important;color:var(--v18-navy)!important;box-shadow:none!important}
.selfie-open-button>span:first-child{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--v18-blue),var(--v18-purple));color:#fff}
.selfie-open-button>span:nth-child(2){display:grid;gap:2px}.selfie-open-button b{font-size:11px}.selfie-open-button small{font-size:8px;color:#7c8496}
.selfie-selected{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:10px;padding:9px;border:1px solid #cee9dd;border-radius:17px;background:#f1fbf6}
.selfie-selected img{width:58px;height:58px;object-fit:cover;border-radius:14px}.selfie-selected span{display:grid}.selfie-selected b{font-size:10px}.selfie-selected small{font-size:8px;color:#6b746f}
.selfie-camera-dialog{width:min(94vw,520px);padding:0!important;border-radius:26px!important;background:#0c1430!important;color:#fff!important;overflow:hidden!important}
.selfie-camera-shell{padding:15px}.selfie-camera-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.selfie-camera-head>div{display:grid}.selfie-camera-head small{font-size:8px;color:#9fb3db}.selfie-camera-head b{font-size:12px}.dialog-close{width:36px;height:36px;min-height:0!important;padding:0!important;border-radius:12px!important;background:rgba(255,255,255,.11)!important;color:#fff!important;box-shadow:none!important;font-size:22px!important}
.selfie-video-frame{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:23px;background:#030711}.selfie-video-frame video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.face-guide{position:absolute;inset:13%;border:2px solid rgba(255,255,255,.75);border-radius:45% 45% 42% 42%;box-shadow:0 0 0 999px rgba(4,8,20,.25);pointer-events:none}.face-guide span{position:absolute;inset:12%;border:1px dashed rgba(255,255,255,.38);border-radius:50%}
.camera-status{position:absolute;inset:auto 12px 12px;padding:8px;border-radius:11px;background:rgba(8,14,34,.72);font-size:9px;text-align:center}
.selfie-camera-actions{display:grid;grid-template-columns:1fr 66px 1fr;align-items:center;gap:10px;padding-top:13px}.camera-shutter{width:62px;height:62px;min-height:0!important;padding:0!important;border-radius:50%!important;background:#fff!important;box-shadow:0 0 0 5px rgba(255,255,255,.14)!important}.camera-shutter i{display:block;width:48px;height:48px;margin:auto;border-radius:50%;border:3px solid #1d4f9d;background:linear-gradient(135deg,#2e7ce0,#7058df)}
.compact-privacy-details{border:1px solid #e0e6f0;border-radius:15px;background:#fafbfe;overflow:hidden}.compact-privacy-details summary{display:flex;align-items:center;gap:8px;padding:11px 13px;cursor:pointer;color:var(--v18-navy);font-size:9px;font-weight:850}.compact-privacy-details summary .ons-icon{width:16px;height:16px;color:var(--v18-blue)}
.compact-disclosure{border:0!important;border-top:1px solid #e7ebf2!important;border-radius:0!important;padding:13px!important;background:#fff!important}.compact-disclosure .biometric-test-ribbon{padding:9px!important}.compact-disclosure dl{grid-template-columns:105px 1fr!important;gap:0!important}.compact-disclosure dt,.compact-disclosure dd{padding:6px!important;font-size:7.8px!important}.compact-disclosure .disclosure-head h3{font-size:12px!important}.compact-disclosure .disclosure-head>span{width:34px!important;height:34px!important}.compact-disclosure .disclosure-warning{font-size:8px!important;padding:9px!important}
.compact-consent{display:flex!important;align-items:flex-start!important;gap:9px!important;padding:11px 12px!important;border:1px solid #dce4ef!important;border-radius:14px!important;background:#f8faff!important;color:#4f586d!important;font-size:8.6px!important;font-weight:600!important;line-height:1.65!important}.compact-consent input{width:17px!important;height:17px!important;margin-top:2px!important;flex:0 0 auto!important}.compact-consent a{color:var(--v18-blue)!important;font-weight:850!important}.selfie-submit-button{min-height:48px!important}
.compact-event-card{margin:8px 0!important;padding:12px!important}.compact-event-card>span:first-child{width:38px!important;height:38px!important;border-radius:13px!important}

/* Signature panel. */
.agreement-sign-v18{max-width:none!important;margin:12px 0!important;padding:22px!important}.agreement-sign-title p{margin:2px 0 0;color:var(--muted);font-size:8.5px}
.signature-canvas-card{padding:13px;border:1px solid #dce4f0;border-radius:18px;background:#f8faff}.signature-canvas-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.signature-canvas-head>div{display:grid}.signature-canvas-head small{font-size:8px;color:var(--v18-blue);font-weight:850}.signature-canvas-head b{font-size:11px;color:var(--v18-navy)}
.signature-canvas-card canvas{display:block;width:100%;height:150px;touch-action:none;border:1px dashed #cbd6e6;border-radius:14px;background:#fff}.signature-canvas-card>small{display:block;margin-top:7px;color:#7e8799;font-size:8px}

/* General reductions on small screens. */
@media(max-width:700px){
  main{padding-inline:11px!important}.topbar{height:64px!important;padding:9px 11px!important}.brand img{width:40px!important;height:40px!important;border-radius:13px!important}.brand b{font-size:13px!important}
  .premium-info-strip{grid-template-columns:1fr 1fr!important}.premium-info-strip>div{min-height:70px!important}
  .event-setup-pro{grid-template-columns:1fr!important}.setup-panel{padding:14px!important}
  .event-detail-head .head-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}.event-detail-head .head-actions a{width:100%!important}
  .event-cover{padding:17px!important;border-radius:22px!important}.event-cover h1{font-size:23px!important}
  .event-choice{min-height:75px!important;padding:12px!important;border-radius:18px!important}.choice-icon{width:38px!important;height:38px!important;border-radius:13px!important}.event-choice b{font-size:12px!important}.event-choice small{font-size:8px!important}
  .agreement-essentials-v17{grid-template-columns:1fr 1fr!important}.agreement-essentials-v17 article{padding:10px!important}.agreement-read-v17{padding:15px!important}.agreement-sign-v18{padding:15px!important}
  .signature-canvas-card canvas{height:130px}
}

/* =====================================================================
   ONS Moments v2.0 — stable side navigation + premium compact RTL UI
   ===================================================================== */
:root{
  --v19-navy:#17245a;
  --v19-blue:#1779d4;
  --v19-cyan:#27a8d8;
  --v19-purple:#6757d8;
  --v19-ink:#20243a;
  --v19-muted:#747b8e;
  --v19-line:#e4e9f2;
  --v19-soft:#f5f8fd;
  --v19-card:#ffffff;
  --v19-shadow:0 14px 40px rgba(24,45,97,.075);
  --v19-sidebar:224px;
}

/* Never allow application icons to become large filled black objects. */
.ons-icon{
  inline-size:18px!important;
  block-size:18px!important;
  min-inline-size:18px!important;
  max-inline-size:18px!important;
  min-block-size:18px!important;
  max-block-size:18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.75!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  overflow:visible!important;
}
.ons-icon *{fill:none!important;stroke:currentColor!important;vector-effect:non-scaling-stroke!important}
.stat-icon .ons-icon,.feature-card-icon .ons-icon,.provider-card-mark .ons-icon{inline-size:19px!important;block-size:19px!important}
.app-nav .ons-icon{inline-size:18px!important;block-size:18px!important}

body.workspace-body{overflow-x:hidden!important;background:linear-gradient(145deg,#f6f8fc,#eef3fa)!important}
.workspace-shell{width:100%!important;max-width:none!important;min-height:100vh!important;margin:0!important;background:transparent!important;overflow:visible!important}
.workspace-main{width:100%!important;max-width:1280px!important;margin-inline:auto!important;padding:0 26px 44px!important}
.topbar{width:100%!important;margin:0!important;padding-inline:26px!important;border-radius:0!important}

/* Desktop side list — one stable layout, no bottom navigation. */
.app-nav{
  position:fixed!important;
  z-index:120!important;
  top:18px!important;
  right:18px!important;
  bottom:18px!important;
  left:auto!important;
  transform:none!important;
  width:var(--v19-sidebar)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:16px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#14275d 0%,#1d4c95 61%,#6254ce 100%)!important;
  color:#fff!important;
  box-shadow:0 25px 70px rgba(22,45,101,.24)!important;
  overflow:hidden auto!important;
  overscroll-behavior:contain!important;
}
html[dir="ltr"] .app-nav{right:auto!important;left:18px!important}
.workspace-shell{padding-right:calc(var(--v19-sidebar) + 38px)!important}
html[dir="ltr"] .workspace-shell{padding-right:0!important;padding-left:calc(var(--v19-sidebar) + 38px)!important}
.app-nav .nav-identity{display:flex!important;align-items:center!important;gap:10px!important;padding:3px 3px 14px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
.app-nav .nav-identity img{width:44px!important;height:44px!important;object-fit:contain!important;border-radius:14px!important;background:#fff!important;padding:4px!important}
.app-nav .nav-identity span{display:grid!important;min-width:0!important}
.app-nav .nav-identity b{font-size:12px!important;color:#fff!important;white-space:nowrap!important}
.app-nav .nav-identity small{font-size:8px!important;color:rgba(255,255,255,.62)!important;white-space:nowrap!important}
.app-nav .nav-links{display:grid!important;gap:5px!important;align-content:start!important;flex:1!important}
.app-nav a{
  width:100%!important;
  min-height:43px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:7px 9px!important;
  border-radius:13px!important;
  background:transparent!important;
  color:rgba(255,255,255,.72)!important;
  box-shadow:none!important;
  transform:none!important;
}
.app-nav a>span{width:30px!important;height:30px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:rgba(255,255,255,.075)!important;flex:0 0 auto!important}
.app-nav a b{display:block!important;font-size:10px!important;line-height:1.2!important;color:inherit!important;white-space:nowrap!important}
.app-nav a:hover,.app-nav a.is-active{background:rgba(255,255,255,.14)!important;color:#fff!important}
.app-nav a.is-active>span{background:#fff!important;color:var(--v19-blue)!important;box-shadow:0 8px 20px rgba(5,20,60,.15)!important}
.app-nav .nav-main-action{background:rgba(255,255,255,.10)!important;color:#fff!important}
.app-nav .nav-foot{display:flex!important;align-items:center!important;gap:9px!important;padding:11px!important;border-radius:15px!important;background:rgba(255,255,255,.08)!important}
.nav-secure-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#65e0aa!important;box-shadow:0 0 0 5px rgba(101,224,170,.12)!important}
.app-nav .nav-foot div{display:grid!important}.app-nav .nav-foot b{font-size:9px!important}.app-nav .nav-foot small{font-size:7px!important;color:rgba(255,255,255,.55)!important}
.side-menu-toggle,.side-menu-backdrop{display:none!important}

/* Dashboard shortcuts: remove empty decorative boxes and use real vector icons. */
.admin-shortcuts,.app-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.admin-shortcuts a,.app-shortcuts a{
  min-height:92px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  align-items:center!important;
  gap:2px 11px!important;
  padding:14px!important;
  border:1px solid var(--v19-line)!important;
  border-radius:19px!important;
  background:#fff!important;
  box-shadow:var(--v19-shadow)!important;
  overflow:hidden!important;
}
.admin-shortcuts a:before,.app-shortcuts a:before{display:none!important;content:none!important}
.admin-shortcuts a span,.app-shortcuts a span{display:contents!important;font-size:12px!important;color:var(--v19-navy)!important}
.admin-shortcuts a span .ons-icon,.app-shortcuts a span .ons-icon{
  grid-column:1!important;grid-row:1/3!important;
  width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;
  padding:10px!important;border-radius:13px!important;
  color:var(--v19-blue)!important;background:linear-gradient(145deg,#edf5ff,#f4efff)!important;
}
.admin-shortcuts a span:not(:has(.ons-icon)),.app-shortcuts a span:not(:has(.ons-icon)){display:block!important}
.admin-shortcuts a b,.app-shortcuts a b{grid-column:2!important;font-size:8.5px!important;color:var(--v19-muted)!important;line-height:1.55!important}

/* Compact cards and remove useless decorative empty blocks. */
.card,.form-card,.auth-card,.setup-panel{border-color:var(--v19-line)!important;border-radius:20px!important;box-shadow:var(--v19-shadow)!important}
.stats div{min-height:84px!important;padding:13px 14px!important;border-radius:18px!important}
.stats div:after{width:54px!important;height:54px!important;opacity:.42!important}
.stats .stat-icon{position:relative!important;z-index:2!important;width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:11px!important;background:linear-gradient(145deg,#edf5ff,#f4efff)!important;color:var(--v19-blue)!important}
.service-status{min-height:72px!important;padding:13px!important}

/* Better page heading and spacing. */
.app-page-head{padding:24px 2px 15px!important;gap:13px!important}
.app-page-head h1{font-size:clamp(24px,3vw,35px)!important;line-height:1.25!important}
.app-page-head p{font-size:10px!important;line-height:1.7!important}
.app-page-head:before{height:36px!important;top:25px!important}

/* Agreement and legal pages: true Arabic RTL and polished hierarchy. */
.legal-modern-v19,.agreement-onboarding-v19{direction:rtl!important;text-align:right!important;unicode-bidi:plaintext!important}
.legal-modern-v19 *,.agreement-onboarding-v19 *{text-align:start}
.legal-modern-v19{max-width:1080px!important;margin:24px auto 48px!important}
.legal-modern-hero-v19{
  direction:rtl!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 104px!important;
  align-items:center!important;
  gap:22px!important;
  padding:28px!important;
  border-radius:28px!important;
  background:radial-gradient(circle at 12% 0,rgba(89,174,255,.26),transparent 30%),linear-gradient(135deg,#13285f,#2358a6 62%,#6854d6)!important;
  color:#fff!important;
  box-shadow:0 24px 62px rgba(24,52,109,.22)!important;
}
.legal-modern-hero-v19 h1{font-size:clamp(29px,4vw,44px)!important;margin:8px 0 5px!important;color:#fff!important}
.legal-modern-hero-v19 p{max-width:760px!important;margin:0!important;color:rgba(255,255,255,.77)!important;font-size:10.5px!important;line-height:1.85!important}
.legal-modern-hero-v19 img,.face-hero-orb,.legal-doc-orb{width:92px!important;height:92px!important;border-radius:25px!important;background:#fff!important;padding:8px!important;object-fit:contain!important}
.legal-layout-v19{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:13px!important;margin-top:13px!important;align-items:start!important}
.legal-index-v19{position:sticky!important;top:88px!important;display:grid!important;gap:4px!important;padding:15px!important;border:1px solid var(--v19-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--v19-shadow)!important}
.legal-index-v19>a{padding:9px 10px!important;border-radius:10px!important;color:#687187!important;font-size:9px!important}
.legal-index-v19>a:hover{background:#eef5ff!important;color:var(--v19-blue)!important}
.legal-content-v19{display:grid!important;gap:9px!important}
.legal-content-v19>section{direction:rtl!important;display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important;padding:18px!important;border:1px solid var(--v19-line)!important;border-radius:19px!important;background:#fff!important;box-shadow:0 11px 30px rgba(28,54,112,.045)!important}
.legal-content-v19>section>span{width:35px!important;height:35px!important;display:grid!important;place-items:center!important;border-radius:11px!important;background:#eef5ff!important;color:var(--v19-blue)!important;font-size:9px!important;font-weight:900!important}
.legal-content-v19 h2,.legal-card-v19 h2{text-align:right!important;color:var(--v19-navy)!important}
.legal-content-v19 p,.legal-card-v19 p{text-align:right!important;color:#5d6679!important;font-size:9.5px!important;line-height:1.95!important}
.legal-feature-grid-v19{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:9px!important;margin:12px 0!important}
.legal-feature-grid-v19 article{min-height:108px!important;display:grid!important;align-content:start!important;gap:5px!important;padding:15px!important;border:1px solid var(--v19-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 10px 28px rgba(28,54,112,.045)!important}
.legal-feature-grid-v19 article .ons-icon{color:var(--v19-blue)!important;margin-bottom:4px!important}
.legal-card-v19{direction:rtl!important;padding:24px!important;border:1px solid var(--v19-line)!important;border-radius:23px!important;background:#fff!important;box-shadow:var(--v19-shadow)!important}

/* Agreement onboarding rebuilt to match the signed PDF and the site theme. */
.agreement-onboarding-v19{max-width:1040px!important;margin:22px auto 48px!important}
.agreement-hero-v19{display:grid!important;grid-template-columns:62px minmax(0,1fr) auto!important;gap:16px!important;align-items:center!important;padding:24px!important;border-radius:27px!important;background:radial-gradient(circle at 12% 0,rgba(91,178,255,.28),transparent 28%),linear-gradient(135deg,#13285f,#2359a7 65%,#6754d7)!important;color:#fff!important;box-shadow:0 24px 62px rgba(24,52,109,.22)!important}
.agreement-hero-v19 h1{margin:4px 0!important;font-size:clamp(25px,3.6vw,39px)!important;color:#fff!important}.agreement-hero-v19 p{margin:0!important;color:rgba(255,255,255,.76)!important;font-size:10px!important;line-height:1.8!important}
.agreement-party-v19{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:17px!important;margin:11px 0!important}
.agreement-essentials-v19{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:9px!important;margin:11px 0!important}
.agreement-essentials-v19 article{min-height:88px!important;display:flex!important;align-items:flex-start!important;gap:9px!important;padding:13px!important;border:1px solid var(--v19-line)!important;border-radius:17px!important;background:#fff!important;box-shadow:0 10px 28px rgba(28,54,112,.045)!important}
.agreement-essentials-v19 article .ons-icon{color:var(--v19-blue)!important;margin-top:1px!important}.agreement-essentials-v19 b{font-size:9.5px!important;color:var(--v19-navy)!important}.agreement-essentials-v19 span{font-size:8px!important;color:var(--v19-muted)!important;line-height:1.6!important}
.agreement-read-v19{padding:18px!important;margin:11px 0!important}
.agreement-sign-v19{padding:21px!important;margin:11px 0!important}
.agreement-submit-v19{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}

/* Mobile/tablet: slide-in side list, never a bottom bar. */
@media(max-width:999px){
  .workspace-shell,html[dir="ltr"] .workspace-shell{padding:0!important}
  .workspace-main{max-width:none!important;padding:0 14px 34px!important}
  .topbar{height:68px!important;padding:9px 13px!important;position:sticky!important;top:0!important;z-index:90!important}
  .top-actions .compliance-link,.top-actions>a.icon-btn{display:none!important}
  .side-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:38px!important;padding:8px 10px!important;border:1px solid var(--v19-line)!important;border-radius:12px!important;background:#f5f7fc!important;color:var(--v19-navy)!important;box-shadow:none!important;font-size:9px!important}
  .side-menu-toggle .ons-icon{width:16px!important;height:16px!important}
  .app-nav{
    top:10px!important;right:10px!important;bottom:10px!important;left:auto!important;
    width:min(84vw,300px)!important;
    transform:translateX(calc(100% + 24px))!important;
    transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;
    box-shadow:0 28px 80px rgba(15,34,78,.34)!important;
  }
  html[dir="ltr"] .app-nav{right:auto!important;left:10px!important;transform:translateX(calc(-100% - 24px))!important}
  body.side-menu-open .app-nav{transform:translateX(0)!important}
  .side-menu-backdrop{display:block!important;position:fixed!important;z-index:110!important;inset:0!important;border:0!important;border-radius:0!important;background:rgba(13,23,51,.34)!important;backdrop-filter:blur(3px)!important;opacity:0!important;visibility:hidden!important;transition:.25s ease!important;box-shadow:none!important;padding:0!important;min-height:0!important}
  body.side-menu-open .side-menu-backdrop{opacity:1!important;visibility:visible!important}
  body.side-menu-open{overflow:hidden!important}
  footer{margin:0!important;padding-bottom:24px!important}
  .admin-shortcuts,.app-shortcuts{grid-template-columns:1fr 1fr!important}
  .legal-layout-v19{grid-template-columns:1fr!important}.legal-index-v19{position:static!important;grid-template-columns:repeat(2,1fr)!important}.legal-index-v19>b,.legal-index-v19 .download{grid-column:1/-1!important}
}

@media(max-width:680px){
  .workspace-main{padding-inline:10px!important}
  .brand span{display:none!important}.brand img{width:40px!important;height:40px!important;border-radius:12px!important}
  .language-switch{min-height:36px!important;padding:6px 9px!important}
  .admin-shortcuts,.app-shortcuts{grid-template-columns:1fr!important}
  .admin-shortcuts a,.app-shortcuts a{min-height:64px!important}
  .legal-modern-hero-v19{grid-template-columns:1fr!important;padding:20px!important}.legal-modern-hero-v19 img,.face-hero-orb,.legal-doc-orb{width:68px!important;height:68px!important;grid-row:1!important}.legal-modern-hero-v19>div{grid-row:2!important}.legal-modern-hero-v19 h1{font-size:28px!important}
  .legal-feature-grid-v19{grid-template-columns:1fr 1fr!important}.legal-feature-grid-v19 article{min-height:92px!important;padding:12px!important}
  .legal-content-v19>section{grid-template-columns:32px minmax(0,1fr)!important;padding:14px!important}.legal-content-v19>section>span{width:30px!important;height:30px!important}
  .agreement-hero-v19{grid-template-columns:48px minmax(0,1fr)!important;padding:18px!important}.agreement-version-chip{grid-column:2!important;width:max-content!important}.agreement-party-v19{align-items:flex-start!important;flex-direction:column!important}.agreement-party-v19 a{width:100%!important}.agreement-essentials-v19{grid-template-columns:1fr 1fr!important}.agreement-sign-v19{padding:15px!important}
}

/* =====================================================================
   ONS Moments v2.0 - Modern SaaS documentation + refined operations UI
   ===================================================================== */
:root{
  --v20-ink:#172033;
  --v20-muted:#697386;
  --v20-line:#e4e9f1;
  --v20-soft:#f7f9fc;
  --v20-blue:#246bfd;
  --v20-cyan:#22a8e6;
  --v20-violet:#6b57e7;
  --v20-green:#159a6c;
  --v20-red:#c94343;
  --v20-sidebar:252px;
  --v20-shadow:0 16px 45px rgba(24,37,62,.08);
  --v20-ease:cubic-bezier(.2,.8,.2,1);
}
body.workspace-body{background:#f5f7fb!important}
.workspace-shell{padding-right:calc(var(--v20-sidebar) + 30px)!important;background:transparent!important}
html[dir="ltr"] .workspace-shell{padding-right:0!important;padding-left:calc(var(--v20-sidebar) + 30px)!important}
.workspace-main{max-width:1260px!important;margin:0 auto!important;padding:0 24px 48px!important}
.workspace-shell>.topbar{max-width:1260px!important;margin:12px auto 0!important;border:1px solid var(--v20-line)!important;border-radius:20px!important;box-shadow:0 10px 28px rgba(29,48,84,.055)!important;background:rgba(255,255,255,.92)!important}

/* Refined side list */
.app-nav{
  position:fixed!important;z-index:120!important;top:14px!important;right:14px!important;bottom:14px!important;left:auto!important;
  width:var(--v20-sidebar)!important;height:auto!important;padding:14px!important;
  display:flex!important;flex-direction:column!important;gap:12px!important;
  transform:none!important;border:1px solid rgba(25,45,83,.08)!important;border-radius:24px!important;
  background:rgba(255,255,255,.96)!important;color:var(--v20-ink)!important;
  box-shadow:0 24px 70px rgba(23,41,78,.13)!important;backdrop-filter:blur(20px)!important;
}
html[dir="ltr"] .app-nav{right:auto!important;left:14px!important}
.app-nav .nav-identity{display:flex!important;align-items:center!important;gap:11px!important;padding:4px 5px 14px!important;border-bottom:1px solid var(--v20-line)!important}
.app-nav .nav-identity img{width:42px!important;height:42px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--v20-line)!important;padding:4px!important;box-shadow:0 6px 18px rgba(31,51,88,.08)!important}
.app-nav .nav-identity span{display:grid!important;min-width:0!important}.app-nav .nav-identity b{font-size:12px!important;color:var(--v20-ink)!important}.app-nav .nav-identity small{font-size:8px!important;color:var(--v20-muted)!important}
.app-nav .nav-scroll{display:grid!important;gap:13px!important;overflow:auto!important;padding:0 2px!important;scrollbar-width:thin!important;flex:1!important}
.app-nav .nav-section{display:grid!important;gap:5px!important}.app-nav .nav-section>small{padding:0 9px!important;font-size:7.5px!important;font-weight:900!important;letter-spacing:.3px!important;color:#9aa3b2!important}
.app-nav .nav-links{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;margin:0!important;max-width:none!important}
.app-nav a{
  width:100%!important;min-height:44px!important;height:auto!important;margin:0!important;padding:7px 9px!important;
  display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;align-items:center!important;justify-content:stretch!important;gap:9px!important;
  border-radius:13px!important;background:transparent!important;color:#586274!important;box-shadow:none!important;transform:none!important;
  transition:background .18s var(--v20-ease),color .18s var(--v20-ease),transform .18s var(--v20-ease)!important;
}
.app-nav a:hover{background:#f2f6ff!important;color:var(--v20-blue)!important;transform:translateX(-2px)!important}
html[dir="ltr"] .app-nav a:hover{transform:translateX(2px)!important}
.app-nav a.is-active{background:linear-gradient(135deg,#edf4ff,#f4efff)!important;color:#1f57cb!important;box-shadow:inset 0 0 0 1px rgba(36,107,253,.10)!important}
.app-nav a.is-active:after{content:"";position:absolute;right:-6px;width:3px;height:24px;border-radius:99px;background:linear-gradient(180deg,var(--v20-blue),var(--v20-violet))}
html[dir="ltr"] .app-nav a.is-active:after{right:auto;left:-6px}
.app-nav a>span{width:32px!important;height:32px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#f3f6fb!important;color:#637088!important}
.app-nav a.is-active>span{background:#fff!important;color:var(--v20-blue)!important;box-shadow:0 6px 16px rgba(36,107,253,.13)!important}
.app-nav a .ons-icon{width:17px!important;height:17px!important;stroke-width:1.8!important}.app-nav a b{font-size:9.5px!important;font-weight:800!important;white-space:nowrap!important;color:inherit!important}
.app-nav .nav-main-action{background:linear-gradient(135deg,#eef4ff,#f4efff)!important;color:#245fcf!important}
.app-nav .nav-foot{display:flex!important;align-items:center!important;gap:9px!important;padding:11px!important;border:1px solid var(--v20-line)!important;border-radius:14px!important;background:#f8fafc!important;color:var(--v20-ink)!important}
.app-nav .nav-foot b{font-size:9px!important}.app-nav .nav-foot small{font-size:7px!important;color:var(--v20-muted)!important}.nav-secure-dot{width:8px!important;height:8px!important;background:#20b77a!important;border-radius:50%!important;box-shadow:0 0 0 5px rgba(32,183,122,.10)!important}

/* Request builder + progress */
.request-builder-page,.request-status-page{max-width:980px;margin:22px auto 50px}
.request-builder-head,.request-status-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.request-builder-head h1,.request-status-head h1{margin:4px 0;font-size:clamp(26px,3.4vw,40px);line-height:1.2;color:var(--v20-ink)}.request-builder-head p,.request-status-head p{margin:0;color:var(--v20-muted);font-size:11px}.request-builder-head a,.request-status-head a{color:var(--v20-blue);font-size:10px;font-weight:800}.request-builder-head small,.request-status-head small{display:block;color:var(--v20-blue);font-size:9px;font-weight:900}
.request-price{min-width:180px;padding:15px 17px;border:1px solid var(--v20-line);border-radius:18px;background:#fff;box-shadow:var(--v20-shadow);display:grid;gap:2px}.request-price small{color:var(--v20-muted);font-size:8px}.request-price b{font-size:21px;color:var(--v20-ink)}.request-price span{font-size:7.5px;color:var(--v20-muted)}
.request-progress{position:relative;margin:15px 0 18px;padding:18px 20px;border:1px solid var(--v20-line);border-radius:22px;background:#fff;box-shadow:0 11px 32px rgba(28,48,83,.055)}
.request-progress-track{position:absolute;top:34px;right:9%;left:9%;height:4px;border-radius:99px;background:#edf1f6;overflow:hidden}.request-progress-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--v20-blue),var(--v20-violet));transition:width .35s var(--v20-ease)}
.request-progress-steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.request-progress-steps>div{display:grid;justify-items:center;text-align:center;gap:3px;color:#9aa4b4}.request-progress-steps>div>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#f1f4f8;border:3px solid #fff;box-shadow:0 0 0 1px #e7ebf2;font-size:8px;font-weight:900}.request-progress-steps>div b{font-size:8.5px}.request-progress-steps>div small{font-size:6.8px;line-height:1.35}.request-progress-steps>div.active{color:var(--v20-blue)}.request-progress-steps>div.active>span{background:linear-gradient(135deg,var(--v20-blue),var(--v20-violet));color:#fff;box-shadow:0 8px 20px rgba(36,107,253,.24)}.request-progress-steps>div.done{color:var(--v20-green)}.request-progress-steps>div.done>span{background:#eaf8f2;color:var(--v20-green)}.request-progress-steps .ons-icon{width:14px;height:14px}
.request-wizard-form{display:block!important}.request-wizard{display:grid}.wizard-step{display:none;padding:24px;border:1px solid var(--v20-line);border-radius:24px;background:#fff;box-shadow:var(--v20-shadow)}.wizard-step.is-active{display:block;animation:wizardIn .32s var(--v20-ease)}@keyframes wizardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wizard-step-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.wizard-step-head>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eef4ff;color:var(--v20-blue);font-size:9px;font-weight:900}.wizard-step-head small{color:var(--v20-blue);font-size:8px;font-weight:900}.wizard-step-head h2{margin:2px 0;font-size:20px;color:var(--v20-ink)}.wizard-step-head p{margin:0;color:var(--v20-muted);font-size:9px}
.wizard-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}.option-card{position:relative;display:grid!important;grid-template-columns:40px 1fr!important;align-items:center!important;gap:11px!important;padding:14px!important;border:1px solid var(--v20-line)!important;border-radius:17px!important;background:#fbfcfe!important;cursor:pointer!important}.option-card>input{position:absolute;opacity:0}.option-card>span{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#eef4ff;color:var(--v20-blue)}.option-card .ons-icon{width:18px;height:18px}.option-card div{display:grid;gap:2px}.option-card b{font-size:10px;color:var(--v20-ink)}.option-card small{font-size:7.7px;color:var(--v20-muted);line-height:1.5}.option-card:has(input:checked){border-color:rgba(36,107,253,.30)!important;background:linear-gradient(145deg,#f6f9ff,#fbf9ff)!important;box-shadow:0 8px 22px rgba(36,107,253,.08)}.option-card:has(input:checked)>span{background:linear-gradient(135deg,var(--v20-blue),var(--v20-violet));color:#fff}.option-card.is-disabled{opacity:.52;cursor:not-allowed!important}
.compact-grid textarea{min-height:64px}.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.wizard-actions button{min-width:160px}.request-single-consent{margin:14px 0!important;padding:12px!important;font-size:8.5px!important;background:#f8fafc!important}.request-review{display:grid;grid-template-columns:1fr 1fr;gap:9px}.request-review>div{padding:13px;border:1px solid var(--v20-line);border-radius:15px;background:#fafbfd;display:grid;gap:3px}.request-review small{color:var(--v20-muted);font-size:7.5px}.request-review b{font-size:10px;color:var(--v20-ink);overflow-wrap:anywhere}.request-submit.is-loading{opacity:.75;cursor:wait}.request-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}
.request-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.request-summary-grid article{padding:15px;border:1px solid var(--v20-line);border-radius:17px;background:#fff;display:grid;gap:3px}.request-summary-grid small{font-size:7.5px;color:var(--v20-muted)}.request-summary-grid b{font-size:11px;color:var(--v20-ink)}.request-summary-grid span{font-size:7px;color:var(--v20-green)}
.email-delivery-note{display:flex;align-items:center;gap:11px;padding:10px 14px;margin:12px 0;border-radius:16px;border:1px solid;box-shadow:0 8px 24px rgba(27,45,78,.04)}.email-delivery-note>.ons-icon{width:20px;height:20px}.email-delivery-note>div{display:grid;gap:2px;flex:1}.email-delivery-note b{font-size:9.5px}.email-delivery-note span{font-size:7.5px}.email-delivery-note.sent{background:#effaf5;border-color:#ccebdd;color:#157651}.email-delivery-note.failed{background:#fff7ed;border-color:#f4d5ac;color:#9a5c16}.email-delivery-note form{margin:0}.provider-notice.polished{background:#f6f9ff;border-color:#dfe8f7}.success-card.activated{display:grid;gap:8px}.success-card.activated .primary-btn{width:max-content}

/* Documentation-inspired legal pages */
.legal-modern-v19{max-width:1120px!important;margin:24px auto 56px!important;color:var(--v20-ink)!important}.legal-modern-hero-v19{grid-template-columns:minmax(0,1fr) 88px!important;padding:30px!important;border-radius:26px!important;background:#fff!important;color:var(--v20-ink)!important;border:1px solid var(--v20-line)!important;box-shadow:var(--v20-shadow)!important}.legal-modern-hero-v19:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--v20-blue),var(--v20-violet));border-radius:26px 0 0 26px}.legal-modern-hero-v19 h1{color:var(--v20-ink)!important;font-size:clamp(30px,4vw,46px)!important;letter-spacing:-.6px!important}.legal-modern-hero-v19 p{color:var(--v20-muted)!important;font-size:11px!important;max-width:780px!important}.legal-modern-hero-v19 img,.legal-doc-orb,.face-hero-orb{width:76px!important;height:76px!important;border:1px solid var(--v20-line)!important;background:#fff!important;box-shadow:0 10px 26px rgba(28,47,82,.08)!important;color:var(--v20-blue)!important}.legal-label{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#eef4ff;color:var(--v20-blue);font-size:8px;font-weight:900}.legal-label .ons-icon{width:14px;height:14px}.legal-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.legal-meta span{padding:6px 9px;border:1px solid var(--v20-line);border-radius:999px;background:#fafbfd;color:var(--v20-muted)!important;font-size:7px!important}
.legal-layout-v19{grid-template-columns:230px minmax(0,1fr)!important;gap:18px!important;margin-top:18px!important}.legal-index-v19{top:92px!important;border-radius:18px!important;padding:12px!important;box-shadow:none!important}.legal-index-v19>b{font-size:8px;color:var(--v20-ink);padding:6px 8px}.legal-index-v19>a{font-size:8px!important;padding:8px 9px!important}.legal-content-v19{gap:11px!important}.legal-content-v19>section{grid-template-columns:32px minmax(0,1fr)!important;padding:20px!important;border-radius:18px!important;box-shadow:none!important}.legal-content-v19>section>span{width:30px!important;height:30px!important;border-radius:9px!important;font-size:8px!important}.legal-content-v19 h2{font-size:16px!important;margin:0 0 5px!important}.legal-content-v19 p,.legal-card-v19 p{font-size:9.7px!important;line-height:1.95!important}.legal-card-v19{border-radius:20px!important;box-shadow:none!important}.legal-feature-grid-v19{grid-template-columns:repeat(4,1fr)!important}.legal-feature-grid-v19 article{min-height:100px!important;border-radius:17px!important;box-shadow:none!important}.legal-actions{border-top:1px solid var(--v20-line);padding-top:16px}
.agreement-onboarding-v19{max-width:1050px!important}.agreement-hero-v19{background:#fff!important;color:var(--v20-ink)!important;border:1px solid var(--v20-line)!important;box-shadow:var(--v20-shadow)!important}.agreement-hero-v19 h1{color:var(--v20-ink)!important}.agreement-hero-v19 p{color:var(--v20-muted)!important}.agreement-version-chip{background:#eef4ff!important;color:var(--v20-blue)!important}.agreement-hero-icon{background:linear-gradient(135deg,#edf4ff,#f3efff)!important;color:var(--v20-blue)!important}.agreement-essentials-v19 article,.agreement-read-v19,.agreement-sign-v19{box-shadow:none!important}

@media(max-width:1100px){
  .workspace-shell,html[dir="ltr"] .workspace-shell{padding:0!important}.workspace-main{padding:0 16px 40px!important}.workspace-shell>.topbar{margin:8px 10px 0!important}
  .app-nav{top:10px!important;right:10px!important;bottom:10px!important;width:min(86vw,290px)!important;transform:translateX(calc(100% + 24px))!important;transition:transform .28s var(--v20-ease)!important}.app-nav .nav-section>small{display:block!important}
  html[dir="ltr"] .app-nav{right:auto!important;left:10px!important;transform:translateX(calc(-100% - 24px))!important}.side-menu-open .app-nav{transform:translateX(0)!important}
  .side-menu-toggle{display:inline-flex!important}.request-summary-grid{grid-template-columns:1fr 1fr}.legal-layout-v19{grid-template-columns:1fr!important}.legal-index-v19{position:static!important}
}
@media(max-width:700px){
  .request-builder-head,.request-status-head{align-items:flex-start;flex-direction:column}.request-price{width:100%}.request-progress{padding:15px 8px}.request-progress-track{right:12%;left:12%;top:30px}.request-progress-steps>div small{display:none}.request-progress-steps>div b{font-size:7px}.request-progress-steps>div>span{width:30px;height:30px}.wizard-step{padding:16px}.wizard-options-grid,.request-review,.request-summary-grid{grid-template-columns:1fr}.wizard-actions{align-items:stretch;flex-direction:column-reverse}.wizard-actions button{width:100%}.legal-feature-grid-v19{grid-template-columns:1fr 1fr!important}.legal-modern-hero-v19{grid-template-columns:1fr!important;padding:22px!important}.legal-modern-hero-v19 img,.legal-doc-orb,.face-hero-orb{grid-row:1!important;width:62px!important;height:62px!important}.legal-modern-hero-v19>div{grid-row:2!important}.request-progress-steps>div:nth-child(2) small,.request-progress-steps>div:nth-child(3) small{display:none}
}


/* =====================================================================
   ONS Moments 2.0 final polish - SaaS side list, account, wizard, portrait selfie
   ===================================================================== */
:root{--v20-side:#ffffff;--v20-side-line:#e5eaf2;--v20-side-ink:#172033;--v20-side-muted:#7b8495;--v20-blue:#246bfd;--v20-violet:#6b57e7;--v20-green:#168b64;--v20-red:#bd3f48;--v20-shadow:0 18px 55px rgba(30,45,75,.09);--v20-ease:cubic-bezier(.2,.8,.2,1)}
body.workspace-body{background:#f5f7fb!important}
.workspace-shell{padding-right:274px!important}
html[dir="ltr"] .workspace-shell{padding-right:0!important;padding-left:274px!important}
.workspace-main{max-width:1240px!important;padding:0 28px 52px!important}
.app-nav{top:14px!important;right:14px!important;bottom:14px!important;width:246px!important;padding:14px!important;gap:12px!important;border:1px solid var(--v20-side-line)!important;border-radius:24px!important;background:rgba(255,255,255,.96)!important;color:var(--v20-side-ink)!important;box-shadow:0 22px 70px rgba(24,37,65,.12)!important;backdrop-filter:blur(20px)!important;overflow:hidden!important}
html[dir="ltr"] .app-nav{right:auto!important;left:14px!important}
.app-nav .nav-identity{padding:5px 5px 16px!important;border-bottom:1px solid var(--v20-side-line)!important}
.app-nav .nav-identity img{width:42px!important;height:42px!important;border:1px solid var(--v20-side-line)!important;box-shadow:none!important}
.app-nav .nav-identity b{font-size:12px!important;color:var(--v20-side-ink)!important}.app-nav .nav-identity small{font-size:8px!important;color:var(--v20-side-muted)!important}
.app-nav .nav-scroll{display:grid!important;gap:13px!important;overflow-y:auto!important;padding:1px 1px 8px!important;scrollbar-width:none!important}.app-nav .nav-scroll::-webkit-scrollbar{display:none}
.app-nav .nav-section{display:grid!important;gap:5px!important}.app-nav .nav-section>small{padding:0 8px!important;color:#9aa2b1!important;font-size:7.5px!important;font-weight:900!important;letter-spacing:.3px!important}
.app-nav .nav-links{display:grid!important;gap:3px!important}
.app-nav a{min-height:42px!important;padding:6px 8px!important;border-radius:12px!important;color:#5f6879!important;transition:.18s var(--v20-ease)!important}
.app-nav a>span{width:30px!important;height:30px!important;border-radius:10px!important;background:#f4f6fa!important;color:#6f7889!important}
.app-nav a b{font-size:9.5px!important}.app-nav a:hover{background:#f4f7fc!important;color:var(--v20-side-ink)!important}.app-nav a.is-active{background:linear-gradient(135deg,#edf4ff,#f3efff)!important;color:#1f56c7!important}.app-nav a.is-active>span{background:#fff!important;color:var(--v20-blue)!important;box-shadow:0 6px 16px rgba(36,107,253,.12)!important}
.app-nav .nav-main-action{background:linear-gradient(135deg,var(--v20-blue),var(--v20-violet))!important;color:#fff!important;margin:2px 0!important}.app-nav .nav-main-action>span{background:rgba(255,255,255,.17)!important;color:#fff!important}.app-nav .nav-main-action:hover{filter:saturate(1.08)!important;color:#fff!important}
.app-nav .nav-foot{padding:10px!important;border:1px solid var(--v20-side-line)!important;background:#f7f9fc!important}.app-nav .nav-foot b{color:var(--v20-side-ink)!important}.app-nav .nav-foot small{color:var(--v20-side-muted)!important}
.topbar{min-height:70px!important;padding:10px 28px!important;background:rgba(245,247,251,.86)!important;border-bottom:0!important}

/* Admin home - focused and useful */
.admin-home-v20{padding-top:10px}.admin-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 0 15px}.admin-home-head small{color:var(--v20-blue);font-size:9px;font-weight:900}.admin-home-head h1{margin:4px 0;font-size:clamp(27px,3.4vw,42px);letter-spacing:-.8px}.admin-home-head p{margin:0;color:#768093;font-size:11px}.admin-essential-stats{margin-bottom:12px}.admin-home-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:12px;margin:12px 0}.admin-attention-card,.admin-services-card{padding:19px}.card-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.card-title-row small{color:var(--v20-blue);font-size:8px;font-weight:900}.card-title-row h2{margin:2px 0;font-size:18px}.card-title-row>a{color:var(--v20-blue);font-size:9px;font-weight:850}.dashboard-request-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border-radius:14px;border:1px solid #e8edf4;background:#fbfcfe;margin-top:7px}.dashboard-request-row>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#eef4ff;color:var(--v20-blue)}.dashboard-request-row b{display:block;font-size:10px}.dashboard-request-row small{display:block;color:#7d8697;font-size:8px;margin-top:2px}.dashboard-request-row em{font-style:normal;color:var(--v20-blue);font-size:8px;font-weight:900}.service-mini-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #edf0f5}.service-mini-row:first-of-type{border-top:0}.service-mini-row b{font-size:10px}.service-mini-row small{display:block;color:#7d8697;font-size:8px;margin-top:2px}

/* Provider account */
.provider-account-v20{max-width:1040px;margin:18px auto 52px}.provider-account-hero{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:15px;padding:22px;border-radius:24px;background:linear-gradient(135deg,#172c66,#285ab2 64%,#705bdd);color:#fff;box-shadow:0 20px 55px rgba(35,74,154,.20)}.provider-account-brandmark{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:rgba(255,255,255,.14)}.provider-account-brandmark .ons-icon{width:24px!important;height:24px!important}.provider-account-hero small{font-size:8px;color:#bfe1ff;font-weight:900}.provider-account-hero h1{margin:3px 0;font-size:clamp(25px,3.2vw,38px)}.provider-account-hero p{margin:0;color:rgba(255,255,255,.72);font-size:9px}.provider-account-hero .secondary-btn{background:#fff!important;border:0!important;color:#1e4d9e!important}.account-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:11px 0}.account-kpis article{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #e5eaf2;border-radius:17px;background:#fff;box-shadow:0 10px 30px rgba(26,45,79,.05)}.account-kpis article>span{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#eff4ff;color:var(--v20-blue)}.account-kpis b{font-size:17px}.account-kpis small{display:block;color:#7c8597;font-size:8px}.account-columns-v20{display:grid;grid-template-columns:1.05fr .95fr;gap:11px}.account-company-card,.account-agreement-card,.account-preferences-card{padding:19px}.account-section-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.account-section-head>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eef4ff;color:var(--v20-blue)}.account-section-head small{font-size:8px;color:#7b8495}.account-section-head h2{margin:1px 0;font-size:16px}.account-company-card dl{display:grid;grid-template-columns:135px minmax(0,1fr);margin:0}.account-company-card dt,.account-company-card dd{margin:0;padding:10px 4px;border-bottom:1px solid #edf0f4;font-size:9px}.account-company-card dt{color:#7d8697}.account-company-card dd{font-weight:800}.account-agreement-card p{font-size:9px;color:#707a8d;line-height:1.8}.account-agreement-card.is-accepted{border-color:#d4ece1!important}.account-agreement-card.is-pending{border-color:#f2dfbc!important}.account-agreement-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.account-preferences-card{margin-top:11px}.account-preference-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #edf0f5}.account-preference-row:first-of-type{border-top:0}.account-preference-row b{font-size:10px}.account-preference-row small{display:block;color:#7d8697;font-size:8px;margin-top:2px}.account-preference-row>a{display:inline-flex;align-items:center;gap:5px;color:var(--v20-blue);font-size:9px;font-weight:850}.preference-status{font-style:normal;padding:5px 9px;border-radius:99px;font-size:8px;font-weight:900}.preference-status.on{background:#eaf8f2;color:#168b64}.preference-status.off{background:#f2f4f7;color:#7a8292}.account-logout-v20{text-align:center;margin-top:18px}

/* Request progress and wizard */
.request-progress{overflow:hidden}.request-progress-track{height:5px!important}.request-progress-track i{box-shadow:0 0 14px rgba(36,107,253,.28)}.request-progress-steps>div>span{transition:.24s var(--v20-ease)}.request-progress-steps>div.active>span{transform:translateY(-2px)}.wizard-step{animation:wizardIn .28s var(--v20-ease)}@keyframes wizardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.request-submit.is-loading{cursor:wait;opacity:.82}.request-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}.email-delivery-note{display:flex;align-items:center;gap:11px;padding:14px;border-radius:16px;margin:12px 0;border:1px solid}.email-delivery-note>.ons-icon{width:20px!important;height:20px!important}.email-delivery-note>div{flex:1}.email-delivery-note b{font-size:10px}.email-delivery-note span{display:block;font-size:8px;margin-top:2px}.email-delivery-note.sent{background:#eefaf5;border-color:#cceadd;color:#177b59}.email-delivery-note.failed{background:#fff5f3;border-color:#f0d3ce;color:#9f3c43}

/* Portrait selfie camera */
.selfie-camera-dialog{width:min(94vw,430px)!important;max-width:430px!important;padding:0!important;border-radius:28px!important;background:#111827!important}.selfie-camera-shell{padding:14px!important}.selfie-video-frame{aspect-ratio:3/4!important;max-height:72vh!important;border-radius:22px!important;background:#080d18!important}.selfie-video-frame video{width:100%!important;height:100%!important;object-fit:cover!important}.face-guide{inset:10% 17%!important;border-radius:46% 46% 42% 42% / 38% 38% 52% 52%!important}.selfie-selected img{width:58px!important;height:78px!important;object-fit:cover!important;border-radius:14px!important}.selfie-camera-head{color:#fff!important}.selfie-camera-head small{color:#9fb6d9!important}.dialog-close{background:rgba(255,255,255,.12)!important;color:#fff!important}.selfie-camera-actions{grid-template-columns:1fr auto 1fr!important}.camera-shutter{width:62px!important;height:62px!important}.camera-shutter i{width:48px!important;height:48px!important}

/* Compliance diagnostics */
.compliance-test-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:16px;margin-bottom:11px;border:1px solid}.compliance-test-result b{font-size:10px}.compliance-test-result span{font-size:8px}.compliance-test-result.ok{background:#eefaf5;border-color:#cceadd;color:#177b59}.compliance-test-result.failed{background:#fff5f3;border-color:#f0d3ce;color:#9f3c43}

@media(max-width:1000px){.workspace-shell{padding-right:0!important;padding-left:0!important}.workspace-main{padding:0 16px 42px!important}.app-nav{right:10px!important;left:auto!important;top:10px!important;bottom:10px!important;width:min(84vw,280px)!important;transform:translateX(calc(100% + 24px))!important}.side-menu-open .app-nav{transform:translateX(0)!important}html[dir="ltr"] .app-nav{left:10px!important;right:auto!important;transform:translateX(calc(-100% - 24px))!important}html[dir="ltr"] .side-menu-open .app-nav{transform:translateX(0)!important}.side-menu-toggle{display:inline-flex!important}.admin-home-grid,.account-columns-v20{grid-template-columns:1fr}.topbar{padding-inline:15px!important}}
@media(max-width:650px){.provider-account-hero{grid-template-columns:48px minmax(0,1fr);padding:18px}.provider-account-hero>a{grid-column:1/-1;width:100%}.account-kpis{grid-template-columns:1fr}.account-company-card dl{grid-template-columns:1fr}.account-company-card dt{padding-bottom:2px;border-bottom:0}.account-company-card dd{padding-top:2px}.account-preference-row{align-items:flex-start;flex-direction:column}.admin-home-head{align-items:flex-start;flex-direction:column}.admin-home-head .head-actions{width:100%}.admin-home-head .head-actions a{flex:1}.request-progress-steps>div small{display:none}.request-progress-steps>div b{font-size:7px}.selfie-camera-dialog{width:calc(100vw - 18px)!important}.selfie-video-frame{max-height:68vh!important}}

/* =========================================================
   ONS Moments 2.1 - compact navigation, progress and recovery
   ========================================================= */
:root{--v21-blue:#246bfd;--v21-violet:#7559df;--v21-ink:#17213a;--v21-muted:#778196;--v21-line:#e5eaf2;--v21-shadow:0 14px 36px rgba(30,50,90,.07)}

/* Side list: tighter rhythm, clearer groups, no empty vertical gaps. */
.app-nav{padding:14px!important;gap:8px!important}
.app-nav .nav-identity{padding:3px 4px 12px!important;margin:0!important;border-bottom:1px solid rgba(25,50,105,.08)!important}
.app-nav .nav-scroll{display:flex!important;flex-direction:column!important;gap:8px!important;padding:2px 0!important;overflow-y:auto!important;overscroll-behavior:contain!important}
.app-nav .nav-section{display:grid!important;gap:4px!important;margin:0!important;padding:0!important}
.app-nav .nav-section>small{margin:0!important;padding:5px 8px 2px!important;font-size:7px!important;line-height:1.2!important;letter-spacing:.08em!important;color:#98a1b2!important;text-transform:none!important}
.app-nav .nav-links{display:grid!important;gap:3px!important}
.app-nav .nav-links a{min-height:42px!important;padding:7px 8px!important;gap:8px!important;border-radius:12px!important;margin:0!important}
.app-nav .nav-links a>span{width:28px!important;height:28px!important;border-radius:9px!important}
.app-nav .nav-links a b{font-size:9px!important;line-height:1.15!important}
.app-nav .nav-foot{margin-top:auto!important;padding:9px 10px!important;border-radius:13px!important}

/* Modern back action. */
.back-button{display:inline-flex!important;align-items:center!important;gap:6px!important;width:max-content!important;min-height:34px!important;padding:7px 11px!important;border:1px solid var(--v21-line)!important;border-radius:11px!important;background:#fff!important;color:#4d5870!important;font-size:9px!important;font-weight:850!important;box-shadow:0 6px 18px rgba(30,50,90,.045)!important;transition:.2s ease!important}
.back-button:hover{transform:translateY(-1px)!important;border-color:#cfd8e8!important;color:var(--v21-blue)!important;box-shadow:0 10px 24px rgba(36,107,253,.10)!important}
.back-button .ons-icon{width:15px!important;height:15px!important;transform:rotate(180deg)!important}
html[dir="ltr"] .back-button .ons-icon{transform:none!important}

/* Forgot-password rows and recovery cards. */
.forgot-row{display:flex;justify-content:flex-start;margin:-3px 0 9px}
.forgot-row a{font-size:9px;font-weight:850;color:var(--v21-blue)}
.password-reset-card{max-width:480px!important;padding:26px!important}
.password-reset-card>small{display:block;color:var(--v21-blue);font-size:8px;font-weight:900;margin:5px 0}
.password-reset-card h1{margin:4px 0 7px!important;font-size:clamp(24px,4vw,34px)!important}
.password-reset-card p{font-size:10px!important;line-height:1.8!important;color:var(--v21-muted)!important}
.password-reset-card .back-button{margin-top:14px!important}
.security-mini-note{margin-top:15px;padding:10px 12px;border-radius:12px;background:#f5f7fb;color:#7b8496;font-size:8px;line-height:1.7}
.password-reset-success .success-orb{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 12px;border-radius:18px;background:linear-gradient(145deg,#e9f8f1,#eff6ff);color:#168b64}
.password-reset-success .success-orb .ons-icon{width:25px!important;height:25px!important}

/* Full-page premium progress overlay for long operations. */
.global-progress-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;background:rgba(14,24,48,.42);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.global-progress-overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}
.global-progress-card{width:min(92vw,430px);padding:28px;border-radius:28px;background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.78);box-shadow:0 32px 90px rgba(7,19,48,.28);text-align:center;animation:v21ProgressIn .28s cubic-bezier(.2,.75,.2,1)}
@keyframes v21ProgressIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.global-progress-logo{width:62px;height:62px;margin:0 auto 13px;padding:7px;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(30,54,110,.10)}
.global-progress-logo img{width:100%;height:100%;object-fit:contain;border-radius:12px}
.global-progress-card>small{display:block;color:var(--v21-blue);font-size:8px;font-weight:900;letter-spacing:.04em}
.global-progress-card h2{margin:5px 0 6px;font-size:22px;color:var(--v21-ink)}
.global-progress-card p{margin:0;color:var(--v21-muted);font-size:9.5px;line-height:1.7}
.global-progress-track{height:7px;margin:20px 0 8px;border-radius:999px;background:#edf1f7;overflow:hidden}
.global-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--v21-blue),#1eb8dc,var(--v21-violet));box-shadow:0 0 18px rgba(36,107,253,.28);transition:width .3s ease}
.global-progress-percent{direction:ltr;color:#667085;font:800 9px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.progress-locked{overflow:hidden!important}
form[data-ons-progress] button.is-loading{cursor:wait!important;opacity:.82!important}

/* WhatsApp support CTA. */
.provider-login-help a[href*="wa.me"],a.whatsapp-support{background:#eefaf5!important;color:#11845d!important;border:1px solid #cfeadd!important;border-radius:11px!important;padding:8px 10px!important}

/* Camera credentials intentionally short and camera-friendly. */
.camera-credential-row code,.ftp-value{font-family:"SFMono-Regular",Consolas,monospace!important;letter-spacing:.14em!important;font-weight:850!important}

@media(max-width:1000px){
  .app-nav{gap:6px!important;padding:12px!important}
  .app-nav .nav-links a{min-height:41px!important}
}
@media(max-width:650px){
  .global-progress-card{padding:23px;border-radius:24px}
  .global-progress-card h2{font-size:20px}
  .password-reset-card{padding:21px!important}
}

/* ONS Moments 2.3 - compact face search, native photo saving and FTPS-only uploads */
.status.request-cancelled,.status.cancelled{background:#eef0f3!important;color:#667085!important;border-color:#d9dde4!important}
.status.request-pending{background:#fff5d8!important;color:#8b5e00!important;border-color:#efd892!important}
.status.request-rejected{background:#ffeceb!important;color:#b42318!important;border-color:#f3c4c0!important}
.status.request-approved{background:#eaf8f1!important;color:#087a55!important;border-color:#bfe4d3!important}

.global-progress-spinner{position:relative;width:72px;height:72px;margin:23px auto 1px;display:grid;place-items:center}
.global-progress-spinner:before{content:"";position:absolute;inset:2px;border-radius:50%;border:5px solid rgba(36,107,253,.12);border-top-color:var(--v21-blue,#246bfd);border-right-color:var(--secondary,#0b8ed6);animation:onsCircularLoader .85s linear infinite}
.global-progress-spinner i{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--secondary,#0b8ed6);box-shadow:0 0 18px rgba(11,142,214,.45);animation:onsLoaderPulse 1.2s ease-in-out infinite}
.global-progress-spinner i:nth-child(2){animation-delay:.15s;transform:translateX(-20px)}
.global-progress-spinner i:nth-child(3){animation-delay:.3s;transform:translateX(20px)}
@keyframes onsCircularLoader{to{transform:rotate(360deg)}}
@keyframes onsLoaderPulse{0%,100%{opacity:.25;scale:.72}50%{opacity:1;scale:1}}

.inline-face-panel{margin:18px 0 22px;padding:22px;border:1px solid #dfe5f0;border-radius:26px;background:linear-gradient(145deg,#fff,#f6f8ff);box-shadow:0 18px 46px rgba(32,52,100,.08);scroll-margin-top:90px}
.inline-face-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.inline-face-heading>span{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,#eceaff,#edf8ff);color:var(--primary);flex:none}
.inline-face-heading>span svg{width:26px;height:26px}
.inline-face-heading small,.photo-folder-head small,.face-ready-card small{color:var(--secondary);font-size:9px;font-weight:900}
.inline-face-heading h2,.photo-folder-head h2{margin:2px 0 3px;font-size:20px;color:var(--primary)}
.inline-face-heading p,.photo-folder-head p,.face-ready-card p{margin:0;color:var(--muted);line-height:1.65}
.inline-account-choice{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:19px;background:#fff;border:1px solid #e4e9f2}
.inline-account-choice>div:last-child{display:flex;gap:9px;flex-wrap:wrap}
.inline-account-choice b{display:block;color:var(--primary);margin-bottom:4px}.inline-account-choice p{margin:0;color:var(--muted)}
.inline-face-form{display:grid;gap:15px}.face-ready-card{display:flex;align-items:center;gap:13px;padding:16px 17px;border-radius:19px;background:#fff;border:1px solid #e1e7f0}
.face-ready-card>span{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:#eef5ff;color:var(--secondary);flex:none}.face-ready-card>span svg{width:23px;height:23px}
.face-ready-card b{display:block;font-size:14px;color:var(--primary);margin:1px 0 3px}

.my-photo-folder{background:linear-gradient(145deg,#f8f6ff,#fff 48%,#f5fbff);border-color:#d8d5ef}
.photo-folder-head{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px;border-radius:21px;background:#fff;border:1px solid #e0e4ef;box-shadow:0 10px 28px rgba(33,48,93,.06)}
.folder-icon{width:56px;height:48px;display:grid;place-items:center;border-radius:13px 13px 16px 16px;background:linear-gradient(145deg,#322365,#0b8ed6);color:#fff;position:relative}
.folder-icon:before{content:"";position:absolute;top:-7px;right:7px;width:24px;height:10px;border-radius:6px 6px 0 0;background:#443783}
.folder-icon svg{width:26px;height:26px;position:relative;z-index:1}
.matched-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px}
.matched-photo-item{position:relative;min-width:0}.matched-photo-item .photo{width:100%;aspect-ratio:4/5;border-radius:18px;overflow:hidden;padding:0;background:#eef1f6;box-shadow:0 8px 22px rgba(22,38,78,.08)}
.matched-photo-item .photo img{width:100%;height:100%;object-fit:cover;display:block}
.matched-photo-download{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:7px;min-height:34px;border-radius:11px;background:#fff;border:1px solid #dfe5ef;color:var(--primary);font-size:9px;font-weight:900}
.matched-photo-download svg{width:15px;height:15px}.folder-privacy-actions{margin-top:15px;padding:10px 14px;border-radius:15px;background:rgba(255,255,255,.7);border:1px solid #e2e5ed}.folder-privacy-actions summary{cursor:pointer;font-weight:900;color:var(--primary)}
.face-inline-state{margin:0!important}

.request-success-dialog{width:min(92vw,470px);padding:28px!important;border-radius:28px!important;text-align:center!important;background:#fff!important;color:var(--text)!important}
.request-success-dialog .dialog-close{position:absolute;left:14px;top:14px;color:#344054!important;background:#f2f4f7!important}
.success-dialog-icon{width:70px;height:70px;margin:0 auto 13px;display:grid;place-items:center;border-radius:23px;background:linear-gradient(145deg,#e9fbf2,#eff8ff);color:#087a55}.success-dialog-icon svg{width:35px;height:35px}.request-success-dialog>small{color:var(--secondary);font-weight:900}.request-success-dialog h2{margin:6px 0 7px;color:var(--primary)}.request-success-dialog p{color:var(--muted);line-height:1.8}

.security-note.secure-note{background:#eaf8f2!important;border-color:#bee6d3!important;color:#096a4e!important}.security-note.insecure-note{background:#fff5e9!important;border-color:#eed3a6!important;color:#865a10!important}
.agreement-file-actions{display:flex;gap:8px;flex-wrap:wrap}.agreement-file-actions a{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:900;color:var(--secondary)}.agreement-file-actions svg{width:15px;height:15px}
[data-company-only][hidden]{display:none!important}.provider-delete-zone{margin-top:22px}

html[dir="ltr"] .folder-icon:before{right:auto;left:7px}
html[dir="ltr"] .request-success-dialog .dialog-close{left:auto;right:14px}

@media(max-width:850px){.matched-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-folder-head{grid-template-columns:52px minmax(0,1fr)}.photo-folder-head>.primary-btn{grid-column:1/-1;width:100%}.inline-account-choice{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.inline-face-panel{padding:15px;border-radius:22px}.inline-face-heading{align-items:flex-start}.inline-face-heading>span{width:44px;height:44px;border-radius:14px}.inline-face-heading h2,.photo-folder-head h2{font-size:17px}.matched-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.photo-folder-head{padding:14px;gap:11px}.folder-icon{width:48px;height:43px}.inline-account-choice>div:last-child{width:100%}.inline-account-choice a{flex:1;text-align:center}}
.security-note.disabled-note {
  border-color: rgba(217, 119, 6, .32);
  background: rgba(251, 191, 36, .12);
  color: #9a5a00;
}

/* ONS Moments v2.4 - compact face-search dropdown, live results, and native photo-album saving */
.event-face-dropdown{margin:0 0 18px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:var(--soft-shadow);overflow:hidden}
.event-face-dropdown>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:16px 17px;min-height:84px;cursor:pointer;user-select:none}
.event-face-dropdown>summary::-webkit-details-marker{display:none}
.event-face-dropdown>summary>span:not(.choice-icon){display:flex;flex-direction:column;gap:3px;flex:1}
.event-face-dropdown>summary b{font-size:15px;color:var(--primary)}
.event-face-dropdown>summary small{font-size:10px;line-height:1.6;color:var(--muted)}
.event-face-dropdown>summary strong{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:rgba(11,142,214,.09);color:var(--secondary);transition:transform .24s ease}
.event-face-dropdown[open]>summary strong{transform:rotate(90deg)}
.event-face-dropdown[open]>summary{border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(49,35,94,.035),rgba(11,142,214,.045))}
.event-face-dropdown-body{padding:13px}
.event-face-dropdown-body .inline-face-panel{margin:0;box-shadow:none;border:0;background:transparent;padding:4px}
.event-face-dropdown.disabled-choice>summary{cursor:default;opacity:.76}
.matched-photo-download,.photo-album-save,.save-all-photos{display:flex!important;align-items:center;justify-content:center;gap:7px}
.matched-photo-download{width:100%;margin-top:7px;padding:10px 8px;border:1px solid rgba(49,35,94,.12);border-radius:13px;background:#fff;color:var(--primary);font-size:10px;font-weight:800;box-shadow:none}
.matched-photo-download:hover{background:#f6f8ff}
.photo-save-hint{display:block;margin:9px auto 0;max-width:360px;color:var(--muted);font-size:9px;line-height:1.6}
.album-save-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;animation:spin .75s linear infinite;flex:0 0 auto}
.matched-photo-download .album-save-spinner{border-color:rgba(49,35,94,.18);border-top-color:var(--primary)}
[data-save-photo].is-saving,[data-save-all].is-saving{opacity:.78;cursor:wait}
#viewer .photo-album-save{width:100%;margin-top:12px}
@media(max-width:620px){.event-face-dropdown>summary{padding:13px;min-height:72px}.event-face-dropdown>summary b{font-size:13px}.event-face-dropdown>summary small{font-size:8.5px}.event-face-dropdown-body{padding:8px}.photo-folder-head{align-items:flex-start}.save-all-photos{width:100%;margin-top:7px}}


/* =========================================================
   ONS Moments 2.4 - launch polish, live matches and responsive progress
   ========================================================= */
:root{--v24-space-1:6px;--v24-space-2:10px;--v24-space-3:14px;--v24-space-4:18px;--v24-space-5:24px;--v24-radius:20px;--v24-focus:0 0 0 4px rgba(11,142,214,.13)}
*{box-sizing:border-box}
html{scroll-padding-top:92px}
body{overflow-x:hidden;text-align:start}
main,.workspace-main{min-width:0}
img,video,canvas,svg{max-width:100%}
button,a,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
:where(.card,.form-card,.auth-card,.setup-panel,.inline-face-panel,.legal-card-v19,.wizard-step,.event-face-dropdown){min-width:0}
:where(.card,.form-card,.auth-card,.setup-panel,.legal-card-v19,.wizard-step){padding:clamp(16px,2.2vw,24px)}
:where(.form-grid,.request-review,.request-summary-grid)>*{min-width:0}
:where(input,select,textarea,button,a){max-width:100%}
:where(input,select,textarea):focus-visible{outline:0;box-shadow:var(--v24-focus);border-color:var(--secondary)!important}
:where(button,a):focus-visible{outline:0;box-shadow:var(--v24-focus)}
.form-card form,.auth-card form{gap:var(--v24-space-4)!important;text-align:start!important}
label{min-width:0;text-align:start}
label>small{display:block;margin-block:4px 7px;color:var(--muted);font-size:8px;line-height:1.55}
.form-grid{align-items:start}
.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card-heading,.app-page-head,.request-builder-head,.request-status-head{gap:var(--v24-space-3)}
.card-heading>div,.app-page-head>div{min-width:0}
.card-heading h1,.card-heading h2,.card-heading h3,.app-page-head h1{overflow-wrap:anywhere}
.primary-btn,.secondary-btn,.danger-button,button{justify-content:center}

/* Correct direction and alignment throughout both language modes. */
html[dir="rtl"] :where(.auth-card form,.form-card form,.legal-modern-v19,.agreement-onboarding-v19,.legal-content-v19 h2,.legal-content-v19 p,.legal-card-v19 h2,.legal-card-v19 p){direction:rtl;text-align:right}
html[dir="ltr"] :where(.auth-card form,.form-card form,.legal-modern-v19,.agreement-onboarding-v19,.legal-content-v19 h2,.legal-content-v19 p,.legal-card-v19 h2,.legal-card-v19 p){direction:ltr!important;text-align:left!important}
html[dir="ltr"] :where(.legal-content-v19>section,.agreement-hero-v19,.agreement-sign-v19,.provider-account-hero){direction:ltr!important}
html[dir="ltr"] .legal-content-v19>section{grid-template-columns:38px minmax(0,1fr)!important}
html[dir="ltr"] .setup-steps ol{padding-left:18px;padding-right:0}
html[dir="rtl"] .setup-steps ol{padding-right:18px;padding-left:0}
html[dir="ltr"] .calendar-day{text-align:left}
html[dir="rtl"] .calendar-day{text-align:right}
html[dir="ltr"] dialog>.dialog-close,html[dir="ltr"] dialog>button:first-child{left:auto;right:12px}
html[dir="rtl"] dialog>.dialog-close,html[dir="rtl"] dialog>button:first-child{right:auto;left:12px}

/* Premium, compact and fully responsive progress window. */
.global-progress-overlay{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:rgba(9,18,42,.58);backdrop-filter:blur(16px) saturate(130%);-webkit-backdrop-filter:blur(16px) saturate(130%)}
.global-progress-card{position:relative;width:min(94vw,420px);padding:0 28px 28px;overflow:hidden;border-radius:30px;background:linear-gradient(160deg,rgba(255,255,255,.99),rgba(247,250,255,.97));border:1px solid rgba(255,255,255,.88);box-shadow:0 34px 100px rgba(3,15,42,.34);text-align:center;transform-origin:center}
.global-progress-accent{height:5px;margin-inline:-28px;background:linear-gradient(90deg,var(--primary),var(--secondary),#7b5ce4);background-size:200% 100%;animation:v24Accent 2.2s linear infinite}
.global-progress-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin:22px auto 5px;color:var(--primary)}
.global-progress-brand>div:last-child{display:grid;gap:1px;text-align:start}
.global-progress-brand small{font-size:7px;font-weight:900;letter-spacing:.08em;color:var(--secondary)}
.global-progress-brand b{font-size:11px;letter-spacing:.02em}
.global-progress-logo{width:48px;height:48px;margin:0;padding:5px;border-radius:15px;box-shadow:0 8px 22px rgba(30,54,110,.10)}
.global-progress-card h2{margin:12px 0 7px;font-size:clamp(19px,5vw,24px);line-height:1.35;color:#17213a}
.global-progress-card p{max-width:330px;margin:0 auto;color:#68758c;font-size:10px;line-height:1.85}
.global-progress-spinner{position:relative;width:78px;height:78px;margin:19px auto 2px;display:grid;place-items:center}
.global-progress-spinner:before,.global-progress-spinner:after{content:"";position:absolute;border-radius:50%}
.global-progress-spinner:before{inset:0;border:5px solid rgba(36,107,253,.10);border-top-color:var(--secondary);border-right-color:var(--primary);animation:onsCircularLoader .86s linear infinite}
.global-progress-spinner:after{inset:12px;border:1px solid rgba(49,35,94,.10);animation:v24Reverse 1.5s linear infinite}
.global-progress-spinner span{width:35px;height:35px;border-radius:13px;background:linear-gradient(145deg,rgba(49,35,94,.10),rgba(11,142,214,.12));box-shadow:inset 0 0 0 1px rgba(49,35,94,.06)}
.global-progress-spinner i{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--secondary);box-shadow:0 0 16px rgba(11,142,214,.50);animation:onsLoaderPulse 1.15s ease-in-out infinite}
.global-progress-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;color:#8290a7;font-size:7.5px;font-weight:850}
.global-progress-hint span{width:22px;height:1px;background:linear-gradient(90deg,transparent,#c8d1e0)}
.global-progress-hint span:last-child{transform:scaleX(-1)}
.global-progress-hint em{font-style:normal}
@keyframes v24Accent{to{background-position:-200% 0}}
@keyframes v24Reverse{to{transform:rotate(-360deg)}}
@media(max-width:480px){.global-progress-card{width:calc(100vw - 24px);padding:0 20px 22px;border-radius:25px}.global-progress-accent{margin-inline:-20px}.global-progress-brand{margin-top:18px}.global-progress-spinner{width:68px;height:68px;margin-top:16px}.global-progress-card p{font-size:9px}}
@media(prefers-reduced-motion:reduce){.global-progress-accent,.global-progress-spinner:before,.global-progress-spinner:after,.global-progress-spinner i{animation-duration:2.5s}}

/* Live face results appear without refresh. */
.my-photo-folder{position:relative}
.live-status-dot{display:inline-block;width:7px;height:7px;margin-inline-start:5px;border-radius:50%;background:#19a974;box-shadow:0 0 0 4px rgba(25,169,116,.11);vertical-align:middle}
.my-photo-folder.is-syncing .live-status-dot{background:var(--secondary);animation:onsLoaderPulse 1s ease-in-out infinite}
.matched-gallery{transition:opacity .18s ease,transform .18s ease}
.matched-gallery.is-updating{opacity:.55;transform:translateY(3px)}
.matched-photo-item{animation:v24PhotoIn .3s cubic-bezier(.2,.75,.2,1)}
@keyframes v24PhotoIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
.live-match-empty{grid-column:1/-1;min-height:210px;border:1px dashed #d7dfed;border-radius:20px;background:linear-gradient(145deg,#fff,#f7faff)}
.save-all-photos[hidden]{display:none!important}

/* Launch-ready compliance treatment. */
.disclosure-warning.approved,.compliance-checklist.launch-ready{background:#edf9f4!important;border-color:#c9eadc!important;color:#156f52!important}
.face-mode-banner.approved{background:#edf9f4!important;border-color:#c9eadc!important;color:#156f52!important}

/* Small-screen consistency audit. */
@media(max-width:760px){
  .form-grid.two{grid-template-columns:1fr!important}
  .workspace-main,main{padding-inline:max(11px,env(safe-area-inset-left))!important}
  .form-card,.auth-card,.card,.setup-panel,.inline-face-panel,.wizard-step{border-radius:20px!important}
  .app-page-head{padding-top:18px!important}
  .head-actions,.wizard-actions,.agreement-file-actions{width:100%}
  .head-actions>*{flex:1}
  dialog{width:calc(100vw - 20px);max-width:none;padding:17px;border-radius:23px}
  .photo-folder-head{grid-template-columns:48px minmax(0,1fr)!important;padding:14px!important}
  .photo-folder-head>.save-all-photos{grid-column:1/-1;width:100%}
}
@media(max-width:390px){
  .matched-gallery{grid-template-columns:1fr 1fr;gap:8px}
  .event-face-dropdown>summary{gap:9px;padding:12px}
  .event-face-dropdown>summary strong{width:30px;height:30px}
  .top-actions{gap:5px}
}


/* =========================================================
   ONS Moments 2.5 - viewport-safe loading and bilingual layout audit
   ========================================================= */
/* Fixed descendants must remain relative to the browser viewport on iOS. */
.app-shell{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html.progress-locked,html.progress-locked body,body.progress-locked{overflow:hidden!important;overscroll-behavior:none!important}
body>.global-progress-overlay{
  position:fixed!important;inset:0!important;z-index:2147483000!important;
  width:100vw!important;height:100vh!important;height:100dvh!important;
  min-height:var(--ons-visible-height,100dvh)!important;max-height:var(--ons-visible-height,100dvh)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  overflow-y:auto!important;overscroll-behavior:contain!important;
  padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))!important;
  background:rgba(9,18,42,.62)!important;isolation:isolate!important
}
body>.global-progress-overlay:not(.is-visible){display:flex!important}
.global-progress-card{
  flex:0 0 auto!important;width:min(100%,420px)!important;max-width:420px!important;
  min-height:0!important;max-height:calc(var(--ons-visible-height,100dvh) - 28px)!important;
  margin:auto!important;overflow:auto!important;overscroll-behavior:contain!important;
  padding:0 clamp(20px,5vw,28px) clamp(22px,5vw,28px)!important;
  border-radius:clamp(23px,6vw,30px)!important;
  background:#FFFFFF!important;border:1px solid rgba(255,255,255,.9)!important;
  box-shadow:0 30px 90px rgba(3,15,42,.38)!important;text-align:center!important;
  -webkit-overflow-scrolling:touch
}
.global-progress-accent{margin-inline:calc(clamp(20px,5vw,28px) * -1)!important}
.global-progress-brand{margin-top:clamp(17px,4vh,22px)!important}
.global-progress-card h2{font-size:clamp(19px,5.2vw,24px)!important;overflow-wrap:anywhere!important}
.global-progress-card p{font-size:clamp(9.5px,2.8vw,11px)!important}
.global-progress-card:focus{outline:none}
@media(max-height:620px){
  .global-progress-brand{margin-top:13px!important}.global-progress-logo{width:42px!important;height:42px!important}
  .global-progress-spinner{width:58px!important;height:58px!important;margin:12px auto 0!important}
  .global-progress-card h2{margin-top:9px!important;font-size:18px!important}.global-progress-card p{line-height:1.55!important}
  .global-progress-hint{margin-top:11px!important}
}
@media(max-width:420px){
  body>.global-progress-overlay{padding-inline:10px!important}
  .global-progress-card{width:100%!important;max-width:none!important}
}

/* Higher-specificity reset fixes the LTR sidebar padding that survived mobile media queries. */
@media(max-width:1100px){
  html[dir="ltr"] body.workspace-body .workspace-shell,
  html[dir="rtl"] body.workspace-body .workspace-shell,
  body.workspace-body .workspace-shell{
    width:100%!important;max-width:none!important;margin:0!important;
    padding-left:0!important;padding-right:0!important;padding-inline:0!important
  }
  html[dir] body.workspace-body .workspace-main{
    width:100%!important;max-width:none!important;min-width:0!important;margin:0 auto!important;
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important;
    padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))!important
  }
  html[dir] body.workspace-body .workspace-shell>.topbar{
    width:auto!important;max-width:none!important;margin:8px 10px 0!important;
    padding-inline:14px!important
  }
}

/* Shared bilingual geometry: no card or English label may force horizontal overflow. */
html[dir] :where(.workspace-main,.app-page-head,.provider-dashboard-head,.stats,.stats.four,.admin-list,.compact-request-list,.card,.form-card,.next-event-hero,.provider-notice){min-width:0!important;max-width:100%!important}
html[dir="ltr"] :where(.app-page-head,.provider-dashboard-head,.card,.form-card,.next-event-hero,.provider-notice,.stats div){direction:ltr!important;text-align:left!important}
html[dir="rtl"] :where(.app-page-head,.provider-dashboard-head,.card,.form-card,.next-event-hero,.provider-notice,.stats div){direction:rtl;text-align:right}
html[dir] :where(.app-page-head h1,.app-page-head p,.stats span,.stats b,.provider-notice,.next-event-hero,.event-admin-card,.compact-request-card,.primary-btn,.secondary-btn,.icon-btn){overflow-wrap:anywhere!important;word-break:normal!important}
.stats,.stats.four{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important}
.stats>div{min-width:0!important;width:auto!important}
.topbar .brand{min-width:0!important;flex:1 1 auto!important}.topbar .brand span{min-width:0!important}.topbar .brand b,.topbar .brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions{flex:0 0 auto!important}

@media(max-width:700px){
  html[dir] .app-page-head,html[dir] .provider-dashboard-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:13px!important;width:100%!important}
  html[dir] .app-page-head>.primary-btn,html[dir] .provider-dashboard-head>.primary-btn{width:100%!important;margin:0!important}
  .stats,.stats.four,.provider-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .stats>div{min-height:108px!important;padding:14px 10px!important;text-align:center!important}
  .stats b{font-size:23px!important;letter-spacing:-.3px!important}.stats span{font-size:9px!important;line-height:1.45!important}
  .next-event-hero{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}.next-event-hero>a{width:100%!important;text-align:center!important}
  .topbar{min-height:66px!important;height:auto!important}.topbar .brand span{display:none!important}
  .language-switch,.side-menu-toggle{min-height:40px!important}
}
@media(max-width:360px){
  html[dir] body.workspace-body .workspace-main{padding-inline:10px!important}
  .stats,.stats.four,.provider-stats{gap:7px!important}.stats>div{padding-inline:7px!important}
  .topbar{padding-inline:10px!important}.top-actions{gap:4px!important}
}

/* ================================================================
   ONS Moments 2.6 - responsive forms, camera guides and email themes
   ================================================================ */
html,body{max-width:100%;overflow-x:hidden}
.form-grid>*{min-width:0}
.event-datetime-field{min-width:0;width:100%;overflow:hidden}
.event-datetime-control,input[type="date"],input[type="time"]{
  display:block;width:100%;min-width:0;max-width:100%;height:52px;box-sizing:border-box;
  appearance:none;-webkit-appearance:none;border-radius:14px;line-height:1.2;padding:12px 14px;
  font-variant-numeric:tabular-nums;background-clip:padding-box
}
input[type="date"]::-webkit-date-and-time-value,input[type="time"]::-webkit-date-and-time-value{
  display:block;min-width:0;width:100%;text-align:start;margin:0;padding:0
}
input[type="date"]::-webkit-calendar-picker-indicator,input[type="time"]::-webkit-calendar-picker-indicator{margin-inline-start:auto;opacity:.72}

.camera-guides{display:grid;gap:10px;margin-top:18px}
.camera-guides-title{font-size:13px;color:var(--primary);padding-inline:2px}
.camera-guide{border:1px solid rgba(49,35,94,.13);border-radius:17px;background:rgba(248,250,255,.9);overflow:hidden}
.camera-guide summary{list-style:none;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:11px 13px;cursor:pointer;user-select:none}
.camera-guide summary::-webkit-details-marker{display:none}
.camera-guide summary>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(11,142,214,.10);color:var(--secondary)}
.camera-guide summary svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.camera-guide summary b{min-width:0;font-size:12px;color:var(--primary)}
.camera-guide summary small{font-size:8px;color:var(--muted);white-space:nowrap}
.camera-guide summary:after{content:"⌄";grid-column:3;font-size:15px;color:var(--secondary);transition:transform .2s ease}
.camera-guide summary small{grid-column:2;grid-row:2}
.camera-guide[open] summary:after{transform:rotate(180deg)}
.camera-guide ol,.camera-guide ul{margin:0;padding:2px 38px 16px 18px;display:grid;gap:8px;color:var(--muted);font-size:10px;line-height:1.7}
html[dir="ltr"] .camera-guide ol,html[dir="ltr"] .camera-guide ul{padding:2px 18px 16px 38px}
.camera-guide code{font-size:9px;overflow-wrap:anywhere;color:var(--primary)}
.troubleshooting-guide{background:#fffaf0;border-color:#f0dba9}
.credential-list small em{display:block;font-size:7px;font-style:normal;color:var(--muted)}

.upload-selection-status{margin-top:10px;padding:9px 12px;border-radius:12px;background:rgba(11,142,214,.08);color:var(--primary);font-weight:800;font-size:10px;text-align:center}
form[data-unlimited-upload][aria-busy="true"] .upload-drop{opacity:.62;pointer-events:none}

.settings-separator{width:100%;border:0;border-top:1px solid rgba(49,35,94,.12);margin:10px 0 2px}
.email-theme-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:3px}
.email-theme-heading h2{margin:3px 0 4px;font-size:20px}
.email-theme-heading p{margin:0;color:var(--muted);font-size:10px;line-height:1.7}
.email-theme-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:3px 0 5px}
.email-theme-presets button{min-width:0;padding:9px 5px;border:1px solid rgba(49,35,94,.12);border-radius:14px;background:var(--theme-card);color:var(--text);box-shadow:none;display:grid;place-items:center;gap:3px}
.email-theme-presets button i{width:34px;height:22px;border-radius:8px;background:linear-gradient(135deg,var(--theme-header) 0 58%,var(--theme-accent) 58% 68%,var(--theme-card) 68%);border:1px solid rgba(0,0,0,.06)}
.email-theme-presets button span{font-size:9px;font-weight:900;overflow-wrap:anywhere}
.email-theme-presets button small{font-size:7px;color:var(--muted);overflow-wrap:anywhere}
.email-theme-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border:1px solid rgba(49,35,94,.10);border-radius:18px;background:rgba(248,250,255,.75)}
.email-theme-editor label{min-width:0;margin:0;font-size:9px}
.email-color-input{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:9px;margin-top:5px}
.email-color-input input[type="color"]{width:48px;height:38px;min-height:38px;padding:3px;border-radius:10px}
.email-color-input code{font-size:9px;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis}
.email-theme-preview{padding:15px;border-radius:20px;background:var(--mail-outer);border:1px solid var(--mail-border);transition:background .2s ease}
.mail-preview-shell{max-width:410px;margin:auto;border-radius:18px;overflow:hidden;background:var(--mail-card);border:1px solid var(--mail-border);text-align:center;color:var(--mail-text)}
.mail-preview-shell header{display:grid;place-items:center;gap:4px;padding:16px;background:var(--mail-header);border-bottom:4px solid var(--mail-accent);color:var(--mail-title)}
.mail-preview-shell header img{width:42px;height:42px;object-fit:contain;border-radius:12px;background:#fff;padding:3px}
.mail-preview-shell header small{font-size:6px;letter-spacing:.08em;color:var(--mail-title);opacity:.84}
.mail-preview-shell header b{font-size:13px;color:var(--mail-title)}
.mail-preview-shell main{padding:16px;color:var(--mail-text)}
.mail-preview-shell main p{font-size:9px;color:var(--mail-muted)}
.mail-preview-shell main div{padding:10px;border:1px solid var(--mail-border);border-radius:12px;background:var(--mail-panel);font-size:9px;color:var(--mail-text)}
.mail-preview-shell main button{margin-top:12px;padding:9px 14px;border:0;border-radius:10px;background:var(--mail-button);color:var(--mail-button-text);font-size:9px}
.mail-preview-shell footer{padding:10px;background:var(--mail-footer);color:var(--mail-link);font-size:7px}

/* iOS automatically zooms controls below 16px. Keep every writing field at 16px on touch screens. */
@media(max-width:900px),(hover:none) and (pointer:coarse){
  input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea{
    font-size:16px!important;line-height:1.35!important
  }
  input[type="date"],input[type="time"]{height:54px!important;padding:12px 13px!important}
}
@media(max-width:720px){
  .form-grid.two{grid-template-columns:1fr!important}
  .event-datetime-field{grid-column:auto!important}
  .email-theme-presets{grid-template-columns:repeat(2,minmax(0,1fr))}
  .email-theme-editor{grid-template-columns:1fr}
  .camera-guide summary{grid-template-columns:34px minmax(0,1fr) 18px}
  .camera-guide summary small{white-space:normal}
}
@media(max-width:420px){
  .email-theme-preview{padding:8px}
  .camera-guide ol,.camera-guide ul{font-size:9px}
}

/* =====================================================================
   ONS Moments 2.7 — Canon-compatible FTPS, gradient themes and UI polish
   ===================================================================== */
.brand img,.nav-identity img,.global-progress-logo,.logo-preview{background:var(--logo-background,#fff)!important}
.logo-preview{background:var(--settings-logo-background,var(--logo-background,#fff))!important}

.camera-essential-list{margin-top:12px}
.camera-essentials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.camera-essentials>span{min-width:0;padding:11px;border:1px solid rgba(49,35,94,.11);border-radius:14px;background:#f8faff;display:grid;gap:4px;text-align:center}
.camera-essentials b{font-size:8px;color:var(--muted)}
.camera-essentials code{font-size:9px;font-weight:900;color:var(--primary);overflow-wrap:anywhere}
.camera-essential-note{margin:10px 0 0;padding:10px 12px;border-radius:13px;background:#f4f7fc;color:var(--muted);font-size:9px;line-height:1.7;text-align:center}

.settings-subheading{margin:16px 0 7px;font-size:13px;color:var(--primary)}
.email-background-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.email-gradient-editor{min-width:0;margin:0;padding:12px;border:1px solid rgba(49,35,94,.11);border-radius:17px;background:rgba(248,250,255,.82)}
.email-gradient-editor legend{padding:0 7px;color:var(--primary);font-size:10px;font-weight:900}
.email-gradient-editor label{margin:0;font-size:8px}
.email-gradient-editor select{min-height:39px}
.email-gradient-colors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
.email-gradient-editor input[type="color"]{width:100%;height:42px;padding:3px;border-radius:11px}
.email-gradient-editor input[type="range"]{min-height:30px;padding:0}
.email-gradient-editor [data-gradient-angle-value]{color:var(--secondary);font-weight:900}
.mail-preview-shell header img{background:var(--mail-logo-bg,#fff)!important}

.dialog-close,.dialog-close-button,.request-success-dialog>.dialog-close,#qrbox>button:first-child{
  width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;
  aspect-ratio:1/1!important;border-radius:50%!important;padding:0!important;margin:0!important;
  display:grid!important;place-items:center!important;line-height:1!important;font-size:23px!important;
  flex:0 0 40px!important;box-sizing:border-box!important;box-shadow:none!important;
}
.photo-viewer-dialog .dialog-close-button{position:absolute!important;top:12px!important;inset-inline-end:12px!important;z-index:5!important}

@media(max-width:650px){
  .camera-essentials,.email-background-editor{grid-template-columns:1fr}
  .email-gradient-colors{grid-template-columns:1fr 1fr}
  .dialog-close,.dialog-close-button,.request-success-dialog>.dialog-close,#qrbox>button:first-child{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;max-width:38px!important;max-height:38px!important;flex-basis:38px!important}
}


/* =====================================================================
   ONS Moments 2.9 — unified guest link, five guest themes, silent live sync
   ===================================================================== */

/* Email preview: each surface owns its actual solid/gradient value. The
   inherited-image rule from 2.7 prevented child gradients from refreshing. */
.email-theme-preview{background:var(--mail-outer)!important;background-image:var(--mail-outer)!important}
.mail-preview-shell{background:var(--mail-card)!important;background-image:var(--mail-card)!important}
.mail-preview-shell header{background:var(--mail-header)!important;background-image:var(--mail-header)!important}
.mail-preview-shell main div{background:var(--mail-panel)!important;background-image:var(--mail-panel)!important}
.mail-preview-shell main button{background:var(--mail-button)!important;background-image:var(--mail-button)!important}
.mail-preview-shell footer{background:var(--mail-footer)!important;background-image:var(--mail-footer)!important}

/* Guest theme selector in settings */
.guest-theme-settings{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(180px,.55fr);gap:14px;align-items:end;padding:16px;border:1px solid rgba(49,35,94,.11);border-radius:20px;background:linear-gradient(135deg,rgba(247,249,255,.96),rgba(255,255,255,.92))}
.guest-theme-settings h2{margin:3px 0 4px;font-size:19px}.guest-theme-settings p{margin:0;color:var(--muted);font-size:10px;line-height:1.7}.guest-theme-settings>label{margin:0}
.guest-theme-swatches{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.guest-theme-swatch{min-width:0;padding:9px;border:1px solid rgba(49,35,94,.12);border-radius:15px;background:#fff;color:var(--text);box-shadow:none;display:grid;gap:3px;text-align:start;transition:.18s ease}
.guest-theme-swatch:hover,.guest-theme-swatch.is-active{transform:translateY(-2px);border-color:var(--secondary);box-shadow:0 10px 22px rgba(49,35,94,.10)}
.guest-theme-swatch i{display:block;height:30px;border-radius:10px;border:1px solid rgba(0,0,0,.06)}.guest-theme-swatch b{font-size:10px}.guest-theme-swatch small{font-size:7px;color:var(--muted)}
.guest-theme-swatch.theme-current i{background:linear-gradient(135deg,#31235e,#0b8ed6 58%,#f3f6ff 58%)}
.guest-theme-swatch.theme-royal i{background:linear-gradient(135deg,#12162d,#4a2d70 58%,#d7b56d 58%)}
.guest-theme-swatch.theme-pearl i{background:linear-gradient(135deg,#f8fbff,#dcecf7 58%,#73a8c7 58%)}
.guest-theme-swatch.theme-rose i{background:linear-gradient(135deg,#fff8f3,#e9b7a7 58%,#9b5c5f 58%)}
.guest-theme-swatch.theme-emerald i{background:linear-gradient(135deg,#092b2a,#17675c 58%,#d1b76c 58%)}

/* Shared guest-theme tokens */
.guest-event-page{--guest-hero:linear-gradient(135deg,#31235e,#0b8ed6);--guest-page:#f5f7fc;--guest-card:rgba(255,255,255,.93);--guest-ink:#241f36;--guest-muted:#667085;--guest-accent:#0b8ed6;--guest-accent-2:#31235e;--guest-soft:#edf5ff;--guest-border:rgba(49,35,94,.12);--guest-shadow:0 20px 55px rgba(49,35,94,.13);background:var(--guest-page);color:var(--guest-ink)}
.guest-theme-royal{--guest-hero:linear-gradient(135deg,#11152d 0%,#40285f 64%,#87643c 100%);--guest-page:#f4f1f7;--guest-card:rgba(255,253,249,.95);--guest-ink:#221a31;--guest-muted:#746b7c;--guest-accent:#a67a3e;--guest-accent-2:#352451;--guest-soft:#f5ede1;--guest-border:rgba(83,57,105,.18);--guest-shadow:0 22px 60px rgba(35,23,56,.17)}
.guest-theme-pearl{--guest-hero:linear-gradient(135deg,#f8fcff 0%,#dcecf7 58%,#85b8cf 100%);--guest-page:#f3f9fc;--guest-card:rgba(255,255,255,.92);--guest-ink:#203747;--guest-muted:#607888;--guest-accent:#397f9f;--guest-accent-2:#244e65;--guest-soft:#e8f4f8;--guest-border:rgba(55,125,155,.17);--guest-shadow:0 22px 55px rgba(55,125,155,.13)}
.guest-theme-rose{--guest-hero:linear-gradient(135deg,#fff8f2 0%,#ecc1b2 62%,#a96268 100%);--guest-page:#fff8f5;--guest-card:rgba(255,253,251,.94);--guest-ink:#4a2c35;--guest-muted:#846a70;--guest-accent:#a65f68;--guest-accent-2:#69404b;--guest-soft:#fae9e4;--guest-border:rgba(166,95,104,.16);--guest-shadow:0 22px 55px rgba(139,75,86,.13)}
.guest-theme-emerald{--guest-hero:linear-gradient(135deg,#072625 0%,#126056 66%,#9c8148 100%);--guest-page:#f0f7f4;--guest-card:rgba(252,255,253,.94);--guest-ink:#173a35;--guest-muted:#627b76;--guest-accent:#167064;--guest-accent-2:#0d4741;--guest-soft:#e3f2ed;--guest-border:rgba(22,112,100,.17);--guest-shadow:0 22px 58px rgba(14,77,69,.15)}
.guest-event-page .event-cover{background:var(--guest-hero)!important;box-shadow:var(--guest-shadow)}
.guest-event-page .event-choice,.guest-event-page .event-face-dropdown,.guest-event-page .inline-face-panel,.guest-event-page .event-gallery-shell,.guest-event-page .pre-event-guest-notice{border-color:var(--guest-border);background:var(--guest-card)}
.guest-event-page .event-choice b,.guest-event-page .inline-face-heading h2,.guest-event-page .photo-folder-head h2{color:var(--guest-ink)}
.guest-event-page .event-choice small,.guest-event-page .inline-face-heading p,.guest-event-page .photo-folder-head p{color:var(--guest-muted)}
.guest-event-page .choice-icon,.guest-event-page .folder-icon{background:var(--guest-soft);color:var(--guest-accent)}

/* Make face search unmistakably the primary guest action. */
.guest-event-page .featured-face-choice{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--guest-accent) 42%,transparent)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--guest-soft) 92%,white),var(--guest-card))!important;box-shadow:0 16px 38px color-mix(in srgb,var(--guest-accent) 16%,transparent);transform:translateZ(0)}
@keyframes faceFindPromptBounce{0%,100%{transform:translateY(0) scale(1)}12%{transform:translateY(-2px) scale(1.008)}24%{transform:translateY(0) scale(1)}36%{transform:translateY(-1px) scale(1.004)}48%,96%{transform:translateY(0) scale(1)}}
.guest-event-page .featured-face-choice:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--guest-accent),var(--guest-accent-2))}
.guest-event-page .featured-face-choice>summary{padding:18px 17px;min-height:82px;animation:faceFindPromptBounce 2.8s ease-in-out infinite}
.guest-event-page .featured-face-choice .choice-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--guest-accent-2),var(--guest-accent));color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--guest-accent) 28%,transparent)}
.guest-event-page .featured-face-choice summary b{font-size:15px;color:var(--guest-accent-2)}
.guest-event-page .featured-face-choice summary small{font-size:10px;line-height:1.65}
.guest-event-page .inline-face-form>button,.guest-event-page .selfie-submit-button{background:linear-gradient(135deg,var(--guest-accent-2),var(--guest-accent))!important;box-shadow:0 12px 25px color-mix(in srgb,var(--guest-accent) 24%,transparent)}

.pre-event-guest-notice{display:grid;grid-template-columns:46px minmax(0,1fr);gap:13px;align-items:center;padding:15px 16px;border:1px solid var(--guest-border);border-radius:19px;box-shadow:0 12px 30px rgba(31,46,72,.07)}
.pre-event-guest-notice>span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--guest-soft);color:var(--guest-accent)}.pre-event-guest-notice svg{width:23px;height:23px}.pre-event-guest-notice small{display:block;color:var(--guest-accent);font-size:8px;font-weight:900}.pre-event-guest-notice b{display:block;margin:2px 0 3px;color:var(--guest-ink);font-size:13px}.pre-event-guest-notice p{margin:0;color:var(--guest-muted);font-size:9px;line-height:1.7}.pre-event-guest-notice.is-ready{border-color:rgba(24,160,107,.22);background:linear-gradient(135deg,rgba(241,252,246,.96),rgba(255,255,255,.94));box-shadow:0 16px 34px rgba(24,160,107,.09)}.pre-event-guest-notice.is-ready>span{background:linear-gradient(135deg,#18a06b,#3fba84);color:#fff}.pre-event-guest-notice.is-ready small{color:#11835d}
.face-ready-notification{position:fixed;inset:0;margin:auto;max-width:430px;width:min(calc(100% - 30px),430px);height:max-content;padding:26px;border:0;border-radius:25px;text-align:center;box-shadow:0 30px 90px rgba(20,26,45,.3)}.face-ready-notification::backdrop{background:rgba(17,24,39,.58);backdrop-filter:blur(5px)}.face-ready-notification h2{margin:8px 0 7px}.face-ready-notification p{color:var(--muted);font-size:11px;line-height:1.8}.face-ready-notification[open]{display:grid;place-items:center;align-content:center;gap:8px}.face-ready-notification .dialog-close-button{z-index:2}

/* Silent live matching: no opacity/position animation and no image reloads. */
.matched-gallery.is-updating{opacity:1!important;transform:none!important}
.live-status-dot{display:inline-block;width:8px;height:8px;margin-inline-start:5px;border-radius:50%;background:#19a974;box-shadow:0 0 0 4px rgba(25,169,116,.13);vertical-align:middle;animation:ons-live-pulse 2.2s ease-in-out infinite}
.my-photo-folder.is-syncing .live-status-dot{background:#19a974;box-shadow:0 0 0 5px rgba(25,169,116,.16)}
@keyframes ons-live-pulse{0%,100%{transform:scale(.88);opacity:.72}50%{transform:scale(1.05);opacity:1}}
.matched-photo-download{text-decoration:none}.save-all-photos{text-decoration:none}

/* Camera guides */
.camera-brand-guides{display:grid;gap:10px;margin-top:14px}.camera-brand-guide{overflow:hidden;border:1px solid rgba(49,35,94,.12);border-radius:18px;background:#fff}.camera-brand-guide[open]{box-shadow:0 14px 34px rgba(49,35,94,.08)}
.camera-brand-guide summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;gap:12px;align-items:center;padding:14px 15px}.camera-brand-guide summary::-webkit-details-marker{display:none}.camera-brand-guide summary:after{content:"⌄";font-size:20px;color:var(--muted);transition:.18s}.camera-brand-guide[open] summary:after{transform:rotate(180deg)}
.camera-brand-mark{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:10px;font-weight:950;letter-spacing:.06em;color:#fff;background:#1b2436}.camera-brand-mark.canon{background:linear-gradient(135deg,#b40013,#ed1c24)}.camera-brand-mark.nikon{background:linear-gradient(135deg,#f3c900,#ffe45b);color:#181818}.camera-brand-mark.sony{background:linear-gradient(135deg,#111,#4d4d4d)}
.camera-brand-guide summary b{display:block;font-size:12px;color:var(--text)}.camera-brand-guide summary small{display:block;margin-top:3px;font-size:8px;color:var(--muted);line-height:1.55}.camera-brand-body{padding:0 16px 16px;border-top:1px solid rgba(49,35,94,.08)}.camera-brand-body ol{margin:13px 0;padding-inline-start:22px;display:grid;gap:8px;color:var(--text);font-size:10px;line-height:1.75}.camera-brand-body code{direction:ltr;unicode-bidi:isolate;font-size:9px;color:var(--primary);overflow-wrap:anywhere}.camera-cert-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border-radius:15px;background:#fff8e8;border:1px solid #efd99d}.camera-cert-box p{margin:0;color:#6f5a27;font-size:9px;line-height:1.65}.camera-cert-box a{text-decoration:none;white-space:nowrap}.camera-connection-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0}.camera-connection-values span{padding:9px;border-radius:12px;background:#f7f9fd;border:1px solid rgba(49,35,94,.08)}.camera-connection-values b{display:block;font-size:7px;color:var(--muted)}.camera-connection-values code{display:block;margin-top:3px;font-weight:900}

@media(max-width:720px){.guest-theme-settings{grid-template-columns:1fr}.guest-theme-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.camera-connection-values{grid-template-columns:1fr}.camera-cert-box{grid-template-columns:1fr}.camera-cert-box a{width:100%}}

/* Camera-guide markup compatibility and compact heading. */
.camera-guides-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:2px 2px 0}.camera-guides-heading small{display:block;color:var(--secondary);font-size:8px;font-weight:900}.camera-guides-heading h3{margin:3px 0 0;font-size:14px;color:var(--primary)}.camera-guides-heading>span{padding:6px 9px;border-radius:999px;background:#eef5ff;color:var(--primary);font-size:7px;font-weight:900;white-space:nowrap}
.camera-brand-guide summary>span:not(.camera-brand-mark){display:block!important;place-items:initial!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;color:inherit!important}
.camera-brand-guide summary>strong{display:none!important}
.camera-brand-guide summary .camera-brand-mark{display:grid!important;width:48px!important;height:48px!important;border-radius:15px!important;color:#fff!important}
.camera-brand-guide summary .camera-brand-mark.nikon{color:#181818!important}
.camera-brand-guide summary small{grid-column:auto!important;grid-row:auto!important;white-space:normal!important}
.camera-brand-guide summary:after{grid-column:3!important;grid-row:1!important}
@media(max-width:560px){.camera-guides-heading{align-items:flex-start;flex-direction:column}.camera-guides-heading>span{white-space:normal}}
.camera-brand-mark img{display:block;width:100%;height:100%;object-fit:contain;border-radius:13px}
.camera-brand-guide summary .camera-brand-mark.canon,.camera-brand-guide summary .camera-brand-mark.nikon,.camera-brand-guide summary .camera-brand-mark.sony{background:#fff!important;padding:2px!important}

/* ONS Moments v2.10 - email template editor */
.email-template-editor{display:grid;gap:18px;max-width:1180px;margin:0 auto 80px}
.email-template-picker{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);gap:18px;align-items:end;padding:22px}
.email-template-picker label{margin:0}.template-sample{padding:16px 18px;border:1px solid color-mix(in srgb,var(--primary) 12%,#dfe5ef);border-radius:18px;background:color-mix(in srgb,var(--primary) 4%,#fff)}
.template-sample small,.template-sample b,.template-sample p{display:block}.template-sample b{font-size:17px;margin:4px 0}.template-sample p{margin:0;color:var(--muted);line-height:1.7}
.email-template-languages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.email-template-language{background:var(--surface);border:1px solid #e2e7f0;border-radius:24px;padding:22px;box-shadow:0 12px 35px rgba(29,50,91,.06)}
.email-template-language header{display:flex;align-items:center;gap:12px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #e8edf4}.email-template-language header>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:900}.email-template-language header b,.email-template-language header small{display:block}.email-template-language header small{color:var(--muted);margin-top:2px}
.email-template-language label{display:grid;gap:7px;margin:0 0 13px;font-weight:750}.email-template-language input,.email-template-language textarea{font-weight:500}.email-template-language textarea{min-height:138px;resize:vertical;line-height:1.7}
.email-template-style{padding:22px}.email-template-colors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.email-template-colors label{display:grid;gap:8px}.email-template-colors label>span{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #e3e8f1;border-radius:14px;background:#fff}.email-template-colors input[type=color]{width:44px;height:38px;padding:0;border:0;background:transparent}.email-template-colors code{font-size:12px;color:var(--muted)}
.radius-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.radius-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:16px;border:1px solid #e4e9f2;border-radius:18px}.radius-controls input{grid-column:1/-1;width:100%}.radius-controls output{font-weight:900;color:var(--secondary)}
.email-template-preview{padding:22px}.email-template-preview>small{display:block;margin-bottom:12px;color:var(--muted)}.email-template-preview-card{--template-eyebrow-color:#cfe3ff;--template-title-color:#fff;--template-intro-color:#d5dded;--template-body-color:#fff;--template-button-text-color:#111;--template-footer-title-color:#fff;--template-footer-text-color:#c7d1e5;max-width:620px;margin:auto;overflow:hidden;background:#2c2665;box-shadow:0 18px 50px rgba(22,38,78,.15);transition:border-radius .2s}.email-template-preview-card header{padding:26px;text-align:center;background:linear-gradient(135deg,#92219c,#182d68);border-bottom:5px solid #1599de}.email-template-preview-card header em{display:block;font-style:normal;font-size:11px;font-weight:900;letter-spacing:1.3px;color:var(--template-eyebrow-color)}.email-template-preview-card h2{margin:8px 0 0;color:var(--template-title-color)}.email-template-preview-card main{padding:26px;text-align:center;background:linear-gradient(135deg,#1d92d8,#98219e);color:var(--template-body-color)}.email-template-preview-card main>p{color:var(--template-intro-color)}.email-template-preview-card main>div{white-space:pre-wrap;line-height:1.7;color:var(--template-body-color)}.email-template-preview-card button{margin-top:18px;background:#52d7fa;color:var(--template-button-text-color);border:0;padding:13px 24px;font-weight:900}.email-template-preview-card footer{display:grid;gap:5px;text-align:center;padding:20px;background:#0d1a30}.email-template-preview-card footer b{color:var(--template-footer-title-color)}.email-template-preview-card footer span{color:var(--template-footer-text-color)}
.email-template-editor code{direction:ltr;unicode-bidi:isolate}.email-template-editor .sticky-save-bar{z-index:15}
@media(max-width:900px){.email-template-languages,.email-template-picker{grid-template-columns:1fr}.email-template-colors{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.email-template-language,.email-template-style,.email-template-preview,.email-template-picker{border-radius:18px;padding:16px}.email-template-colors,.radius-controls{grid-template-columns:1fr}.email-template-editor .sticky-save-bar{display:grid;grid-template-columns:1fr}.email-template-editor .sticky-save-bar button{width:100%}}

/* v2.10.1 - guest user account */
.guest-account-name{color:inherit;text-decoration:none;border-bottom:1px dashed currentColor;font-weight:900;cursor:pointer;transition:.18s ease}
.guest-account-name:hover,.guest-account-name:focus{color:var(--accent,#0b8ed6);border-bottom-style:solid}
.user-account-page .app-shell{max-width:1180px}
.user-account-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:24px;border:1px solid rgba(49,35,94,.12);border-radius:28px;background:linear-gradient(135deg,#fff,#f2f8ff);box-shadow:0 18px 45px rgba(40,65,110,.08)}
.user-account-hero>div:nth-child(2){min-width:0}
.user-account-hero h1{margin:2px 0 5px}
.user-account-hero p{margin:0;color:#667085;overflow-wrap:anywhere}
.account-status-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-radius:999px;background:#ecfdf3;color:#067647;font-size:13px;font-weight:900;white-space:nowrap}
.account-status-chip svg{width:17px;height:17px}
.user-account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 22px}
.user-account-stats>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;padding:18px;border:1px solid #e1e8f4;border-radius:21px;background:#fff}
.user-account-stats span{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#edf6ff;color:#0b8ed6}
.user-account-stats span svg{width:22px;height:22px}
.user-account-stats b{font-size:20px;color:#241b55}
.user-account-stats small{color:#667085}
.account-management-card{margin:16px 0;padding:24px}
.account-management-card .section-title{margin-top:0}
.account-management-card .form-grid{align-items:end}
.account-form-action{display:flex;align-items:flex-end;height:100%}
.account-form-action button{width:100%}
.account-face-summary{margin:16px 0}
.account-success-notice{margin:0 0 14px;padding:14px 18px;border-radius:17px;background:#ecfdf3;border:1px solid #abefc6;color:#067647;font-weight:900}
.user-delete-zone{margin-top:28px;display:grid;grid-template-columns:1fr minmax(300px,430px);gap:26px;align-items:start}
.user-delete-zone form{display:grid;gap:12px}
.user-delete-zone small{color:#b42318;font-weight:900}
.user-delete-zone h3{margin:4px 0 8px}
.user-delete-zone p{margin:0;color:#667085;line-height:1.8}
.user-delete-zone label{display:grid;gap:7px;font-weight:800}
.user-delete-zone input{width:100%}
.email-template-language textarea[data-original],.email-template-language input[data-original]{background-image:linear-gradient(90deg,rgba(11,142,214,.05),transparent)}
@media(max-width:720px){
  .user-account-hero{grid-template-columns:auto 1fr;padding:20px 16px;border-radius:22px}
  .account-status-chip{grid-column:1/-1;justify-self:start}
  .user-account-stats{grid-template-columns:1fr}
  .account-management-card{padding:19px 15px}
  .user-delete-zone{grid-template-columns:1fr;padding:20px 16px}
  .account-form-action{height:auto}
}


/* =========================================================
   ONS Moments v2.10.2 - clear guest face-search flow
   ========================================================= */
.face-flow-shell{display:grid;gap:18px!important;padding:18px!important;background:linear-gradient(155deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 68%,white),#fff 42%,color-mix(in srgb,var(--guest-soft,#edf5ff) 36%,white))!important}
.face-flow-hero{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:center;padding:18px;border:1px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 15%,transparent);border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 88%,white),color-mix(in srgb,var(--guest-card,#fff) 94%,white));box-shadow:0 12px 30px rgba(32,52,100,.06)}
.face-flow-hero>span{width:58px;height:58px;display:grid;place-items:center;border-radius:19px;background:#fff;color:var(--guest-accent,#0b8ed6);box-shadow:0 9px 23px rgba(32,52,100,.09)}
.face-flow-hero>span svg{width:29px;height:29px}.face-flow-hero h2{margin:0 0 5px;color:var(--guest-ink,var(--primary));font-size:21px}.face-flow-hero p{margin:0;color:var(--guest-muted,var(--muted));font-size:10px;line-height:1.7}
.face-flow-steps{display:grid;grid-template-columns:minmax(72px,1fr) 38px minmax(72px,1fr) 38px minmax(72px,1fr);align-items:start;gap:4px;padding:16px 12px;border:1px solid var(--guest-border,var(--line));border-radius:21px;background:rgba(255,255,255,.72)}
.face-flow-steps>div{display:grid;justify-items:center;text-align:center;gap:8px;min-width:0}.face-flow-steps>div>span{position:relative;width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#f4f7fc;color:#8b96aa;border:1px solid #e4e9f1}.face-flow-steps svg{width:23px;height:23px}.face-flow-steps i{position:absolute;inset-inline-end:-5px;bottom:-5px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#9aa5b8;color:#fff;font-size:8px;font-style:normal;font-weight:900;border:2px solid #fff}.face-flow-steps b{font-size:9px;color:var(--guest-muted,var(--muted));line-height:1.45}.face-flow-steps>em{align-self:center;height:1px;border-top:2px dashed #d4dbe7;margin-top:24px}.face-flow-steps .is-active>span,.face-flow-steps .is-complete>span{background:linear-gradient(145deg,#f0f6ff,#f5f1ff);color:var(--guest-accent,#0b8ed6);border-color:color-mix(in srgb,var(--guest-accent,#0b8ed6) 28%,white);box-shadow:0 8px 20px color-mix(in srgb,var(--guest-accent,#0b8ed6) 13%,transparent)}.face-flow-steps .is-active i,.face-flow-steps .is-complete i{background:var(--guest-accent,#0b8ed6)}.face-flow-steps .is-active b,.face-flow-steps .is-complete b{color:var(--guest-ink,var(--primary));font-weight:900}
.face-flow-form{gap:14px!important}.face-flow-main-card{display:grid;justify-items:center;text-align:center;gap:10px;padding:22px 18px;border:1px solid var(--guest-border,var(--line));border-radius:23px;background:#fff}.face-flow-main-card>small{padding:6px 12px;border-radius:999px;background:var(--guest-soft,#edf5ff);color:var(--guest-accent,#0b8ed6);font-weight:900;font-size:9px}.face-flow-main-card h3{margin:2px 0 0;color:var(--guest-ink,var(--primary));font-size:22px}.face-flow-main-card>p{max-width:470px;margin:0;color:var(--guest-muted,var(--muted));line-height:1.8;font-size:10px}.face-flow-illustration{width:76px;height:76px;margin:4px 0 2px;display:grid;place-items:center;border-radius:25px;background:linear-gradient(145deg,#edf5ff,#f5efff);color:var(--guest-accent,#0b8ed6);box-shadow:0 10px 25px rgba(32,52,100,.08)}.face-flow-illustration svg{width:38px;height:38px}
.face-flow-main-card .selfie-capture-card{width:100%;margin-top:3px}.face-flow-main-card .selfie-open-button{min-height:62px!important;border:0!important;border-radius:18px!important;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;color:#fff!important;box-shadow:0 12px 26px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)!important}.face-flow-main-card .selfie-open-button>span:first-child{background:rgba(255,255,255,.14)!important}.face-flow-main-card .selfie-open-button b{font-size:12px;color:#fff}.face-flow-main-card .selfie-open-button small{color:rgba(255,255,255,.76)}.face-flow-main-card .selfie-selected{width:100%;grid-template-columns:64px 1fr auto;padding:10px;border-radius:17px}.face-flow-main-card .selfie-selected span{display:none}.face-flow-main-card .selfie-selected img{width:64px!important;height:78px!important}
.face-flow-profile-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;border:1px solid color-mix(in srgb,#17a673 24%,white);border-radius:22px;background:linear-gradient(145deg,#f1fbf7,#fff)}.face-flow-profile-card>span{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:#e8f8f1;color:#12805c}.face-flow-profile-card>span svg{width:27px;height:27px}.face-flow-profile-card small{display:block;color:#12805c;font-size:9px;font-weight:900}.face-flow-account-name{display:inline-flex!important;margin:3px 0 4px!important;color:var(--guest-accent-2,var(--primary))!important;font-size:17px!important;font-weight:950!important;text-decoration:none!important;border-bottom:1px dashed color-mix(in srgb,var(--guest-accent,#0b8ed6) 42%,transparent)}.face-flow-profile-card p{margin:0;color:var(--guest-muted,var(--muted));font-size:9px;line-height:1.7}.face-flow-account-link{display:inline-flex;align-items:center;gap:5px;padding:9px 11px;border-radius:13px;background:#fff;color:var(--guest-accent,#0b8ed6);font-size:9px;font-weight:900;border:1px solid var(--guest-border,var(--line));text-decoration:none}.face-flow-account-link svg{width:14px;height:14px}
.face-flow-consent-card{display:grid;gap:12px;padding:16px 17px;border:1px solid var(--guest-border,var(--line));border-radius:20px;background:rgba(255,255,255,.88)}.face-flow-consent-title{display:flex;align-items:center;gap:10px}.face-flow-consent-title>span{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:var(--guest-soft,#edf5ff);color:var(--guest-accent,#0b8ed6)}.face-flow-consent-title svg{width:21px;height:21px}.face-flow-consent-title b{display:block;color:var(--guest-ink,var(--primary));font-size:12px}.face-flow-consent-title small{display:block;margin-top:2px;color:var(--guest-muted,var(--muted));font-size:8px}.face-flow-consent{display:flex;align-items:flex-start;gap:10px;padding-top:11px;border-top:1px solid var(--guest-border,var(--line));color:var(--guest-muted,var(--muted));font-size:9px;line-height:1.75}.face-flow-consent input{width:21px!important;height:21px!important;margin-top:1px!important;flex:0 0 auto}.face-flow-consent a{color:var(--guest-accent,#0b8ed6);font-weight:900}
.face-flow-submit{min-height:57px!important;border-radius:18px!important;font-size:13px!important;font-weight:950!important;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;box-shadow:0 12px 28px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)!important}.face-flow-submit svg{width:21px;height:21px}.face-flow-form:has(.face-flow-consent input:not(:checked)) .face-flow-submit{filter:saturate(.55);opacity:.72}
@media(max-width:620px){.face-flow-shell{padding:10px!important;gap:12px!important}.face-flow-hero{grid-template-columns:48px minmax(0,1fr);padding:14px;gap:11px}.face-flow-hero>span{width:48px;height:48px;border-radius:16px}.face-flow-hero h2{font-size:17px}.face-flow-hero p{font-size:8.5px}.face-flow-steps{grid-template-columns:minmax(62px,1fr) 20px minmax(62px,1fr) 20px minmax(62px,1fr);padding:13px 5px}.face-flow-steps>div>span{width:42px;height:42px;border-radius:14px}.face-flow-steps b{font-size:7.4px}.face-flow-steps>em{margin-top:21px}.face-flow-main-card{padding:18px 12px}.face-flow-main-card h3{font-size:18px}.face-flow-profile-card{grid-template-columns:47px minmax(0,1fr);padding:14px;gap:11px}.face-flow-profile-card>span{width:47px;height:47px;border-radius:15px}.face-flow-account-link{grid-column:1/-1;justify-content:center;width:100%}.face-flow-account-name{font-size:15px!important}.face-flow-consent-card{padding:14px}.face-flow-submit{min-height:53px!important}}

/* =========================================================
   ONS Moments v2.12.0 — sequential face flow, QR-only entry,
   event expiry countdown, global email design controls
   ========================================================= */
.face-wizard-step[hidden]{display:none!important}
.face-wizard-step{display:grid;gap:15px;animation:onsStepIn .28s ease both}
@keyframes onsStepIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.face-wizard-progress{display:grid;grid-template-columns:1fr 32px 1fr 32px 1fr;align-items:center;padding:12px 14px;border:1px solid var(--guest-border,var(--line));border-radius:18px;background:rgba(255,255,255,.78)}
.face-wizard-progress>span{display:grid;justify-items:center;gap:5px;color:#98a2b3;text-align:center}.face-wizard-progress>span i{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#eef2f8;font-style:normal;font-size:10px;font-weight:950}.face-wizard-progress>span i svg{width:15px;height:15px}.face-wizard-progress>span b{font-size:8px}.face-wizard-progress>em{height:1px;border-top:2px dashed #d7deea}.face-wizard-progress>span.active,.face-wizard-progress>span.done{color:var(--guest-accent,#0b8ed6)}.face-wizard-progress>span.active i{background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)}.face-wizard-progress>span.done i{background:#eaf8f2;color:#0b8f61}.consent-only-step .face-flow-consent-card{padding:22px}.face-flow-consent-title p{margin:3px 0 0;color:var(--guest-muted,var(--muted));font-size:9px;line-height:1.65}.face-wizard-actions{display:flex;gap:10px;align-items:center}.face-wizard-actions>*{flex:1}.face-flow-submit:disabled{cursor:not-allowed;opacity:.45!important;filter:grayscale(.25);box-shadow:none!important}.face-search-results-step>.face-wizard-progress{margin-bottom:14px}.modern-login-choice{display:grid;gap:12px}.account-choice-actions{display:flex;gap:9px;flex-wrap:wrap}.account-choice-actions>*{flex:1;min-width:150px}

.interactive-face-camera .selfie-video-frame{position:relative;overflow:hidden}.interactive-face-camera .face-guide.interactive{transition:.2s ease}.interactive-face-camera [data-face-scan-frame].face-found .face-guide{border-color:#31c48d!important;box-shadow:0 0 0 999px rgba(6,18,38,.48),0 0 28px rgba(49,196,141,.5)!important}.interactive-face-camera [data-face-scan-frame].face-ready .face-guide{border-color:#fff!important;animation:faceReadyPulse .55s ease infinite alternate}.face-scan-corners{position:absolute;inset:16%;pointer-events:none}.face-scan-corners i{position:absolute;width:35px;height:35px;border-color:#fff;border-style:solid;filter:drop-shadow(0 2px 5px rgba(0,0,0,.35))}.face-scan-corners i:nth-child(1){top:0;right:0;border-width:4px 4px 0 0;border-radius:0 16px 0 0}.face-scan-corners i:nth-child(2){top:0;left:0;border-width:4px 0 0 4px;border-radius:16px 0 0 0}.face-scan-corners i:nth-child(3){bottom:0;right:0;border-width:0 4px 4px 0;border-radius:0 0 16px 0}.face-scan-corners i:nth-child(4){bottom:0;left:0;border-width:0 0 4px 4px;border-radius:0 0 0 16px}.face-auto-countdown{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:74px;height:74px;display:grid;place-items:center;border-radius:50%;background:rgba(10,30,62,.8);color:#fff;font-size:37px;font-weight:950;border:3px solid rgba(255,255,255,.85);z-index:6}.face-auto-countdown[hidden]{display:none!important}.camera-status{z-index:7}.selfie-camera-actions [data-auto-capture-hint]{font-size:8px;color:var(--muted);max-width:100px;text-align:center}.camera-shutter{flex:0 0 auto}@keyframes faceReadyPulse{to{transform:scale(1.025)}}

.qr-only-join{text-align:center;display:grid;justify-items:center;gap:9px;padding:28px!important}.qr-only-join h2{margin:0;font-size:25px}.qr-only-join p{max-width:470px;margin:0 0 8px;color:var(--muted);line-height:1.8}.qr-join-icon{width:76px;height:76px;display:grid;place-items:center;border-radius:25px;background:linear-gradient(145deg,#edf5ff,#f1ebff);color:var(--secondary);box-shadow:0 13px 30px rgba(49,35,94,.11)}.qr-join-icon svg{width:38px;height:38px}.qr-only-join>.primary-btn{width:min(100%,390px);justify-content:center}.qr-only-join>.secondary-btn{width:min(100%,300px);justify-content:center}.qr-scanner-dialog{width:min(94vw,520px);padding:0;border:0;border-radius:26px;overflow:hidden;background:#08111f;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.45)}.qr-scanner-dialog::backdrop{background:rgba(5,12,25,.72);backdrop-filter:blur(7px)}.qr-scanner-shell{padding:16px;display:grid;gap:14px}.qr-scanner-shell>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.qr-scanner-shell header small{color:#8fd4ff}.qr-scanner-shell h2{margin:2px 0 0;color:#fff}.qr-video-frame{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:22px;background:#020712}.qr-video-frame video{width:100%;height:100%;object-fit:cover}.qr-scan-frame{position:absolute;inset:19%;pointer-events:none}.qr-scan-frame i{position:absolute;width:42px;height:42px;border-style:solid;border-color:#72d1ff}.qr-scan-frame i:nth-child(1){top:0;right:0;border-width:5px 5px 0 0;border-radius:0 18px 0 0}.qr-scan-frame i:nth-child(2){top:0;left:0;border-width:5px 0 0 5px;border-radius:18px 0 0 0}.qr-scan-frame i:nth-child(3){bottom:0;right:0;border-width:0 5px 5px 0;border-radius:0 0 18px 0}.qr-scan-frame i:nth-child(4){bottom:0;left:0;border-width:0 0 5px 5px;border-radius:0 0 0 18px}.qr-video-frame p{position:absolute;inset:auto 16px 16px;margin:0;padding:10px 12px;border-radius:13px;background:rgba(4,15,32,.74);backdrop-filter:blur(8px);text-align:center;font-size:10px}.qr-scanner-shell>.secondary-btn{justify-content:center;background:#fff;color:#14213d}

.live-pill.countdown-pill{background:rgba(255,255,255,.17)!important;gap:7px;min-width:max-content}.live-pill.countdown-pill svg{width:14px;height:14px}.live-pill.countdown-pill span{font-variant-numeric:tabular-nums}

.account-delete-dialog{width:min(92vw,450px);padding:27px;border:0;border-radius:26px;text-align:center;box-shadow:0 30px 100px rgba(15,23,42,.38)}.account-delete-dialog::backdrop{background:rgba(15,23,42,.58);backdrop-filter:blur(6px)}.delete-dialog-icon{width:66px;height:66px;margin:0 auto 12px;display:grid;place-items:center;border-radius:22px;background:#fff0ee;color:#c43226}.delete-dialog-icon svg{width:32px;height:32px}.account-delete-dialog h2{margin:5px 0 8px}.account-delete-dialog p{color:var(--muted);line-height:1.8}.delete-dialog-actions{display:flex;gap:10px;margin-top:19px}.delete-dialog-actions>*{flex:1}.delete-dialog-actions form button{width:100%}

.email-design-scope{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 16px}.email-design-scope .option-card{min-height:94px}.apply-design-all{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:15px 16px;border:1px solid rgba(11,142,214,.2);border-radius:18px;background:linear-gradient(135deg,#f1f8ff,#f9f6ff)}.apply-design-all b{display:block;color:var(--primary)}.apply-design-all p{margin:3px 0 0;color:var(--muted);font-size:9px}.apply-design-all button{flex:0 0 auto}

@media(max-width:650px){.face-wizard-progress{grid-template-columns:1fr 16px 1fr 16px 1fr;padding:10px 7px}.face-wizard-progress>span b{font-size:7px}.face-wizard-actions{flex-direction:column}.face-wizard-actions>*{width:100%;flex:auto}.qr-only-join{padding:22px 15px!important}.email-design-scope{grid-template-columns:1fr}.apply-design-all{align-items:stretch;flex-direction:column}.apply-design-all button{width:100%}.delete-dialog-actions{flex-direction:column}.account-delete-dialog{padding:22px 16px}}

/* =========================================================
   ONS Moments v2.12.0 — focused face journey and watermark policy
   ========================================================= */
.face-account-strip{display:flex;align-items:center;gap:12px;padding:14px 15px;border:1px solid var(--guest-border,var(--line));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--guest-accent,#0b8ed6) 7%,#fff),color-mix(in srgb,var(--guest-accent-2,#31235e) 5%,#fff));box-shadow:0 10px 26px rgba(28,49,91,.07)}
.face-account-strip>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;flex:0 0 auto}.face-account-strip>span svg{width:23px;height:23px}.face-account-strip>div{min-width:0;flex:1}.face-account-strip small{display:block;color:var(--guest-muted,var(--muted));font-size:8px}.face-account-strip b{display:block;margin-top:2px;color:var(--guest-ink,var(--primary));font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.face-account-strip p{margin:2px 0 0;color:var(--guest-muted,var(--muted));font-size:8px;line-height:1.55}.face-account-open{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#fff;color:var(--guest-accent,#0b8ed6);box-shadow:0 7px 18px rgba(15,36,77,.09);flex:0 0 auto}.face-account-open svg{width:18px;height:18px}
.face-step-transition{position:absolute;inset:0;z-index:15;display:grid;place-content:center;justify-items:center;gap:8px;min-height:100%;padding:30px;text-align:center;border-radius:24px;background:color-mix(in srgb,#fff 91%,var(--guest-accent,#0b8ed6));backdrop-filter:blur(13px);opacity:0;transform:scale(.97);pointer-events:none}.face-flow-form{position:relative}.face-step-transition[hidden]{display:none!important}.face-step-transition.is-active{animation:faceTransitionIn .3s cubic-bezier(.2,.8,.2,1) forwards}.face-step-transition.is-leaving{animation:faceTransitionOut .25s ease forwards}.face-step-transition>span{position:relative;width:78px;height:78px;display:grid;place-items:center;border-radius:27px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;box-shadow:0 18px 44px color-mix(in srgb,var(--guest-accent,#0b8ed6) 27%,transparent)}.face-step-transition>span:before,.face-step-transition>span:after{content:"";position:absolute;inset:-9px;border:1px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 34%,transparent);border-radius:32px;animation:faceTransitionRing 1.05s ease-out infinite}.face-step-transition>span:after{inset:-18px;animation-delay:.2s}.face-step-transition>span svg{width:36px;height:36px}.face-step-transition b{font-size:20px;color:var(--guest-ink,var(--primary))}.face-step-transition small{max-width:270px;color:var(--guest-muted,var(--muted));font-size:10px;line-height:1.7}.face-wizard-step.is-current{animation:faceStepPremiumIn .48s cubic-bezier(.18,.85,.28,1) both}.face-search-results-step{animation:faceResultsReveal .62s cubic-bezier(.18,.85,.28,1) both}
@keyframes faceTransitionIn{to{opacity:1;transform:scale(1)}}@keyframes faceTransitionOut{to{opacity:0;transform:scale(1.025)}}@keyframes faceTransitionRing{0%{opacity:.8;transform:scale(.84)}100%{opacity:0;transform:scale(1.17)}}@keyframes faceStepPremiumIn{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}@keyframes faceResultsReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.login-choice-icon{width:72px;height:72px;display:grid;place-items:center;margin:0 auto;border-radius:24px;background:linear-gradient(145deg,#eef7ff,#f4efff);color:var(--guest-accent,#0b8ed6)}.login-choice-icon svg{width:35px;height:35px}
.locked-toggle{background:linear-gradient(135deg,#f1f8ff,#f7f2ff)!important;border:1px solid rgba(11,142,214,.22)!important;padding:12px!important;border-radius:16px}.locked-toggle input{opacity:.72}.locked-setting-note{display:block;margin:-5px 0 8px;padding-inline:11px;color:var(--muted);font-size:8px}.option-card.is-locked{border-color:rgba(11,142,214,.28);background:linear-gradient(135deg,#f1f8ff,#f8f5ff)}
.watermark-policy-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:7.5px;font-weight:900}.watermark-policy-chip.required{background:#eaf5ff;color:#0874b5}.watermark-policy-chip.optional{background:#f1ecff;color:#5c43a5}.watermark-policy-section .field-help{margin:-3px 0 12px;color:var(--muted);font-size:9px}.policy-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.policy-choice{position:relative;display:grid;grid-template-columns:auto 42px minmax(0,1fr);align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;cursor:pointer;transition:.2s ease}.policy-choice:hover{border-color:rgba(11,142,214,.35);transform:translateY(-1px)}.policy-choice:has(input:checked){border-color:var(--secondary);box-shadow:0 0 0 3px rgba(11,142,214,.09);background:linear-gradient(135deg,#f4f9ff,#faf7ff)}.policy-choice>input{width:18px!important;height:18px!important;margin:0!important}.policy-choice>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#eef5ff;color:var(--secondary)}.policy-choice>span svg{width:20px;height:20px}.policy-choice b{display:block;color:var(--primary);font-size:10px}.policy-choice small{display:block;margin-top:3px;color:var(--muted);font-size:8px;line-height:1.6}
@media(max-width:650px){.face-account-strip{padding:12px}.face-account-strip>span{width:43px;height:43px;border-radius:14px}.face-account-strip b{font-size:12px}.face-step-transition{padding:22px 14px}.face-step-transition>span{width:68px;height:68px;border-radius:23px}.face-step-transition b{font-size:17px}.policy-choice-grid{grid-template-columns:1fr}.policy-choice{grid-template-columns:auto 38px minmax(0,1fr);padding:12px}.policy-choice>span{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.face-step-transition,.face-wizard-step.is-current,.face-search-results-step,.face-step-transition>span:before,.face-step-transition>span:after{animation:none!important;transition:none!important}.face-step-transition.is-active{opacity:1;transform:none}}

/* =========================================================
   ONS Moments v2.12.1 — email rendering, face navigation,
   compact account action and admin audience analytics
   ========================================================= */
.face-account-strip .guest-account-name{display:block!important;margin:2px 0 0!important;max-width:100%;color:var(--guest-ink,var(--primary))!important;font-size:14px!important;font-weight:950!important;line-height:1.35!important;text-decoration:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0!important}
.face-account-open{width:auto!important;min-width:74px;height:38px;padding:0 10px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:5px;border:1px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 15%,transparent);font-size:8px;font-weight:950;line-height:1;white-space:nowrap;text-decoration:none!important}
.face-account-open span{display:block}.face-account-open svg{width:14px!important;height:14px!important;flex:0 0 auto}

.face-wizard-progress>span{min-width:0}
.face-progress-control{appearance:none;-webkit-appearance:none;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:none;display:grid;justify-items:center;gap:5px;cursor:default}
.face-wizard-progress>span.clickable .face-progress-control{cursor:pointer;border-radius:13px;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.face-wizard-progress>span.clickable .face-progress-control:hover,.face-wizard-progress>span.clickable .face-progress-control:focus-visible{transform:translateY(-1px);background:color-mix(in srgb,var(--guest-accent,#0b8ed6) 8%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--guest-accent,#0b8ed6) 8%,transparent);outline:0}
.face-progress-control i{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#eef2f8;font-style:normal;font-size:10px;font-weight:950}
.face-progress-control i svg{width:15px;height:15px}.face-progress-control b{font-size:8px}
.face-wizard-progress>span.active .face-progress-control i{background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)}
.face-wizard-progress>span.done .face-progress-control i{background:#eaf8f2;color:#0b8f61}

.admin-audience-summary{display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:14px;margin:14px 0 22px;padding:16px 18px;border:1px solid rgba(11,142,214,.18);border-radius:20px;background:linear-gradient(135deg,#f3f9ff,#faf7ff);box-shadow:0 12px 28px rgba(31,53,98,.06);text-decoration:none;color:inherit}
.admin-audience-summary>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.admin-audience-summary>span svg{width:24px;height:24px}.admin-audience-summary small{display:block;color:var(--muted);font-size:8px}.admin-audience-summary b{display:block;margin:3px 0;color:var(--primary);font-size:13px}.admin-audience-summary p{margin:0;color:var(--muted);font-size:8px;line-height:1.65}.admin-audience-summary>strong{color:var(--secondary)}.admin-audience-summary>strong svg{width:20px;height:20px}
.analytics-range-card{display:grid;gap:13px;padding:17px 18px}.analytics-range-card nav{display:flex;gap:8px;flex-wrap:wrap}.analytics-range-card nav a{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:8px;font-weight:900;text-decoration:none}.analytics-range-card nav a.active{border-color:var(--secondary);background:linear-gradient(135deg,#eef7ff,#f6f1ff);color:var(--primary);box-shadow:0 0 0 3px rgba(11,142,214,.08)}.analytics-range-card form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.analytics-range-card form label{display:grid;gap:6px;font-size:8px;font-weight:900}.analytics-range-card form button{height:45px}.analytics-range-card>p{margin:0;color:var(--muted);font-size:8px}
.analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.analytics-kpis article{display:grid;gap:6px;padding:17px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 10px 26px rgba(31,53,98,.05)}.analytics-kpis article>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#eef7ff,#f4efff);color:var(--secondary)}.analytics-kpis article>span svg{width:21px;height:21px}.analytics-kpis small{color:var(--muted);font-size:8px}.analytics-kpis b{font-size:24px;color:var(--primary);font-variant-numeric:tabular-nums}.analytics-kpis em{font-style:normal;color:var(--muted);font-size:8px;line-height:1.5}
.analytics-table-card{padding:18px}.analytics-table-card .card-title-row>span{color:var(--muted);font-size:8px}.table-scroll{overflow:auto}.analytics-table{width:100%;border-collapse:collapse;min-width:520px}.analytics-table th,.analytics-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:start;font-size:9px}.analytics-table th{color:var(--muted);font-size:8px}.analytics-table td:nth-child(n+2){font-variant-numeric:tabular-nums;font-weight:900;color:var(--primary)}

.email-template-preview-card,.email-template-preview-card *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.email-template-preview-card header em{color:var(--template-eyebrow-color)!important}.email-template-preview-card h2{color:var(--template-title-color)!important}.email-template-preview-card main>p{color:var(--template-intro-color)!important}.email-template-preview-card main>div{color:var(--template-body-color)!important}.email-template-preview-card button{color:var(--template-button-text-color)!important}.email-template-preview-card footer b{color:var(--template-footer-title-color)!important}.email-template-preview-card footer span{color:var(--template-footer-text-color)!important}

@media(max-width:760px){.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-range-card form{grid-template-columns:1fr 1fr}.analytics-range-card form button{grid-column:1/-1}.admin-audience-summary{grid-template-columns:42px minmax(0,1fr) 20px;padding:14px}.admin-audience-summary>span{width:42px;height:42px;border-radius:14px}}
@media(max-width:520px){.face-account-strip{display:grid!important;grid-template-columns:43px minmax(0,1fr) auto!important;gap:9px!important}.face-account-strip .guest-account-name{font-size:12px!important}.face-account-strip p{font-size:7px!important}.face-account-open{min-width:60px!important;height:34px!important;padding:0 8px!important;font-size:7px!important}.face-account-open svg{width:12px!important;height:12px!important}.analytics-kpis{grid-template-columns:1fr}.analytics-range-card form{grid-template-columns:1fr}.analytics-range-card form button{grid-column:auto}.admin-audience-summary b{font-size:11px}.admin-audience-summary p{font-size:7px}}

/* v2.12.1 — compact account action, provider photo manager and stable mobile controls */
.face-account-strip{min-width:0;overflow:hidden}
.face-account-strip>div{overflow:hidden}
.face-account-open{box-sizing:border-box!important;max-width:84px!important;overflow:hidden!important;flex:0 0 auto!important;background:color-mix(in srgb,#fff 94%,var(--guest-accent,#0b8ed6))!important;color:var(--guest-accent,#0b8ed6)!important;box-shadow:0 7px 18px rgba(15,36,77,.07)!important}
.face-account-open span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.face-account-open:hover,.face-account-open:focus-visible{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,36,77,.11)!important;outline:0}

.provider-photo-manager{padding:18px}
.provider-photo-manager .card-title-row{align-items:flex-start;gap:12px}.provider-photo-manager .card-title-row h2{margin:3px 0 5px}.provider-photo-manager .card-title-row p{max-width:690px;margin:0;color:var(--muted);font-size:9px;line-height:1.75}.photo-manager-count{flex:0 0 auto;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:8px;font-weight:900}
.provider-photo-manager-toolbar{position:sticky;top:8px;z-index:5;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:14px 0;padding:11px 12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 8px 22px rgba(25,43,82,.07);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.provider-photo-manager-toolbar label{display:inline-flex;align-items:center;gap:7px;font-size:9px;font-weight:900;white-space:nowrap}.provider-photo-manager-toolbar input{width:17px;height:17px;accent-color:var(--secondary)}.provider-photo-manager-toolbar b{color:var(--muted);font-size:9px;text-align:center}.provider-photo-manager-toolbar button{margin:0;min-height:39px;padding:9px 12px;font-size:9px;white-space:nowrap}.provider-photo-manager-toolbar button svg{width:16px;height:16px}
.provider-photo-delete-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.provider-photo-delete-card{position:relative;display:grid;min-width:0;overflow:hidden;border:2px solid transparent;border-radius:16px;background:#f1f4f8;cursor:pointer;box-shadow:0 7px 18px rgba(26,43,78,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.provider-photo-delete-card>input{position:absolute;opacity:0;pointer-events:none}.provider-photo-delete-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#edf0f5}.provider-photo-delete-card small{display:block;min-width:0;padding:8px 9px;background:#fff;color:var(--muted);font-size:7px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.provider-photo-check{position:absolute;top:8px;inset-inline-start:8px;width:28px;height:28px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.92);border-radius:10px;background:rgba(20,31,56,.5);color:transparent;box-shadow:0 4px 12px rgba(10,22,47,.16);backdrop-filter:blur(6px)}.provider-photo-check svg{width:16px;height:16px}
.provider-photo-delete-card:hover{transform:translateY(-2px);box-shadow:0 11px 24px rgba(26,43,78,.11)}.provider-photo-delete-card.is-selected{border-color:#df3d54;box-shadow:0 0 0 3px rgba(223,61,84,.10),0 11px 24px rgba(26,43,78,.10)}.provider-photo-delete-card.is-selected .provider-photo-check{background:#df3d54;color:#fff}

.matched-photo-download,.save-all-photos{appearance:none;-webkit-appearance:none;font-family:inherit;cursor:pointer}.matched-photo-download:disabled,.save-all-photos:disabled{cursor:wait}

@media(max-width:620px){
  .face-account-open{min-width:56px!important;max-width:64px!important;height:34px!important;padding:0 7px!important;font-size:7px!important;gap:3px!important}
  .face-account-open svg{width:11px!important;height:11px!important}
  .provider-photo-manager{padding:13px}.provider-photo-manager .card-title-row{display:grid}.photo-manager-count{justify-self:start}.provider-photo-manager-toolbar{position:static;grid-template-columns:1fr auto;gap:8px}.provider-photo-manager-toolbar b{grid-column:1/-1;grid-row:2;text-align:start}.provider-photo-manager-toolbar button{min-height:37px}.provider-photo-delete-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.provider-photo-delete-card{border-radius:13px}.provider-photo-delete-card small{font-size:6px;padding:6px}.provider-photo-check{top:6px;inset-inline-start:6px;width:24px;height:24px;border-radius:8px}
}
@media(max-width:370px){.face-account-open span{display:none}.face-account-open{min-width:34px!important;max-width:34px!important;padding:0!important}.provider-photo-delete-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2.12.2 — safe face-step review and live workspace statistics */
.selfie-selected{align-items:center!important}.selfie-selected-actions{display:grid;gap:7px;justify-items:stretch;min-width:150px}.selfie-selected-actions button{margin:0!important;white-space:nowrap}
.face-reference-review,.face-reference-retake{width:100%;box-sizing:border-box}.face-flow-illustration.saved-face{background:linear-gradient(145deg,#eaf9f2,#f6fffb);color:#0b8f61}.face-reference-choice-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:100%;margin-top:6px}.face-reference-choice-actions>a,.face-reference-choice-actions>button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:0;text-decoration:none}.face-reference-choice-actions svg{width:17px;height:17px}.face-reference-retake>.text-button{margin-top:4px;color:var(--guest-accent,#0b8ed6);font-weight:900;text-decoration:underline;background:transparent;border:0}
[data-live-workspace-stats].is-refreshing [data-live-stat]{opacity:.72}.live-stat-updated{display:inline-flex;align-items:center;gap:6px;margin-inline-start:8px;color:var(--muted);font-size:8px}.live-stat-updated:before{content:"";width:7px;height:7px;border-radius:50%;background:#17a673;box-shadow:0 0 0 4px rgba(23,166,115,.12)}
[data-live-stat]{font-variant-numeric:tabular-nums;transition:opacity .18s ease,transform .18s ease}[data-live-stat].is-changed{transform:scale(1.08)}
@media(max-width:560px){.face-reference-choice-actions{grid-template-columns:1fr}.selfie-selected{grid-template-columns:58px minmax(0,1fr)!important}.selfie-selected-actions{min-width:0}.selfie-selected-actions button{width:100%;font-size:8px!important}}
.email-deliverability-card{display:grid;gap:16px;padding:18px;margin:14px 0 20px}.email-deliverability-card .card-title-row p{max-width:760px;margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.7}.email-deliverability-card .card-title-row>span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:8px;font-weight:900}.email-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.email-health-grid>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#f8faff}.email-health-grid b{font-size:9px}.email-health-pill{padding:5px 8px;border-radius:999px;font-size:7px;font-weight:950;white-space:nowrap}.email-health-pill.ok{background:#e9f9f1;color:#0b7f59}.email-health-pill.warn{background:#fff4df;color:#9a5d00}.email-deliverability-card dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 12px;margin:0;padding:12px;border-radius:15px;background:#f8faff}.email-deliverability-card dt{color:var(--muted);font-size:8px}.email-deliverability-card dd{margin:0;overflow-wrap:anywhere;font-size:8px;font-weight:900}.email-deliverability-card>small{color:var(--muted);font-size:8px;line-height:1.7}
@media(max-width:720px){.email-health-grid{grid-template-columns:1fr 1fr}}@media(max-width:420px){.email-health-grid{grid-template-columns:1fr}}

/* =====================================================================
   ONS Moments 2.12.3 — exact email colours, premium capture/preview,
   photo-live placement and clickable previous request steps
   ===================================================================== */

/* Live status belongs to the photo counter only. */
.stats>div.photo-live-stat{position:relative;padding-top:40px!important}
.photo-live-stat>.live-stat-updated{position:absolute;top:10px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:0;padding:5px 9px;border:1px solid rgba(23,166,115,.18);border-radius:999px;background:#effaf5;color:#0c7c58!important;font-size:7.5px!important;font-weight:900;white-space:nowrap;line-height:1}
.photo-live-stat>.live-stat-updated:before{width:7px;height:7px;flex:0 0 7px;background:#17a673;box-shadow:0 0 0 4px rgba(23,166,115,.12);animation:onsLivePhotoPulse 1.8s ease-in-out infinite}
@keyframes onsLivePhotoPulse{50%{box-shadow:0 0 0 7px rgba(23,166,115,.04)}}

/* Request progress: completed previous steps are proper compact buttons. */
.request-progress-steps>div>button{appearance:none;-webkit-appearance:none;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;display:grid;justify-items:center;text-align:center;gap:3px;font-family:inherit;box-shadow:none;cursor:default}
.request-progress-steps>div>button>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#f1f4f8;border:3px solid #fff;box-shadow:0 0 0 1px #e7ebf2;font-size:8px;font-weight:900;transition:.2s ease}
.request-progress-steps>div>button>b{font-size:8.5px}.request-progress-steps>div>button>small{font-size:6.8px;line-height:1.35}
.request-progress-steps>div.done>button:not(:disabled){cursor:pointer}
.request-progress-steps>div.done>button:not(:disabled):hover>span,.request-progress-steps>div.done>button:not(:disabled):focus-visible>span{transform:translateY(-2px);box-shadow:0 8px 18px rgba(23,166,115,.18)}
.request-progress-steps>div.done>button>span{background:#eaf8f2;color:var(--v20-green)}
.request-progress-steps>div.active>button>span{background:linear-gradient(135deg,var(--v20-blue),var(--v20-violet));color:#fff;box-shadow:0 8px 20px rgba(36,107,253,.24)}
.request-progress-steps>div>button:disabled{opacity:1}

/* Premium guest photo viewer. */
html.photo-viewer-open{overflow:hidden}
.photo-viewer-dialog{width:min(96vw,850px)!important;max-width:850px!important;max-height:94dvh!important;margin:auto!important;padding:0!important;border:0!important;border-radius:30px!important;background:transparent!important;overflow:visible!important;color:#17233d!important;box-shadow:0 28px 90px rgba(2,10,28,.44)!important}
.photo-viewer-dialog::backdrop{background:rgba(4,10,24,.76);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.photo-viewer-shell{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:94dvh;border:1px solid rgba(255,255,255,.55);border-radius:30px;overflow:hidden;background:linear-gradient(145deg,#ffffff,#f5f8ff 76%,#f7f3ff);box-shadow:inset 0 1px 0 rgba(255,255,255,.82)}
.photo-viewer-shell:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#0b8ed6,#4257d7,#8c2db4);z-index:9}
.photo-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px 14px;background:rgba(255,255,255,.9);border-bottom:1px solid rgba(36,73,126,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.photo-viewer-brand{display:flex;align-items:center;gap:11px;min-width:0}.photo-viewer-brand>span{width:43px;height:43px;display:grid;place-items:center;border-radius:15px;background:#fff;border:1px solid rgba(38,71,123,.1);box-shadow:0 8px 20px rgba(33,70,132,.1)}.photo-viewer-brand img{display:block;width:31px;height:31px;object-fit:contain}.photo-viewer-brand>div{display:grid;min-width:0}.photo-viewer-brand small{font-size:7px;font-weight:950;letter-spacing:1.3px;color:#0b8ed6}.photo-viewer-brand b{font-size:14px;color:#19284b}
.photo-viewer-dialog .dialog-close-button{position:static!important;inset:auto!important;width:40px!important;height:40px!important;flex:0 0 40px!important;border:1px solid rgba(35,55,95,.1)!important;background:#f4f7fc!important;color:#24324a!important;box-shadow:none!important}
.photo-viewer-stage{position:relative;display:grid;place-items:center;min-height:340px;background:radial-gradient(circle at 50% 30%,#213765,#0b1428 58%,#070d1a);overflow:hidden;touch-action:pan-y}
.photo-viewer-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 22%,transparent 76%,rgba(0,0,0,.12))}
.photo-viewer-image-wrap{position:relative;z-index:1;width:100%;height:100%;min-height:340px;display:grid;place-items:center;padding:16px 72px;box-sizing:border-box}
.photo-viewer-image-wrap img{display:block;max-width:100%;max-height:64dvh;width:auto;height:auto;object-fit:contain;border-radius:16px;box-shadow:0 18px 54px rgba(0,0,0,.3);transition:opacity .2s ease,transform .25s ease}
.photo-viewer-dialog.is-loading .photo-viewer-image-wrap img{opacity:.2;transform:scale(.985)}
.photo-viewer-loader{position:absolute;z-index:4;width:42px;height:42px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.photo-viewer-loader[hidden]{display:none!important}
.photo-viewer-nav{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px!important;padding:0!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:50%!important;background:rgba(7,18,39,.54)!important;color:#fff!important;box-shadow:0 8px 24px rgba(0,0,0,.2)!important;backdrop-filter:blur(9px)}
.photo-viewer-nav:hover{background:rgba(24,61,117,.84)!important}.photo-viewer-nav.previous{inset-inline-start:15px}.photo-viewer-nav.next{inset-inline-end:15px}.photo-viewer-nav .ons-icon{width:19px;height:19px}.photo-viewer-nav.next .ons-icon{transform:rotate(180deg)}
.photo-viewer-foot{display:grid;gap:13px;padding:15px 18px 18px;background:rgba(255,255,255,.94);border-top:1px solid rgba(36,73,126,.1)}
.photo-viewer-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}.photo-viewer-meta>div{display:grid;min-width:0}.photo-viewer-meta small{font-size:7.5px;color:#72809a}.photo-viewer-meta b{max-width:540px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#1d2d50}.photo-viewer-meta>span{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:#eef4ff;color:#1b63bd;font-size:8px;font-weight:950}
.photo-viewer-actions{display:flex;align-items:center;justify-content:space-between;gap:13px}.photo-viewer-actions .photo-album-save{min-width:205px;margin:0!important}.photo-viewer-actions .photo-save-hint{flex:1;margin:0;color:#72809a;font-size:8px;line-height:1.65;text-align:start}

/* ONS-branded biometric capture. */
.selfie-camera-dialog{width:min(95vw,470px)!important;max-width:470px!important;padding:0!important;border:0!important;border-radius:30px!important;background:transparent!important;color:#fff!important;overflow:visible!important;box-shadow:0 28px 90px rgba(2,10,28,.5)!important}
.selfie-camera-dialog::backdrop{background:rgba(4,10,24,.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.selfie-camera-shell{position:relative;padding:14px!important;border:1px solid rgba(255,255,255,.15);border-radius:30px;background:linear-gradient(155deg,#101b38,#142b58 56%,#2f2460);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.selfie-camera-shell:before{content:"";position:absolute;inset:-80px -90px auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(27,157,229,.28),transparent 68%);pointer-events:none}
.ons-face-capture-head{position:relative;z-index:2;display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;align-items:center!important;gap:9px!important;margin:0 0 12px!important}
.selfie-camera-brand{display:flex;align-items:center;gap:10px;min-width:0}.selfie-camera-brand>span{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.18)}.selfie-camera-brand img{width:30px;height:30px;object-fit:contain}.selfie-camera-brand>div{display:grid;min-width:0}.selfie-camera-brand small{color:#9fdcff!important;font-size:6.8px!important;font-weight:900;letter-spacing:.8px}.selfie-camera-brand b{color:#fff!important;font-size:11.5px!important}
.face-live-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid rgba(77,232,177,.23);border-radius:999px;background:rgba(30,167,118,.13);color:#80efc7;font-size:7px;font-weight:950;white-space:nowrap}.face-live-pill i{width:6px;height:6px;border-radius:50%;background:#4de8b1;box-shadow:0 0 0 4px rgba(77,232,177,.1);animation:onsLivePhotoPulse 1.8s ease-in-out infinite}
.ons-face-capture-head .dialog-close{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex:0 0 38px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:50%!important;background:rgba(255,255,255,.09)!important;color:#fff!important}
.interactive-face-camera .selfie-video-frame{position:relative;aspect-ratio:3/4!important;max-height:65dvh!important;border:1px solid rgba(255,255,255,.12);border-radius:24px!important;background:#050a15!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 16px 40px rgba(0,0,0,.24);overflow:hidden}
.interactive-face-camera .selfie-video-frame:before{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(31,126,210,.12),transparent 25%,transparent 75%,rgba(18,34,68,.32))}
.interactive-face-camera .camera-status{z-index:8;left:14px!important;right:14px!important;bottom:14px!important;width:auto!important;padding:9px 12px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:13px!important;background:rgba(5,15,34,.7)!important;color:#fff!important;font-size:8.5px!important;font-weight:850!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.face-capture-guidance{display:flex;align-items:center;gap:10px;margin-top:11px;padding:11px 12px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.06)}.face-capture-guidance>span{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:12px;background:linear-gradient(135deg,#0b8ed6,#6554db);color:#fff}.face-capture-guidance>span .ons-icon{width:18px;height:18px}.face-capture-guidance>div{display:grid;text-align:start}.face-capture-guidance b{font-size:8.5px;color:#fff}.face-capture-guidance small{font-size:7.2px;line-height:1.55;color:#b8c7e1}
.selfie-camera-actions{grid-template-columns:1fr 68px 1fr!important;gap:11px!important;padding-top:12px!important}.selfie-camera-actions .selfie-gallery-choice{min-height:42px!important;padding:8px 10px!important;border:1px solid rgba(255,255,255,.13)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;font-size:8px!important}.selfie-camera-actions [data-auto-capture-hint]{color:#b7c9e6!important;font-size:7px!important;line-height:1.45!important}.camera-shutter{width:64px!important;height:64px!important;background:#fff!important;box-shadow:0 0 0 5px rgba(255,255,255,.13),0 8px 28px rgba(0,0,0,.28)!important}.camera-shutter i{width:49px!important;height:49px!important;border:3px solid #d9efff!important;background:linear-gradient(135deg,#0b8ed6,#6751da)!important}

@media(max-width:650px){
  .photo-viewer-dialog{width:calc(100vw - 12px)!important;max-height:96dvh!important;border-radius:25px!important}.photo-viewer-shell{max-height:96dvh;border-radius:25px}.photo-viewer-head{padding:14px}.photo-viewer-image-wrap{min-height:300px;padding:10px 52px}.photo-viewer-image-wrap img{max-height:61dvh;border-radius:12px}.photo-viewer-nav{width:39px;height:39px;min-height:39px!important}.photo-viewer-nav.previous{inset-inline-start:8px}.photo-viewer-nav.next{inset-inline-end:8px}.photo-viewer-foot{padding:12px 14px 15px}.photo-viewer-actions{align-items:stretch;flex-direction:column}.photo-viewer-actions .photo-album-save{width:100%;min-width:0}.photo-viewer-actions .photo-save-hint{text-align:center}.photo-viewer-meta b{max-width:240px}
  .ons-face-capture-head{grid-template-columns:minmax(0,1fr) auto}.face-live-pill{grid-row:2;grid-column:1/-1;justify-self:start}.ons-face-capture-head .dialog-close{grid-column:2;grid-row:1}.selfie-camera-dialog{width:calc(100vw - 12px)!important}.selfie-camera-shell{padding:11px!important;border-radius:25px}.interactive-face-camera .selfie-video-frame{max-height:61dvh!important}.face-capture-guidance{padding:9px 10px}.selfie-camera-actions{grid-template-columns:1fr 64px 1fr!important}.camera-shutter{width:60px!important;height:60px!important}.camera-shutter i{width:46px!important;height:46px!important}
  .request-progress-steps>div>button>b{font-size:7px}.request-progress-steps>div>button>small{display:none}.request-progress-steps>div>button>span{width:30px;height:30px}
}

@media(prefers-reduced-motion:reduce){.photo-live-stat>.live-stat-updated:before,.face-live-pill i{animation:none!important}}

/* ==========================================================
   ONS Moments v2.12.5 — reliable automatic face capture,
   phone-safe biometric dialog and polished live photo badge.
   ========================================================== */

/* Premium light ONS biometric camera. The camera remains dark for contrast,
   while the surrounding shell follows the ONS blue/violet identity. */
.selfie-camera-dialog{
  width:min(calc(100vw - 16px),440px)!important;
  max-width:440px!important;
  max-height:calc(100dvh - 16px)!important;
  margin:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:28px!important;
  background:transparent!important;
  color:#17233d!important;
  overflow:hidden!important;
  box-shadow:0 26px 85px rgba(7,22,56,.38)!important;
}
.selfie-camera-dialog::backdrop{
  background:rgba(8,19,43,.62)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
.selfie-camera-shell{
  position:relative!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto auto!important;
  width:100%!important;
  max-height:calc(100dvh - 16px)!important;
  padding:12px!important;
  border:1px solid rgba(43,86,155,.13)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(105,82,222,.12),transparent 31%),
    radial-gradient(circle at 0 12%,rgba(11,142,214,.12),transparent 34%),
    linear-gradient(180deg,#fbfdff 0%,#f4f7ff 100%)!important;
  color:#17233d!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  box-sizing:border-box!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.selfie-camera-shell:before{
  content:""!important;
  position:absolute!important;
  inset:0 0 auto!important;
  width:auto!important;
  height:4px!important;
  border-radius:28px 28px 0 0!important;
  background:linear-gradient(90deg,#0b8ed6,#4257d7,#8c2db4)!important;
  pointer-events:none!important;
}
.ons-face-capture-head{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:9px!important;
  margin:2px 0 10px!important;
  padding:0 1px!important;
}
.selfie-camera-brand{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important}
.selfie-camera-brand>span{
  width:40px!important;height:40px!important;flex:0 0 40px!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(39,73,128,.1)!important;border-radius:13px!important;
  background:#fff!important;box-shadow:0 8px 22px rgba(31,67,125,.1)!important;
}
.selfie-camera-brand img{width:29px!important;height:29px!important;object-fit:contain!important}
.selfie-camera-brand>div{display:grid!important;min-width:0!important}
.selfie-camera-brand small{color:#0b8ed6!important;font-size:6.6px!important;font-weight:950!important;letter-spacing:.75px!important}
.selfie-camera-brand b{color:#19284b!important;font-size:11px!important;line-height:1.35!important;white-space:normal!important}
.ons-face-capture-head .dialog-close{
  grid-column:2!important;grid-row:1!important;
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  padding:0!important;border:1px solid rgba(35,55,95,.1)!important;border-radius:50%!important;
  background:#eef3fb!important;color:#263652!important;box-shadow:none!important;
}
.face-live-pill{
  grid-column:1/-1!important;grid-row:2!important;justify-self:start!important;
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  margin-top:1px!important;padding:5px 9px!important;
  border:1px solid rgba(23,166,115,.17)!important;border-radius:999px!important;
  background:#edf9f4!important;color:#087452!important;
  font-size:7px!important;font-weight:950!important;white-space:nowrap!important;
}
.face-live-pill i{width:6px!important;height:6px!important;border-radius:50%!important;background:#17a673!important;box-shadow:0 0 0 4px rgba(23,166,115,.11)!important}
.interactive-face-camera .selfie-video-frame{
  position:relative!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  min-height:0!important;
  max-height:min(57dvh,520px)!important;
  border:1px solid rgba(65,114,186,.2)!important;
  border-radius:22px!important;
  background:radial-gradient(circle at 50% 38%,#233967,#081225 70%)!important;
  overflow:hidden!important;
  box-shadow:0 15px 38px rgba(14,37,79,.19),inset 0 0 0 1px rgba(255,255,255,.04)!important;
}
.interactive-face-camera .selfie-video-frame video{width:100%!important;height:100%!important;object-fit:cover!important;transform:scaleX(-1)!important}
.interactive-face-camera .selfie-video-frame:before{background:linear-gradient(180deg,rgba(11,142,214,.1),transparent 26%,transparent 72%,rgba(5,16,37,.28))!important}
.face-guide{inset:11% 18%!important;border:2px solid rgba(255,255,255,.86)!important;border-radius:48% 48% 44% 44% / 40% 40% 54% 54%!important;box-shadow:0 0 0 999px rgba(4,12,29,.28)!important}
.face-scan-corners{inset:14.5% 20%!important}
.interactive-face-camera [data-face-scan-frame].face-found .face-guide{border-color:#43d9a5!important;box-shadow:0 0 0 999px rgba(4,12,29,.3),0 0 30px rgba(49,196,141,.5)!important}
.interactive-face-camera [data-face-scan-frame].face-ready .face-guide{border-color:#fff!important}
.interactive-face-camera .camera-status{
  left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;
  padding:9px 11px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:12px!important;
  background:rgba(7,20,43,.76)!important;color:#fff!important;
  font-size:8px!important;font-weight:850!important;line-height:1.45!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
}
.face-auto-countdown{width:68px!important;height:68px!important;background:rgba(11,46,91,.86)!important;border:3px solid #fff!important;font-size:33px!important;box-shadow:0 10px 32px rgba(0,0,0,.28)!important}
.face-capture-guidance{
  display:flex!important;align-items:center!important;gap:9px!important;
  margin-top:9px!important;padding:9px 10px!important;
  border:1px solid rgba(48,91,157,.11)!important;border-radius:14px!important;
  background:rgba(255,255,255,.78)!important;box-shadow:0 7px 20px rgba(36,74,132,.05)!important;
}
.face-capture-guidance>span{width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:11px!important;background:linear-gradient(135deg,#0b8ed6,#6554db)!important;color:#fff!important}
.face-capture-guidance b{color:#1b2b4d!important;font-size:8.2px!important}
.face-capture-guidance small{color:#65738b!important;font-size:6.9px!important;line-height:1.5!important}
.selfie-camera-actions{
  display:grid!important;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr)!important;
  align-items:center!important;gap:9px!important;padding-top:9px!important;
}
.selfie-camera-actions .selfie-gallery-choice{
  min-width:0!important;min-height:40px!important;padding:7px 8px!important;
  border:1px solid rgba(44,82,142,.12)!important;border-radius:13px!important;
  background:#fff!important;color:#1d4f9d!important;font-size:7.4px!important;
  box-shadow:0 6px 18px rgba(32,70,130,.06)!important;
}
.selfie-camera-actions [data-auto-capture-hint]{color:#63718a!important;font-size:6.8px!important;line-height:1.45!important;text-align:center!important}
.camera-shutter{
  width:60px!important;height:60px!important;min-height:60px!important;padding:0!important;
  border:0!important;border-radius:50%!important;background:#fff!important;
  box-shadow:0 0 0 5px rgba(11,142,214,.11),0 9px 28px rgba(35,75,140,.18)!important;
}
.camera-shutter i{width:46px!important;height:46px!important;border:3px solid #dcefff!important;background:linear-gradient(135deg,#0b8ed6,#6751da)!important}

/* The live marker belongs only to the photo counter. */
.stats>div.photo-live-stat{position:relative!important;padding-top:45px!important}
.photo-live-stat>.live-stat-updated{
  position:absolute!important;top:11px!important;inset-inline-end:11px!important;left:auto!important;
  transform:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:5px!important;margin:0!important;padding:5px 8px!important;
  border:1px solid rgba(23,166,115,.16)!important;border-radius:999px!important;
  background:linear-gradient(180deg,#f2fbf7,#eaf8f2)!important;color:#087452!important;
  font-size:7px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;
  box-shadow:0 5px 14px rgba(23,166,115,.08)!important;
}
.photo-live-stat>.live-stat-updated:before{width:6px!important;height:6px!important;flex:0 0 6px!important;background:#17a673!important;box-shadow:0 0 0 3px rgba(23,166,115,.11)!important}

@media(max-width:650px){
  .selfie-camera-dialog{width:calc(100vw - 10px)!important;max-height:calc(100dvh - 10px)!important;border-radius:24px!important}
  .selfie-camera-shell{max-height:calc(100dvh - 10px)!important;padding:9px!important;border-radius:24px!important}
  .selfie-camera-shell:before{border-radius:24px 24px 0 0!important}
  .interactive-face-camera .selfie-video-frame{max-height:55dvh!important;border-radius:19px!important}
  .selfie-camera-brand>span{width:36px!important;height:36px!important;flex-basis:36px!important}.selfie-camera-brand img{width:26px!important;height:26px!important}
  .selfie-camera-brand b{font-size:10px!important}.selfie-camera-brand small{font-size:6px!important}
  .ons-face-capture-head .dialog-close{width:35px!important;height:35px!important;min-width:35px!important;min-height:35px!important}
  .face-capture-guidance{margin-top:7px!important;padding:8px 9px!important}.face-capture-guidance>span{width:31px!important;height:31px!important;flex-basis:31px!important}
  .selfie-camera-actions{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)!important;gap:7px!important;padding-top:7px!important}
  .camera-shutter{width:56px!important;height:56px!important;min-height:56px!important}.camera-shutter i{width:43px!important;height:43px!important}
  .selfie-camera-actions .selfie-gallery-choice{min-height:38px!important;font-size:6.9px!important}.selfie-camera-actions [data-auto-capture-hint]{font-size:6.2px!important}
  .stats>div.photo-live-stat{padding-top:42px!important}.photo-live-stat>.live-stat-updated{top:9px!important;inset-inline-end:9px!important;font-size:6.6px!important}
}

@media(max-height:700px){
  .interactive-face-camera .selfie-video-frame{max-height:49dvh!important}
  .face-capture-guidance{display:none!important}
}

.dkim-check-guide{display:grid;gap:7px;margin:12px 0;padding:12px 14px;border:1px solid #dce6f4;border-radius:15px;background:#f7faff;color:#35445f}.dkim-check-guide b{font-size:9px;color:#1c2f52}.dkim-check-guide span{font-size:7.7px;line-height:1.75;color:#65738a}.dkim-check-guide code{display:block;max-width:100%;overflow:auto;padding:8px 10px;border-radius:10px;background:#eef3fb;color:#174f94;font:700 8px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;text-align:left;direction:ltr}


/* =====================================================================
   ONS Moments v2.12.5 — refined public landing and account gateway
   ===================================================================== */
.home-landing-v2125 .home-hero-v2125{padding-top:38px;padding-bottom:22px}
.home-landing-v2125 .home-hero-v2125 .hero-orb{width:232px;height:232px;margin:19px auto 16px;box-shadow:0 27px 62px rgba(49,35,94,.18)}
.home-landing-v2125 .home-hero-v2125 .hero-orb:before{width:54px;height:70px;right:-1px;top:34px;border-radius:18px}
.home-landing-v2125 .home-hero-v2125 .hero-orb:after{width:47px;height:58px;left:7px;bottom:31px;border-radius:17px}
.home-landing-v2125 .home-hero-v2125 .phone{width:119px;height:204px;border-width:5px;border-radius:27px;padding:9px 7px}
.home-landing-v2125 .home-hero-v2125 .phone-head{font-size:10px;padding:8px 0}
.home-landing-v2125 .home-hero-v2125 .mini-grid{gap:4px}
.home-landing-v2125 .home-hero-v2125 .mini-grid i{height:62px;border-radius:8px}
.home-account-gateway{width:min(100%,590px);margin:0 auto 14px;padding:13px;display:grid;grid-template-columns:49px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:start;border:1px solid rgba(49,35,94,.10);border-radius:21px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(245,249,255,.96));box-shadow:0 14px 36px rgba(36,42,85,.08);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.home-account-gateway.is-signed-in:hover{transform:translateY(-2px);border-color:rgba(11,142,214,.24);box-shadow:0 18px 42px rgba(36,42,85,.12)}
.home-account-avatar{width:49px;height:49px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#edf5ff,#eee9ff);color:var(--secondary);box-shadow:inset 0 0 0 1px rgba(49,35,94,.05)}
.home-account-avatar .ons-icon{width:24px;height:24px}
.home-account-copy{min-width:0;display:flex;flex-direction:column;line-height:1.35}
.home-account-copy small{font-size:8px;font-weight:900;color:var(--secondary);letter-spacing:.25px}
.home-account-copy b{margin-top:2px;font-size:14px;color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-account-copy em{margin-top:3px;font-size:9px;font-style:normal;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-account-chevron{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#f0f4fa;color:var(--primary)}
.home-account-chevron .ons-icon{width:17px;height:17px}
.home-account-actions{display:flex;align-items:center;gap:7px}
.home-account-actions .compact{min-width:92px;padding:9px 12px!important;font-size:10px!important;border-radius:12px!important;white-space:nowrap}
.home-gallery-cta{min-width:210px}
.top-account-pill{max-width:188px;display:flex;align-items:center;gap:8px;padding:6px 10px 6px 7px;border:1px solid rgba(49,35,94,.10);border-radius:14px;background:#f7f9fd;color:var(--primary)}
.top-account-pill>span{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,#eaf4ff,#eee9ff);color:var(--secondary);flex:0 0 auto}
.top-account-pill .ons-icon{width:16px;height:16px}
.top-account-pill b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
@media(max-width:650px){
  .home-landing-v2125 .home-hero-v2125{padding-top:27px}
  .home-landing-v2125 .home-hero-v2125 h1{margin-top:14px}
  .home-landing-v2125 .home-hero-v2125 .hero-orb{width:194px;height:194px;margin:15px auto 13px}
  .home-landing-v2125 .home-hero-v2125 .hero-orb:before{width:44px;height:57px;right:-1px;top:29px}
  .home-landing-v2125 .home-hero-v2125 .hero-orb:after{width:39px;height:49px;left:5px;bottom:25px}
  .home-landing-v2125 .home-hero-v2125 .phone{width:100px;height:171px;border-radius:23px;padding:7px 6px}
  .home-landing-v2125 .home-hero-v2125 .phone-head{font-size:8px;padding:7px 0}
  .home-landing-v2125 .home-hero-v2125 .mini-grid i{height:52px}
  .home-account-gateway{grid-template-columns:43px minmax(0,1fr) auto;padding:11px;gap:9px;border-radius:18px}
  .home-account-avatar{width:43px;height:43px;border-radius:14px}
  .home-account-copy b{font-size:12px}.home-account-copy em{font-size:8px}
  .home-account-gateway.is-guest{grid-template-columns:43px minmax(0,1fr)}
  .home-account-gateway.is-guest .home-account-actions{grid-column:1/-1;width:100%;display:grid;grid-template-columns:1fr 1fr}
  .home-account-actions .compact{width:100%;min-width:0}
  .top-account-pill{max-width:132px;padding-inline:6px}.top-account-pill b{font-size:9px}
}
@media(max-width:390px){
  .home-account-copy em{display:none}
  .top-account-pill b{max-width:66px}
}

/* =====================================================================
   ONS Moments v2.12.5 — polished face journey, scoped photo viewer,
   reliable mobile save flow, compact three-column galleries and live analytics
   ===================================================================== */
.face-wizard-step.face-enter-forward{animation:faceStepSlideForward .5s cubic-bezier(.16,.86,.25,1) both!important}
.face-wizard-step.face-enter-back{animation:faceStepSlideBack .46s cubic-bezier(.16,.86,.25,1) both!important}
@keyframes faceStepSlideForward{0%{opacity:0;transform:translateX(-34px) scale(.985);filter:blur(2px)}100%{opacity:1;transform:none;filter:none}}
@keyframes faceStepSlideBack{0%{opacity:0;transform:translateX(34px) scale(.985);filter:blur(2px)}100%{opacity:1;transform:none;filter:none}}
.face-transition-line{width:132px;height:4px;margin-top:7px;border-radius:999px;background:color-mix(in srgb,var(--guest-accent,#0b8ed6) 13%,transparent);overflow:hidden}
.face-transition-line i{display:block;width:48%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));animation:faceTransitionLoad .8s ease-in-out infinite}
@keyframes faceTransitionLoad{from{transform:translateX(-120%)}to{transform:translateX(250%)}}
.face-consent-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.face-consent-highlights>span{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px;border:1px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 11%,transparent);border-radius:13px;background:color-mix(in srgb,var(--guest-soft,#edf5ff) 56%,#fff);color:var(--guest-ink,var(--primary));font-size:7.5px;font-weight:850;text-align:center}
.face-consent-highlights svg{width:14px;height:14px;color:var(--guest-accent,#0b8ed6);flex:0 0 auto}
.selfie-capture-launch-only{height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;background:transparent!important}
.selfie-capture-launch-only>.selfie-open-button,.selfie-capture-launch-only>.selfie-selected{display:none!important}
.face-reference-review .selfie-capture-launch-only{width:0!important}
.face-search-results-step{padding-top:15px!important}
.face-search-results-step>.face-wizard-progress{display:none!important}

/* Portrait camera sheet sized to the actual phone viewport. */
.selfie-camera-dialog{width:min(calc(100vw - 20px),390px)!important;height:min(calc(100dvh - 18px),760px)!important;max-height:min(calc(100dvh - 18px),760px)!important;border-radius:30px!important}
.selfie-camera-shell{height:100%!important;max-height:100%!important;grid-template-rows:auto minmax(310px,1fr) auto auto!important;padding:12px!important;border-radius:30px!important;overflow:auto!important}
.interactive-face-camera .selfie-video-frame{height:100%!important;min-height:310px!important;max-height:none!important;aspect-ratio:auto!important;border-radius:23px!important}
.interactive-face-camera .camera-status{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;text-align:center!important;padding:10px 12px!important;font-size:8.5px!important;letter-spacing:0!important}
.camera-status-dot{width:8px;height:8px;border-radius:50%;background:#84a2c6;box-shadow:0 0 0 4px rgba(132,162,198,.14);flex:0 0 auto}
.camera-status[data-status-state="guide"] .camera-status-dot{background:#45a5e9;box-shadow:0 0 0 4px rgba(69,165,233,.16)}
.camera-status[data-status-state="warning"] .camera-status-dot{background:#f0a43a;box-shadow:0 0 0 4px rgba(240,164,58,.17)}
.camera-status[data-status-state="ready"] .camera-status-dot,.camera-status[data-status-state="success"] .camera-status-dot{background:#35d09a;box-shadow:0 0 0 4px rgba(53,208,154,.18)}
.camera-status[data-status-state="error"] .camera-status-dot{background:#e05b52;box-shadow:0 0 0 4px rgba(224,91,82,.17)}
.face-capture-guidance{margin-top:10px!important}.selfie-camera-actions{padding-bottom:max(2px,env(safe-area-inset-bottom))!important}
@media(max-height:710px){.selfie-camera-dialog{height:calc(100dvh - 10px)!important;max-height:calc(100dvh - 10px)!important}.selfie-camera-shell{grid-template-rows:auto minmax(250px,1fr) auto auto!important;padding:9px!important}.interactive-face-camera .selfie-video-frame{min-height:250px!important}.face-capture-guidance{padding:7px 9px!important;margin-top:7px!important}.face-capture-guidance small{display:none}.selfie-camera-actions{padding-top:7px!important}.ons-face-capture-head{margin-bottom:7px!important}}

/* Three compact photos per row on guest pages. */
.guest-event-page .guest-photo-grid,.guest-event-page .matched-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;columns:auto!important}
.guest-event-page .guest-photo-grid>.photo,.guest-event-page .matched-photo-item>.photo{width:100%!important;aspect-ratio:1/1.12!important;margin:0!important;border-radius:13px!important;overflow:hidden!important}
.guest-event-page .guest-photo-grid>.photo img,.guest-event-page .matched-photo-item>.photo img{width:100%!important;height:100%!important;object-fit:cover!important}
.guest-event-page .matched-photo-item{min-width:0;display:grid;gap:5px}
.guest-event-page .matched-photo-download{min-height:31px!important;padding:6px 4px!important;border-radius:10px!important;font-size:6.8px!important;white-space:nowrap!important}
.guest-event-page .matched-photo-download svg{width:12px!important;height:12px!important}
@media(min-width:760px){.guest-event-page .guest-photo-grid,.guest-event-page .matched-gallery{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:11px!important}}

/* A visually distinct Google Maps action. */
.public-venue-card.location-action{border:1px solid rgba(20,138,126,.18)!important;background:linear-gradient(135deg,#087d73,#0b9a8a 55%,#23a6d5)!important;box-shadow:0 16px 38px rgba(8,125,115,.2)!important}
.public-venue-card.location-action .public-venue-icon{background:rgba(255,255,255,.18)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.public-venue-card.location-action>strong{display:grid;justify-items:center;gap:2px;min-width:61px;padding:8px 9px;border-radius:13px;background:rgba(255,255,255,.14);color:#fff}
.public-venue-card.location-action>strong small{font-size:6.5px;opacity:.9}.public-venue-card.location-action>strong svg{width:16px;height:16px}

/* Second-tap native save flow keeps iOS user activation intact. */
.photo-save-ready-dialog{width:min(calc(100vw - 28px),410px);padding:0;border:0;border-radius:28px;background:transparent;color:var(--text);overflow:visible}
.photo-save-ready-dialog::backdrop{background:rgba(13,25,54,.58);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.photo-save-ready-shell{position:relative;display:grid;justify-items:center;gap:8px;padding:30px 22px 23px;border:1px solid rgba(54,83,142,.12);border-radius:28px;background:radial-gradient(circle at 90% 0,rgba(105,82,222,.13),transparent 34%),radial-gradient(circle at 0 20%,rgba(11,142,214,.12),transparent 36%),#fff;text-align:center;box-shadow:0 30px 90px rgba(12,28,65,.34)}
.photo-save-ready-shell .dialog-close-button{position:absolute;top:12px;inset-inline-end:12px}
.photo-save-ready-icon{width:72px;height:72px;display:grid;place-items:center;margin-top:4px;border-radius:24px;background:linear-gradient(135deg,#0b8ed6,#6751da);color:#fff;box-shadow:0 16px 36px rgba(60,80,190,.24)}
.photo-save-ready-icon svg{width:33px;height:33px}.photo-save-ready-shell>small{margin-top:5px;color:var(--secondary);font-size:8px;font-weight:950}.photo-save-ready-shell h2{margin:0;color:var(--primary);font-size:21px}.photo-save-ready-shell p{max-width:320px;margin:0;color:var(--muted);font-size:10px;line-height:1.8}.photo-save-ready-shell>.primary-btn{width:100%;min-height:52px;margin-top:7px}.photo-save-ready-shell>em{font-size:7px;font-style:normal;color:var(--muted)}

/* Scoped viewer source and compact photo count. */
.photo-viewer-brand small[data-photo-viewer-source]{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6d85a7!important}
.photo-viewer-meta>span{min-width:54px;text-align:center;padding:7px 9px;border-radius:999px;background:#eef4fb;color:#29436d;font-weight:950}

/* Expanded, database-backed analytics with live refresh. */
.analytics-live-page{display:grid;gap:14px}.analytics-live-page.is-refreshing{cursor:progress}.analytics-live-indicator{display:inline-flex;align-items:center;gap:6px;margin-inline-start:10px;color:#0b8f61;font-weight:900}.analytics-live-indicator i,.analytics-search-health .card-title-row>span i{width:7px;height:7px;border-radius:50%;background:#19b47d;box-shadow:0 0 0 4px rgba(25,180,125,.12);animation:analyticsPulse 1.7s ease-in-out infinite}
@keyframes analyticsPulse{50%{box-shadow:0 0 0 8px rgba(25,180,125,0)}}
.analytics-kpis-expanded{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.analytics-kpis-expanded article{min-height:150px}.analytics-kpis [data-analytics-value].is-changed{animation:analyticsNumberPop .28s ease}
@keyframes analyticsNumberPop{50%{transform:translateY(-2px);color:var(--secondary)}}
.analytics-insight-grid,.analytics-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.analytics-conversion-card,.analytics-search-health,.analytics-pages-card{padding:18px}.analytics-funnel{display:grid;grid-template-columns:repeat(7,auto);align-items:center;gap:8px;margin:18px 0}.analytics-funnel>div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#f7faff,#faf7ff);text-align:center}.analytics-funnel span{display:block;color:var(--muted);font-size:7px}.analytics-funnel b{display:block;margin-top:3px;color:var(--primary);font-size:18px}.analytics-funnel>i{width:18px;height:2px;background:linear-gradient(90deg,#9bd8f6,#b6a8f4);border-radius:999px}.analytics-conversion-card>p{margin:0;color:var(--muted);font-size:9px}.analytics-conversion-card>p strong{color:var(--secondary);font-size:14px}.analytics-search-health .card-title-row>span{display:inline-flex;align-items:center;gap:6px;color:#0b8f61;font-size:7px;font-weight:900}.analytics-search-health dl{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0 0}.analytics-search-health dl>div{padding:13px;border:1px solid var(--line);border-radius:15px;background:#f8faff}.analytics-search-health dt{color:var(--muted);font-size:7.5px}.analytics-search-health dd{margin:4px 0 0;color:var(--primary);font-size:21px;font-weight:950}.analytics-pages-card [data-analytics-pages]{display:grid;gap:11px;margin-top:15px}.analytics-page-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(80px,1.1fr) 38px;align-items:center;gap:9px}.analytics-page-row b{display:block;color:var(--primary);font-size:8.5px}.analytics-page-row small{display:block;margin-top:2px;color:var(--muted);font-size:6.8px}.analytics-page-row>span{height:7px;border-radius:999px;background:#edf1f7;overflow:hidden}.analytics-page-row>span i{display:block;width:var(--analytics-share,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b8ed6,#7659df)}.analytics-page-row>strong{font-size:8px;color:var(--secondary);text-align:end}.analytics-table a{color:var(--secondary);font-weight:900;text-decoration:none}.analytics-daily-table{min-width:830px}
@media(max-width:980px){.analytics-kpis-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-insight-grid,.analytics-detail-grid{grid-template-columns:1fr}.analytics-funnel{grid-template-columns:1fr}.analytics-funnel>i{width:2px;height:15px;justify-self:center}}
@media(max-width:560px){.face-consent-highlights{grid-template-columns:1fr}.selfie-camera-dialog{width:calc(100vw - 12px)!important;height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important;border-radius:26px!important}.selfie-camera-shell{border-radius:26px!important}.analytics-kpis-expanded{grid-template-columns:1fr 1fr!important;gap:8px}.analytics-kpis-expanded article{min-height:132px;padding:13px}.analytics-kpis-expanded b{font-size:20px}.analytics-search-health dl{grid-template-columns:1fr 1fr}.analytics-page-row{grid-template-columns:minmax(110px,1fr) minmax(70px,.8fr) 34px}}
@media(prefers-reduced-motion:reduce){.face-wizard-step.face-enter-forward,.face-wizard-step.face-enter-back,.face-transition-line i,.analytics-live-indicator i,.analytics-search-health .card-title-row>span i{animation:none!important}}

/* =====================================================================
   ONS Moments v2.12.6 — featured face CTA, wider camera framing,
   optional event portrait and accuracy-focused analytics
   ===================================================================== */
.guest-event-page .featured-face-choice{
  margin:16px 0 14px!important;
  border:2px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 48%,transparent)!important;
  border-radius:27px!important;
  background:
    radial-gradient(circle at 92% 10%,color-mix(in srgb,var(--guest-accent,#0b8ed6) 18%,transparent),transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 94%,white),#fff 64%,color-mix(in srgb,var(--guest-accent-2,#31235e) 5%,white))!important;
  box-shadow:0 22px 52px color-mix(in srgb,var(--guest-accent-2,#31235e) 18%,transparent)!important;
}
.guest-event-page .featured-face-choice:before{width:7px!important;border-radius:0 8px 8px 0}
.guest-event-page .featured-face-choice>summary{min-height:116px!important;padding:20px 20px!important;gap:15px!important;animation:faceFindPromptBounce 2.8s ease-in-out infinite}
.guest-event-page .featured-face-choice .choice-icon{width:66px!important;height:66px!important;border-radius:22px!important;box-shadow:0 15px 32px color-mix(in srgb,var(--guest-accent,#0b8ed6) 32%,transparent)!important}
.guest-event-page .featured-face-choice .choice-icon svg{width:31px!important;height:31px!important}
.guest-event-page .featured-face-choice summary b{font-size:19px!important;line-height:1.25!important;color:var(--guest-accent-2,#31235e)!important}
.guest-event-page .featured-face-choice summary small{font-size:10px!important;line-height:1.7!important;color:var(--guest-muted,var(--muted))!important}
.guest-event-page .featured-face-choice[open]>summary,.guest-event-page .featured-face-choice:hover>summary{animation-play-state:paused}
.guest-event-page .featured-face-choice summary>strong{width:42px!important;height:42px!important;border-radius:15px!important;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;color:#fff!important;box-shadow:0 10px 22px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)}
.face-featured-badge{align-self:flex-start;width:max-content;margin-bottom:2px;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--guest-accent,#0b8ed6) 12%,white);color:var(--guest-accent,#0b8ed6);font-size:7px!important;font-style:normal;font-weight:950;letter-spacing:.15px}

/* Completed face steps stay inside the ONS palette rather than turning green. */
.face-wizard-progress>span.done,.face-wizard-progress>span.done .face-progress-control{color:var(--guest-accent-2,#31235e)!important}
.face-wizard-progress>span.done i,.face-wizard-progress>span.done .face-progress-control i{
  background:linear-gradient(135deg,color-mix(in srgb,var(--guest-accent-2,#31235e) 88%,#fff),var(--guest-accent,#0b8ed6))!important;
  color:#fff!important;
  box-shadow:0 7px 18px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)!important;
}
.face-wizard-progress>span.done+em{border-top-style:solid!important;border-color:color-mix(in srgb,var(--guest-accent,#0b8ed6) 45%,transparent)!important}

/* Show the full front-camera frame instead of cropping it into a strong zoom. */
.interactive-face-camera .selfie-video-frame{background:radial-gradient(circle at 50% 38%,#18243a,#050a14 75%)!important}
.interactive-face-camera .selfie-video-frame video{
  object-fit:cover!important;
  object-position:center 36%!important;
  transform:scaleX(-1) scale(1.08)!important;
  background:#050a14!important;
}
.interactive-face-camera .face-guide{inset:13% 21%!important;border-radius:48% 48% 44% 44% / 40% 40% 54% 54%!important}
.interactive-face-camera .face-scan-corners{inset:18% 24%!important}
.interactive-face-camera .camera-status{max-width:calc(100% - 26px)!important;inset-inline:13px!important;bottom:13px!important;min-height:42px!important;border-radius:15px!important;background:rgba(7,17,34,.78)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 28px rgba(0,0,0,.24)}
.interactive-face-camera .camera-status [data-camera-status-text]{font-size:9px!important;line-height:1.55!important;font-weight:850!important}

/* Optional transparent person cutout inside the event hero. */
.event-cover.has-hero-person{min-height:205px!important;padding-inline-end:98px!important;overflow:hidden!important}
.event-cover-copy{position:relative;z-index:3;min-width:0;max-width:68%}
.event-hero-person{position:absolute;z-index:2;inset-inline-end:58px;bottom:-8px;width:min(36%,170px);height:calc(100% - 5px);margin:0;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;filter:drop-shadow(0 19px 16px rgba(14,18,47,.30));transform:perspective(600px) rotateY(-4deg)}
.event-hero-person:before{content:"";position:absolute;left:50%;bottom:5px;transform:translateX(-50%);width:90%;height:34%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.24),transparent 66%);filter:blur(9px)}
.event-hero-person img{position:relative;z-index:2;display:block;max-width:100%;max-height:100%;object-fit:contain;object-position:center bottom;filter:saturate(1.04) contrast(1.02)}
.event-cover.has-hero-person .qr-small{position:absolute!important;z-index:5;inset-inline-end:14px;top:14px}
.optional-hero-upload{padding:14px!important;border:1px dashed color-mix(in srgb,var(--secondary) 30%,var(--line));border-radius:17px;background:linear-gradient(145deg,#f8fbff,#fbf9ff)}
.optional-hero-upload>small{display:block;margin:4px 0 9px;line-height:1.65}.current-hero-file{display:inline-flex;margin-top:8px;padding:5px 9px;border-radius:999px;background:#eaf7f2;color:#087e5a;font-size:8px;font-weight:900}.compact-toggle{margin-top:8px!important;min-height:auto!important;padding:8px!important}

/* Simplified venue action: venue name first, directions action second. */
.public-venue-card.location-action{min-height:64px!important;padding:14px 15px!important}
.public-venue-card.location-action>span:nth-child(2){gap:0!important}
.public-venue-card.location-action b{font-size:16px!important;line-height:1.4!important;font-weight:950!important}
.public-venue-card.location-action>strong{min-width:70px!important;padding:9px 10px!important}
.public-venue-card.location-action>strong small{font-size:8px!important;font-weight:900!important}
.public-venue-card.no-link b{font-size:15px!important}

.analytics-accuracy-note{display:flex;align-items:flex-start;gap:13px;padding:16px 18px;border-color:rgba(11,142,214,.16)!important;background:linear-gradient(135deg,#f4faff,#faf8ff)!important}
.analytics-accuracy-note>span{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:linear-gradient(135deg,#0b8ed6,#6751da);color:#fff}.analytics-accuracy-note svg{width:20px;height:20px}.analytics-accuracy-note b{display:block;color:var(--primary);font-size:11px}.analytics-accuracy-note p{margin:4px 0 0;color:var(--muted);font-size:8.5px;line-height:1.75}
.compact-success{margin-bottom:12px!important;padding:12px 15px!important}

@media(max-width:650px){
  .guest-event-page .featured-face-choice>summary{min-height:104px!important;padding:16px 14px!important;gap:11px!important;animation:faceFindPromptBounce 2.8s ease-in-out infinite}
  .guest-event-page .featured-face-choice .choice-icon{width:56px!important;height:56px!important;border-radius:19px!important}
  .guest-event-page .featured-face-choice summary b{font-size:16px!important}.guest-event-page .featured-face-choice summary small{font-size:8.5px!important}
  .guest-event-page .featured-face-choice summary>strong{width:36px!important;height:36px!important}
  .event-cover.has-hero-person{min-height:184px!important;padding-inline-end:72px!important}.event-cover-copy{max-width:65%}.event-hero-person{inset-inline-end:42px;width:42%;max-width:145px}.event-cover.has-hero-person .qr-small{inset-inline-end:9px;top:9px}.event-cover.has-hero-person .qr-small img{width:52px!important}
  .public-venue-card.location-action b{font-size:14px!important}.public-venue-card.location-action>strong{min-width:63px!important}
}
@media(max-width:390px){
  .event-cover.has-hero-person{padding-inline-end:62px!important}.event-cover-copy{max-width:67%}.event-hero-person{inset-inline-end:30px;width:44%}.event-cover.has-hero-person h1{font-size:21px!important}
  .interactive-face-camera .face-guide{inset:14% 19%!important}.interactive-face-camera .face-scan-corners{inset:19% 22%!important}
}


/* =====================================================================
   ONS Moments v2.12.8 — clean face-step controls, explicit consent cue
   and automatic transparent PNG preparation
   ===================================================================== */
.face-progress-control,
.face-progress-control:hover,
.face-progress-control:focus,
.face-progress-control:focus-visible,
.face-progress-control:active{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  outline:0!important;
  -webkit-tap-highlight-color:transparent!important;
}
.face-wizard-progress>span.clickable .face-progress-control:hover,
.face-wizard-progress>span.clickable .face-progress-control:focus-visible{
  transform:none!important;
}
.face-wizard-progress>span.clickable .face-progress-control:active i{transform:scale(.94)}
.face-progress-control i{transition:transform .18s ease}

.face-flow-consent{position:relative;cursor:pointer;transition:border-color .22s ease,background .22s ease,transform .22s ease,box-shadow .22s ease}
.face-consent-required{display:inline-flex;align-items:center;width:max-content;margin:0 0 5px;padding:4px 8px;border-radius:999px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;font-size:7.5px;font-weight:950;line-height:1.2;box-shadow:0 7px 18px color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,transparent)}
.face-flow-consent:not(.is-accepted){border:2px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 38%,white)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 72%,white),#fff)!important;box-shadow:0 14px 30px color-mix(in srgb,var(--guest-accent,#0b8ed6) 13%,transparent);animation:consentCardNudge 1.65s ease-in-out infinite}
.face-flow-consent:not(.is-accepted) input{animation:consentCheckPulse 1.15s ease-in-out infinite;box-shadow:0 0 0 0 color-mix(in srgb,var(--guest-accent,#0b8ed6) 35%,transparent)}
.face-flow-consent.is-accepted{border-color:rgba(22,162,111,.3)!important;background:#f3fbf7!important}
.face-flow-consent.is-accepted .face-consent-required{background:#11835d;box-shadow:none}
@keyframes consentCardNudge{0%,100%{transform:translateY(0)}45%{transform:translateY(-3px)}60%{transform:translateY(0)}}
@keyframes consentCheckPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--guest-accent,#0b8ed6) 30%,transparent)}50%{transform:scale(1.12);box-shadow:0 0 0 9px transparent}}

.hero-upload-status{display:block;margin-top:6px;color:var(--muted);font-size:8px;font-weight:750;line-height:1.55}
.hero-upload-status[data-state="working"]{color:#875f00}
.hero-upload-status[data-state="success"]{color:#087a55}
.hero-upload-status[data-state="warning"]{color:#b54708}
.optional-hero-upload input[disabled]{opacity:.65;cursor:progress}

@media(prefers-reduced-motion:reduce){
  .face-flow-consent:not(.is-accepted),.face-flow-consent:not(.is-accepted) input{animation:none!important}
}


/* v2.12.14 — stable three-column event hero, automatic face capture and responsive empty gallery */
.guided-attention{animation:onsGuidedBounce 1.2s ease-in-out infinite;transform-origin:center}
.face-flow-submit.guided-attention,.face-reference-choice-actions>.guided-attention{box-shadow:0 14px 30px color-mix(in srgb,var(--guest-accent,#0b8ed6) 26%,transparent)!important}
@keyframes onsGuidedBounce{0%,100%{transform:translateY(0) scale(1)}20%{transform:translateY(-5px) scale(1.015)}38%{transform:translateY(0) scale(1)}55%{transform:translateY(-2px) scale(1.01)}75%{transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.guided-attention{animation:none!important}}
.face-flow-consent.consent-rounded{border-top:0!important;padding:14px 14px!important;border:1.5px solid color-mix(in srgb,var(--guest-border,var(--line)) 78%,white)!important;border-radius:18px!important}
.face-flow-consent.consent-rounded input{margin-top:2px!important}
.event-cover.hero-priority-layout{direction:ltr!important;position:relative!important;display:grid!important;grid-template-columns:92px minmax(0,1fr) 190px!important;grid-template-areas:"qr copy hero"!important;align-items:center!important;column-gap:12px!important;min-height:218px!important;padding:22px 18px 0!important;border-radius:27px!important;overflow:visible!important}
.event-cover.hero-priority-layout .event-cover-copy{direction:rtl!important;grid-area:copy!important;position:relative!important;z-index:5!important;width:100%!important;max-width:none!important;min-width:0!important;align-self:center!important;padding:0 4px 20px!important;text-align:right!important}
.event-cover.hero-priority-layout .event-cover-copy h1,.event-cover.hero-priority-layout .event-cover-copy p{max-width:100%!important;margin-inline:0!important;overflow-wrap:anywhere!important;word-break:normal!important}
.event-cover.hero-priority-layout .event-cover-copy h1{font-size:clamp(25px,4.6vw,38px)!important;line-height:1.12!important}
.event-cover.hero-priority-layout .event-cover-copy p{font-size:10px!important;line-height:1.7!important}
.event-cover.hero-priority-layout .qr-small{grid-area:qr!important;position:relative!important;z-index:6!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;margin:0 0 20px!important;justify-self:start!important;align-self:center!important}
.event-cover.hero-priority-layout .event-hero-person{grid-area:hero!important;position:relative!important;z-index:4!important;right:auto!important;left:auto!important;top:-20px!important;bottom:auto!important;width:190px!important;height:218px!important;margin:0 -18px 0 0!important;display:flex!important;align-items:flex-end!important;justify-content:flex-end!important;overflow:hidden!important;border-bottom-right-radius:27px!important;pointer-events:none!important;filter:drop-shadow(0 20px 18px rgba(14,18,47,.30))!important;transform:none!important;justify-self:end!important;align-self:end!important}
.event-cover.hero-priority-layout .event-hero-person img{position:relative!important;z-index:2!important;display:block!important;width:auto!important;height:100%!important;max-width:100%!important;max-height:none!important;object-fit:contain!important;object-position:right bottom!important}
.event-cover.hero-priority-layout .event-hero-person:before{left:auto!important;right:5px!important;bottom:4px!important;transform:none!important;width:88%!important;height:27%!important;background:radial-gradient(ellipse,rgba(255,255,255,.22),transparent 68%)!important}
.event-cover.hero-priority-layout.has-hero-person{padding-inline:18px!important}
.event-location-direct{direction:rtl;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:10px 14px;border:1px solid rgba(61,126,244,.14);border-radius:22px;background:linear-gradient(135deg,#fbfdff 0%,#f5fbff 52%,#f5f9ff 100%);color:var(--v19-navy,var(--primary));text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:none;min-height:64px}
.event-location-direct:hover{transform:translateY(-1px);border-color:rgba(61,126,244,.26);box-shadow:0 14px 28px rgba(18,54,97,.08)}
.event-location-direct-main{display:flex;align-items:center;gap:11px;min-width:0;flex:1}
.event-location-direct-copy{display:grid;gap:2px;min-width:0}
.event-location-direct-copy small{font-size:8px;line-height:1.15;font-weight:900;color:color-mix(in srgb,var(--v19-navy,var(--primary)) 62%, white);opacity:.92}
.event-location-direct-copy b{font-size:12px;font-weight:950;line-height:1.3;white-space:normal;overflow-wrap:anywhere;color:var(--v19-navy,var(--primary))}
 .event-location-direct-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#1f8fdf,#5b66e4);color:#fff;flex:0 0 auto;box-shadow:0 12px 26px rgba(47,87,182,.18)}
.event-location-direct-icon svg{width:18px;height:18px}
.event-location-direct-cta{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding-inline-start:9px;margin-inline-start:8px;border-inline-start:1px solid rgba(75,105,170,.12);font-size:8.5px;font-weight:900;color:#226fb6}
.event-location-direct-cta svg{width:15px;height:15px}
.event-location-direct.is-disabled{opacity:.72;cursor:default}
.event-location-direct.is-disabled .event-location-direct-cta{color:#8ea1b9}
.event-location-direct.is-disabled .event-location-direct-icon{box-shadow:none;background:linear-gradient(135deg,#90bce0,#aeb7e8)}
.qr-panel-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.qr-download-button{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;text-align:center!important}
.qr-download-button svg{width:17px;height:17px}
.guest-event-page .guest-photo-grid>.empty-grid{grid-column:1/-1!important;width:100%!important;min-height:220px!important;margin:0!important;padding:34px 18px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:7px!important;text-align:center!important;box-sizing:border-box!important;border:1px dashed color-mix(in srgb,var(--guest-border,var(--line)) 72%,transparent)!important;border-radius:22px!important;background:linear-gradient(145deg,var(--guest-card,#fff),color-mix(in srgb,var(--guest-soft,#eef6ff) 62%,white))!important}
.guest-event-page .guest-photo-grid>.empty-grid h2,.guest-event-page .guest-photo-grid>.empty-grid p{width:100%!important;max-width:390px!important;margin:0 auto!important;text-align:center!important}
.guest-event-page .guest-photo-grid>.empty-grid h2{font-size:18px!important;line-height:1.4!important;color:var(--guest-heading,var(--primary))!important}
.guest-event-page .guest-photo-grid>.empty-grid p{font-size:9px!important;line-height:1.75!important;color:var(--guest-muted,var(--muted))!important}
@media(max-width:650px){
  .event-cover.hero-priority-layout{grid-template-columns:64px minmax(0,1fr) 128px!important;column-gap:8px!important;min-height:184px!important;padding:18px 10px 0!important}
  .event-cover.hero-priority-layout.has-hero-person{padding-inline:10px!important}
  .event-cover.hero-priority-layout .event-cover-copy{padding:0 2px 16px!important;text-align:right!important}
  .event-cover.hero-priority-layout .event-cover-copy h1{font-size:22px!important}
  .event-cover.hero-priority-layout .event-cover-copy p{font-size:8.5px!important}
  .event-cover.hero-priority-layout .event-hero-person{top:-16px!important;width:128px!important;height:184px!important;margin-right:-10px!important;border-bottom-right-radius:22px!important}
  .event-cover.hero-priority-layout .qr-small{margin-bottom:16px!important;padding:7px!important;border-radius:18px!important}
  .event-cover.hero-priority-layout .qr-small img{width:52px!important}
  .event-location-direct{padding:9px 12px;border-radius:19px;min-height:58px}
  .event-location-direct-icon{width:38px;height:38px;border-radius:14px}
  .event-location-direct-cta{gap:6px;padding-inline-start:8px;margin-inline-start:6px}
  .qr-panel-actions{grid-template-columns:1fr!important}
  .guest-event-page .guest-photo-grid>.empty-grid{min-height:190px!important;padding:28px 14px!important;border-radius:18px!important}
  .guest-event-page .guest-photo-grid>.empty-grid h2{font-size:16px!important}
}
@media(max-width:390px){
  .event-cover.hero-priority-layout{grid-template-columns:58px minmax(0,1fr) 112px!important;column-gap:6px!important;min-height:172px!important;padding:16px 8px 0!important}
  .event-cover.hero-priority-layout.has-hero-person{padding-inline:8px!important}
  .event-cover.hero-priority-layout .event-hero-person{top:-13px!important;width:112px!important;height:172px!important;margin-right:-8px!important}
  .event-cover.hero-priority-layout .event-cover-copy{padding:0 0 14px!important}
  .event-cover.hero-priority-layout .event-cover-copy h1{font-size:19px!important}
  .event-cover.hero-priority-layout .event-cover-copy p{font-size:7.8px!important}
  .event-cover.hero-priority-layout .qr-small img{width:48px!important}
  .event-location-direct-copy b{font-size:11px}
  .event-location-direct-copy small{font-size:7.6px}
  .event-location-direct-cta{font-size:8.2px}
}
.qr-frame:after{display:none!important}


/* v2.12.12 - interactive automatic face capture */
.interactive-face-camera [data-face-scan-frame] .face-guide{border-color:#ff5b62!important;box-shadow:0 0 0 999px rgba(20,6,12,.34),0 0 26px rgba(255,75,85,.38)!important;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important}
.interactive-face-camera [data-face-scan-frame] .face-scan-corners i{border-color:#ff5b62!important;transition:border-color .2s ease,filter .2s ease!important}
.interactive-face-camera [data-face-scan-frame].face-found .face-guide,.interactive-face-camera [data-face-scan-frame].face-ready .face-guide{border-color:#37d69a!important;box-shadow:0 0 0 999px rgba(4,18,14,.3),0 0 34px rgba(55,214,154,.58)!important}
.interactive-face-camera [data-face-scan-frame].face-found .face-scan-corners i,.interactive-face-camera [data-face-scan-frame].face-ready .face-scan-corners i{border-color:#37d69a!important;filter:drop-shadow(0 0 7px rgba(55,214,154,.72))!important}
.interactive-face-camera [data-face-scan-frame].face-ready .face-guide{animation:faceReadyPulse .45s ease-in-out infinite alternate!important}
.interactive-face-camera .camera-status[data-status-state="guide"],.interactive-face-camera .camera-status[data-status-state="warning"]{border-color:rgba(255,91,98,.32)!important;background:rgba(53,11,18,.72)!important}
.interactive-face-camera .camera-status[data-status-state="ready"],.interactive-face-camera .camera-status[data-status-state="success"]{border-color:rgba(55,214,154,.35)!important;background:rgba(4,49,35,.75)!important}
.interactive-face-camera .camera-status[data-status-state="guide"] .camera-status-dot,.interactive-face-camera .camera-status[data-status-state="warning"] .camera-status-dot{background:#ff5b62!important;box-shadow:0 0 0 4px rgba(255,91,98,.18)!important}
.interactive-face-camera .camera-status[data-status-state="ready"] .camera-status-dot,.interactive-face-camera .camera-status[data-status-state="success"] .camera-status-dot{background:#37d69a!important;box-shadow:0 0 0 4px rgba(55,214,154,.18)!important}
.interactive-face-camera .face-auto-countdown{width:82px!important;height:82px!important;background:rgba(3,70,49,.88)!important;border-color:#55e7b2!important;color:#fff!important;font-size:38px!important;box-shadow:0 0 0 8px rgba(55,214,154,.12),0 18px 42px rgba(0,0,0,.34)!important}
.interactive-face-camera .camera-shutter{display:none!important}
.interactive-face-camera .selfie-camera-actions{grid-template-columns:1fr 1fr!important}
.interactive-face-camera .selfie-camera-actions [data-auto-capture-hint]{max-width:none!important;align-self:center!important;text-align:center!important;font-size:7.5px!important}


/* v2.12.15 — final fine-tuning for groom cutout and event QR only */
.event-cover.hero-priority-layout .event-hero-person img{
  height:108%!important;
  max-width:112%!important;
  transform:translateY(4px)!important;
  transform-origin:right bottom!important;
}
.event-cover.hero-priority-layout .qr-small{
  padding:4px!important;
  border-radius:15px!important;
}
.event-cover.hero-priority-layout .qr-small img{width:84px!important}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person img{height:110%!important;max-width:114%!important;transform:translateY(5px)!important}
  .event-cover.hero-priority-layout .qr-small{padding:4px!important;border-radius:15px!important}
  .event-cover.hero-priority-layout .qr-small img{width:60px!important}
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .qr-small img{width:56px!important}
}

/* v2.12.16 — groom cutout flush-bottom with top overflow, and larger tighter QR only */
.event-cover.hero-priority-layout .event-hero-person{
  overflow:visible!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  height:121%!important;
  max-width:124%!important;
  transform:translateY(10px) scale(1.02)!important;
  transform-origin:right bottom!important;
}
.event-cover.hero-priority-layout .qr-small{
  padding:2px!important;
  border-radius:13px!important;
}
.event-cover.hero-priority-layout .qr-small img{width:96px!important}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person img{height:123%!important;max-width:126%!important;transform:translateY(10px) scale(1.02)!important}
  .event-cover.hero-priority-layout .qr-small{padding:2px!important;border-radius:13px!important}
  .event-cover.hero-priority-layout .qr-small img{width:68px!important}
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person img{height:122%!important;max-width:124%!important;transform:translateY(9px) scale(1.01)!important}
  .event-cover.hero-priority-layout .qr-small img{width:62px!important}
}

/* v2.12.17 — final groom card fit fix only: no top clipping, no bottom gap */
.event-cover.hero-priority-layout .event-hero-person{
  position:relative!important;
  overflow:visible!important;
  display:block!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:-1px!important;
  top:auto!important;
  width:auto!important;
  height:126%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person img{
    height:129%!important;
    bottom:-1px!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person img{
    height:127%!important;
    bottom:-1px!important;
  }
}

/* v2.12.18 — groom portrait final alignment fix: lower the figure, remove top cut, remove bottom gap */
.event-cover.hero-priority-layout .event-hero-person{
  top:-8px!important;
  overflow:visible!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:-4px!important;
  top:auto!important;
  width:auto!important;
  height:121%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:-6px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    height:123%!important;
    bottom:-4px!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:-4px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    height:122%!important;
    bottom:-3px!important;
  }
}


/* v2.12.23 — final wedding hero card polish: no top head clipping, rounded lower-right crop, softer/no shadow */
.event-cover.hero-priority-layout{
  margin-top:10px!important;
  box-shadow:none!important;
}
.event-cover.hero-priority-layout .event-hero-person{
  top:2px!important;
  bottom:0!important;
  overflow:visible!important;
  filter:none!important;
  border-bottom-right-radius:27px!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:0!important;
  top:auto!important;
  width:auto!important;
  height:118%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
  border-bottom-right-radius:27px!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout{
    margin-top:8px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person{
    top:2px!important;
    border-bottom-right-radius:22px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    height:119%!important;
    border-bottom-right-radius:22px!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout{
    margin-top:6px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person{
    top:1px!important;
    border-bottom-right-radius:20px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    height:118%!important;
    border-bottom-right-radius:20px!important;
  }
}


/* v2.12.23 — groom hero crop correction: no top head clipping, no bottom gap, lighter QR frame */
.event-cover.hero-priority-layout{
  margin-top:14px!important;
  box-shadow:none!important;
}
.event-cover.hero-priority-layout .event-hero-person{
  top:10px!important;
  bottom:0!important;
  overflow:visible!important;
  filter:none!important;
  border-bottom-right-radius:27px!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:-2px!important;
  top:auto!important;
  width:auto!important;
  height:113%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
  border-bottom-right-radius:27px!important;
}
.event-cover.hero-priority-layout .qr-small{
  padding:2px!important;
  border-radius:13px!important;
}
.event-cover.hero-priority-layout .qr-small img{width:102px!important}
@media(max-width:650px){
  .event-cover.hero-priority-layout{
    margin-top:12px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person{
    top:9px!important;
    border-bottom-right-radius:22px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:-2px!important;
    height:114%!important;
    border-bottom-right-radius:22px!important;
  }
  .event-cover.hero-priority-layout .qr-small img{width:72px!important}
}
@media(max-width:390px){
  .event-cover.hero-priority-layout{
    margin-top:10px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person{
    top:8px!important;
    border-bottom-right-radius:20px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:-1px!important;
    height:113%!important;
    border-bottom-right-radius:20px!important;
  }
  .event-cover.hero-priority-layout .qr-small img{width:66px!important}
}


/* v2.12.23 — definitive groom wrapper fix: top fully visible, bottom clipped flush to card */
.event-cover.hero-priority-layout{
  overflow:visible!important;
  box-shadow:none!important;
}
.event-cover.hero-priority-layout .event-hero-person{
  top:8px!important;
  bottom:0!important;
  overflow:visible!important;
  filter:none!important;
  clip-path:inset(-120px 0 0 -90px round 0 0 27px 0)!important;
  -webkit-clip-path:inset(-120px 0 0 -90px round 0 0 27px 0)!important;
  border-bottom-right-radius:27px!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:0!important;
  top:auto!important;
  width:auto!important;
  height:114%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
  border-bottom-right-radius:27px!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:7px!important;
    clip-path:inset(-100px 0 0 -70px round 0 0 22px 0)!important;
    -webkit-clip-path:inset(-100px 0 0 -70px round 0 0 22px 0)!important;
    border-bottom-right-radius:22px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:115%!important;
    border-bottom-right-radius:22px!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:6px!important;
    clip-path:inset(-90px 0 0 -60px round 0 0 20px 0)!important;
    -webkit-clip-path:inset(-90px 0 0 -60px round 0 0 20px 0)!important;
    border-bottom-right-radius:20px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:114%!important;
    border-bottom-right-radius:20px!important;
  }
}


/* v2.12.23 — raise groom slightly and reduce person size by exactly 10% only */
.event-cover.hero-priority-layout .event-hero-person{
  top:4px!important;
  height:222px!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  bottom:0!important;
  height:102.6%!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:3px!important;
    height:188px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:103.5%!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:2px!important;
    height:176px!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:102.6%!important;
  }
}

/* v2.12.26 — shorter location button, ONS-only account label, and subtle face-search bounce */
.event-cover.hero-priority-layout{
  overflow:hidden!important;
}
.event-cover.hero-priority-layout .event-hero-person{
  top:0!important;
  bottom:0!important;
  height:218px!important;
  overflow:hidden!important;
  clip-path:inset(0 round 0 0 27px 0)!important;
  -webkit-clip-path:inset(0 round 0 0 27px 0)!important;
  border-bottom-right-radius:27px!important;
  filter:none!important;
}
.event-cover.hero-priority-layout .event-hero-person img{
  position:absolute!important;
  inset-inline-end:0!important;
  bottom:0!important;
  top:auto!important;
  width:auto!important;
  height:100%!important;
  max-width:none!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  transform:none!important;
  border-bottom-right-radius:27px!important;
}
@media(max-width:650px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:0!important;
    height:184px!important;
    border-bottom-right-radius:22px!important;
    clip-path:inset(0 round 0 0 22px 0)!important;
    -webkit-clip-path:inset(0 round 0 0 22px 0)!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:100%!important;
    max-height:100%!important;
    border-bottom-right-radius:22px!important;
  }
}
@media(max-width:390px){
  .event-cover.hero-priority-layout .event-hero-person{
    top:0!important;
    height:172px!important;
    border-bottom-right-radius:20px!important;
    clip-path:inset(0 round 0 0 20px 0)!important;
    -webkit-clip-path:inset(0 round 0 0 20px 0)!important;
  }
  .event-cover.hero-priority-layout .event-hero-person img{
    bottom:0!important;
    height:100%!important;
    max-height:100%!important;
    border-bottom-right-radius:20px!important;
  }
}


/* v2.12.28 — multiline email template fields and line-break-aware preview */
.email-template-language textarea[data-template-field]{width:100%;min-height:72px;resize:vertical;white-space:pre-wrap}
.email-template-language textarea[data-template-field$='.body']{min-height:190px}
.email-template-field-note{display:block;margin-top:6px;font-size:7.5px;line-height:1.55;color:var(--muted)}
.email-template-preview-card [data-preview-eyebrow],
.email-template-preview-card [data-preview-title],
.email-template-preview-card [data-preview-intro],
.email-template-preview-card [data-preview-body],
.email-template-preview-card [data-preview-action],
.email-template-preview-card [data-preview-footer-title],
.email-template-preview-card [data-preview-footer-text]{white-space:pre-line!important}


/* =====================================================================
   ONS Moments v3.0.0 — cache-safe pre-event face registration
   ===================================================================== */
.guest-event-page.pre-event-registration-page .registration-pill{
  display:inline-flex!important;align-items:center!important;gap:7px!important;
  background:rgba(255,255,255,.18)!important;border:1px solid rgba(255,255,255,.24)!important;
  color:#fff!important;box-shadow:none!important
}
.guest-event-page.pre-event-registration-page .registration-pill svg{width:14px;height:14px}
.guest-event-page .pre-event-face-choice>summary{animation:none!important}
.guest-event-page .pre-event-face-choice{
  border-color:color-mix(in srgb,var(--guest-accent,#0b8ed6) 58%,transparent)!important;
  background:
    radial-gradient(circle at 88% 5%,color-mix(in srgb,var(--guest-accent,#0b8ed6) 24%,transparent),transparent 35%),
    linear-gradient(135deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 96%,white),#fff 72%)!important
}
.guest-event-page .pre-event-face-choice .face-featured-badge{
  background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;
  color:#fff!important;padding:5px 9px!important
}
.enhanced-pre-event-notice{
  position:relative;overflow:hidden;padding:18px!important;border-radius:23px!important;
  background:linear-gradient(135deg,var(--guest-card,#fff),color-mix(in srgb,var(--guest-soft,#edf5ff) 72%,white))!important
}
.enhanced-pre-event-notice:after{
  content:"";position:absolute;inset-inline-end:-40px;top:-55px;width:130px;height:130px;border-radius:50%;
  background:color-mix(in srgb,var(--guest-accent,#0b8ed6) 10%,transparent);pointer-events:none
}
.enhanced-pre-event-notice>span{background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;color:#fff!important;box-shadow:0 12px 26px color-mix(in srgb,var(--guest-accent,#0b8ed6) 24%,transparent)}
.pre-event-gallery-card{
  margin:15px 0 22px;padding:24px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:17px;align-items:center;
  border:1px solid var(--guest-border,var(--line));border-radius:27px;
  background:linear-gradient(145deg,var(--guest-card,#fff),color-mix(in srgb,var(--guest-soft,#edf5ff) 64%,white));
  box-shadow:0 18px 44px rgba(31,46,72,.09)
}
.pre-event-gallery-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:19px;background:var(--guest-soft,#edf5ff);color:var(--guest-accent,#0b8ed6)}
.pre-event-gallery-icon svg{width:28px;height:28px}
.pre-event-gallery-copy small{display:block;color:var(--guest-accent,#0b8ed6);font-size:8px;font-weight:950}
.pre-event-gallery-copy h2{margin:4px 0 6px;color:var(--guest-ink,var(--text));font-size:18px;line-height:1.35}
.pre-event-gallery-copy p{margin:0;max-width:560px;color:var(--guest-muted,var(--muted));font-size:9.5px;line-height:1.85}
.pre-event-gallery-time{min-width:165px;padding:12px 14px;border-radius:17px;background:rgba(255,255,255,.7);border:1px solid var(--guest-border,var(--line));text-align:center}
.pre-event-gallery-time span{display:block;color:var(--guest-muted,var(--muted));font-size:8px}.pre-event-gallery-time b{display:block;margin-top:3px;color:var(--guest-accent-2,var(--primary));font-size:11px;line-height:1.5}
.pre-event-face-confirmed{padding:0!important;overflow:hidden}
.pre-event-face-confirmed .face-account-strip{margin:0!important;border-radius:0!important;border-width:0 0 1px!important;box-shadow:none!important}
.pre-event-face-confirmed-main{padding:24px;display:flex;gap:16px;align-items:center}
.pre-event-confirmed-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:20px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff;box-shadow:0 14px 28px color-mix(in srgb,var(--guest-accent,#0b8ed6) 25%,transparent)}
.pre-event-confirmed-icon svg{width:28px;height:28px}
.pre-event-face-confirmed-main small{display:block;color:var(--guest-accent,#0b8ed6);font-size:8px;font-weight:950}.pre-event-face-confirmed-main h2{margin:4px 0 6px;color:var(--guest-ink,var(--text));font-size:20px}.pre-event-face-confirmed-main p{margin:0;color:var(--guest-muted,var(--muted));font-size:10px;line-height:1.8}
.pre-event-confirmed-points{padding:0 24px 22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pre-event-confirmed-points span{display:flex;align-items:center;gap:7px;padding:10px;border-radius:14px;background:var(--guest-soft,#edf5ff);color:var(--guest-accent-2,var(--primary));font-size:8px;font-weight:850;line-height:1.5}
.pre-event-confirmed-points svg{width:15px;height:15px;flex:0 0 auto}
.pre-event-face-confirmed .folder-privacy-actions{margin:0 24px 22px!important}
.pre-event-api-state{padding:24px;text-align:center;border:1px dashed var(--line);border-radius:20px}.pre-event-api-state b{color:var(--primary)}.pre-event-api-state p{margin:6px 0 0;color:var(--muted);font-size:10px}
@media(max-width:650px){
  .pre-event-gallery-card{grid-template-columns:48px minmax(0,1fr);padding:18px;gap:12px;border-radius:22px}
  .pre-event-gallery-icon{width:48px;height:48px;border-radius:16px}.pre-event-gallery-icon svg{width:23px;height:23px}
  .pre-event-gallery-copy h2{font-size:15px}.pre-event-gallery-copy p{font-size:8.5px}
  .pre-event-gallery-time{grid-column:1/-1;min-width:0;text-align:start;display:flex;justify-content:space-between;align-items:center}
  .pre-event-gallery-time b{margin:0;font-size:9px}
  .pre-event-face-confirmed-main{padding:19px;align-items:flex-start}.pre-event-confirmed-icon{width:49px;height:49px;border-radius:17px}
  .pre-event-face-confirmed-main h2{font-size:17px}.pre-event-face-confirmed-main p{font-size:9px}
  .pre-event-confirmed-points{padding:0 19px 18px;grid-template-columns:1fr}.pre-event-face-confirmed .folder-privacy-actions{margin:0 19px 18px!important}
}


/* =====================================================================
   ONS Moments 3.0.0 — guaranteed soft attention bounce and build marker
   This block is intentionally last so it overrides older animation:none rules.
   ===================================================================== */
@keyframes onsMomentSoftAttentionBounce{
  0%,78%,100%{transform:translateY(0) scale(1)}
  83%{transform:translateY(-4px) scale(1.008)}
  88%{transform:translateY(0) scale(1)}
  93%{transform:translateY(-2px) scale(1.004)}
  97%{transform:translateY(0) scale(1)}
}
.guest-event-page .event-face-dropdown.pre-event-face-choice:not(.is-ready):not([open])>summary{
  animation:onsMomentSoftAttentionBounce 2.8s cubic-bezier(.34,1.3,.64,1) infinite!important;
  transform-origin:center center!important;
  will-change:transform;
}
.guest-event-page .event-face-dropdown.pre-event-face-choice.is-ready>summary,
.guest-event-page .pre-event-guest-notice.is-ready{
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
}
.system-build-version{direction:ltr;unicode-bidi:isolate;font-weight:850;white-space:nowrap}

/* =====================================================================
   ONS Moments 3.0.6 — premium editable app promo email section
   ===================================================================== */
.guest-event-page details{scroll-margin-top:max(14px,env(safe-area-inset-top))}
.guest-event-page .event-face-dropdown.smart-scroll-open{
  scroll-margin-top:max(14px,env(safe-area-inset-top));
  overscroll-behavior:contain;
}
.guest-event-page .event-face-dropdown.smart-scroll-open>.event-face-dropdown-body{
  scroll-margin-top:max(14px,env(safe-area-inset-top));
}
.guest-event-page [data-face-wizard-step],
.guest-event-page [data-face-search-submit]{
  scroll-margin-top:max(18px,env(safe-area-inset-top));
}
@media(max-width:700px){
  .guest-event-page .event-face-dropdown.smart-scroll-open{
    min-height:calc(100svh - max(22px,env(safe-area-inset-top)));
  }
  .guest-event-page .event-face-dropdown.smart-scroll-open>.event-face-dropdown-body{
    min-height:calc(100svh - 132px);
  }
}



/* ONS Moments 3.0.3 — one-pass, GPU-friendly smart scrolling */
html.ons-smart-scroll-running{scroll-behavior:auto!important}
.guest-event-page.smart-scroll-active,
.guest-event-page.smart-scroll-active *{scroll-behavior:auto!important}
.guest-event-page.smart-scroll-active{overflow-anchor:none}
.guest-event-page .event-face-dropdown.smart-scroll-open{contain:layout style}
@media(prefers-reduced-motion:reduce){
  .guest-event-page.smart-scroll-active{overflow-anchor:auto}
}

.dkim-check-guide.critical{border-color:#efb6b6!important;background:#fff5f5!important;color:#8f2020!important}.dkim-check-guide.critical code{background:#fff!important;border:1px solid #f1cccc!important}


/* ONS Moments 3.0.6 — admin controls for the premium app promo email section */
.app-promo-settings-card{margin-top:22px;overflow:hidden;background:linear-gradient(145deg,#fff,#f7f9ff)}
.app-promo-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.app-promo-settings-head small{color:#118fc8;font-weight:900}.app-promo-settings-head h2{margin:4px 0 6px}.app-promo-settings-head p{margin:0;color:var(--muted);max-width:720px}
.app-promo-status{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:8px 13px;border-radius:999px;font-size:11px;font-weight:900}.app-promo-status.is-on{background:#e8f8f0;color:#0e865b}.app-promo-status.is-off{background:#f5e9ed;color:#a53b59}
.app-promo-settings-grid{display:grid;grid-template-columns:minmax(260px,390px) minmax(0,1fr);gap:24px;align-items:start}
.app-promo-admin-preview{position:relative;isolation:isolate;overflow:hidden;min-height:570px;padding:25px 22px 20px;border-radius:28px;text-align:center;background:linear-gradient(145deg,#111833,#24205b 58%,#087ebf 138%);border:1px solid #3d4775;box-shadow:0 22px 55px rgba(29,38,93,.18)}
.app-promo-admin-preview:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(86,85,244,.35),transparent 42%);z-index:-1}.app-promo-preview-glow{position:absolute;left:50%;top:150px;width:250px;height:320px;transform:translateX(-50%);border-radius:50%;background:rgba(90,61,223,.27);filter:blur(55px);z-index:-1}
.app-promo-admin-preview>img:first-of-type{display:block;width:205px;max-height:385px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 24px 28px rgba(2,6,24,.34))}.app-promo-admin-preview>b{display:block;color:#fff;font-size:20px;line-height:1.65}.app-promo-admin-preview>p{margin:7px auto 13px;color:#cbd6ef;line-height:1.8}.app-promo-admin-preview>div:last-child{display:flex;align-items:center;justify-content:center;gap:8px;direction:ltr;flex-wrap:wrap}.app-promo-admin-preview>div:last-child img{width:135px;max-width:46%;padding:6px;border-radius:12px;background:#fff;border:1px solid #dce4f4}
.app-promo-admin-forms{display:grid;gap:18px}.settings-form-stack,.app-screen-upload-form{display:grid;gap:13px}.settings-form-stack textarea{resize:vertical;min-height:74px}.toggle-setting{display:flex!important;align-items:center;gap:11px;padding:13px 14px;border-radius:14px;background:#f2f6ff;border:1px solid #dce6f6}.toggle-setting input{width:19px;height:19px;margin:0}.toggle-setting span{font-weight:800}.app-screen-upload-form{padding:18px;border-radius:18px;background:#f5f8ff;border:1px dashed #b8c8e6}.app-screen-upload-form small{display:block;margin-top:6px;color:var(--muted);line-height:1.6}
@media(max-width:850px){.app-promo-settings-grid{grid-template-columns:1fr}.app-promo-admin-preview{min-height:520px}.app-promo-settings-head{align-items:flex-start}.app-promo-status{flex:0 0 auto}}


/* ONS Moments 3.0.7 — per-event face controls and simplified guest face journey */
.face-event-option{position:relative;border-width:2px!important}.face-event-option em{display:inline-flex;width:max-content;margin-top:7px;padding:5px 9px;border-radius:999px;background:#eef3f8;color:#667085;font-size:8px;font-style:normal;font-weight:950}.face-event-option:has(input:checked){border-color:color-mix(in srgb,var(--accent,#0b8ed6) 38%,white)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--soft,#edf5ff) 74%,white),#fff)!important}.face-event-option:has(input:checked) em{background:#e9f8f0;color:#11835d}
.enhanced-event-settings .card-heading p{margin:4px 0 0;color:var(--muted);font-size:10px}.event-display-controls{display:grid;gap:10px}.event-face-control{display:grid;gap:14px;margin:18px 0;padding:18px;border:1.5px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#f8fafc,#fff);transition:border-color .2s ease,background .2s ease}.event-face-control.is-enabled{border-color:rgba(22,162,111,.28);background:linear-gradient(145deg,#f0fbf6,#fff)}.event-face-control-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px}.event-face-control-head>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#eef3f8;color:#667085}.event-face-control.is-enabled .event-face-control-head>span{background:#e7f8f0;color:#11835d}.event-face-control-head svg{width:24px;height:24px}.event-face-control-head small{display:block;color:var(--muted);font-size:8px;font-weight:900}.event-face-control-head h4{margin:2px 0 4px;font-size:15px}.event-face-control-head p{margin:0;color:var(--muted);font-size:9px;line-height:1.65}.event-face-control-head em{padding:6px 10px;border-radius:999px;background:#eef3f8;color:#667085;font-size:9px;font-style:normal;font-weight:950}.event-face-control.is-enabled .event-face-control-head em{background:#dff6ea;color:#11835d}.feature-master-toggle{padding:13px 14px!important;border:1px solid var(--line)!important;border-radius:17px!important;background:#fff}.face-prereg-toggle{padding-inline:14px!important}.event-face-control-note{display:block;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.78);color:var(--muted);font-size:9px;line-height:1.65}.event-settings-save{width:100%;min-height:52px;border-radius:17px!important}.face-easy-guide{display:grid;gap:13px;padding:16px;border:1px solid color-mix(in srgb,var(--guest-accent,#0b8ed6) 19%,white);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--guest-soft,#edf5ff) 74%,white),#fff)}.face-easy-guide-head{display:flex;align-items:center;gap:11px}.face-easy-guide-head>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff}.face-easy-guide-head svg{width:21px;height:21px}.face-easy-guide-head small{display:block;color:var(--guest-accent,#0b8ed6);font-size:8px;font-weight:900}.face-easy-guide-head b{display:block;margin-top:2px;color:var(--guest-ink,var(--primary));font-size:13px}.face-easy-guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.face-easy-guide-steps>span{display:grid;justify-items:center;gap:4px;padding:10px 6px;border:1px solid var(--guest-border,var(--line));border-radius:15px;background:#fff;text-align:center}.face-easy-guide-steps i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--guest-soft,#edf5ff);color:var(--guest-accent,#0b8ed6);font-size:10px;font-style:normal;font-weight:950}.face-easy-guide-steps b{font-size:9px}.face-easy-guide-steps small{font-size:7.4px;color:var(--guest-muted,var(--muted));line-height:1.4}.face-current-instruction{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;padding:12px 14px;border-radius:17px;background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));color:#fff}.face-current-instruction>span{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.17);font-size:13px;font-weight:950}.face-current-instruction b{display:block;font-size:11px}.face-current-instruction small{display:block;margin-top:2px;color:rgba(255,255,255,.78);font-size:8px}.face-primary-action{position:relative}.selfie-open-button.face-primary-action{grid-template-columns:46px minmax(0,1fr) auto 18px!important}.selfie-open-button.face-primary-action>strong{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:7px 10px;border-radius:999px;background:#fff;color:var(--guest-accent-2,#31235e);font-size:9px;font-weight:950}.face-consent-action-hint{margin:0;padding:9px 12px;border-radius:12px;background:#fff6db;color:#8a6400;font-size:9px;font-weight:850;text-align:center}.consent-is-ready .face-consent-action-hint{background:#e8f8f0;color:#11835d}.featured-face-choice summary>strong{display:grid!important;justify-items:end!important;gap:4px!important}.featured-face-choice summary>strong>span{white-space:nowrap;font-size:8px;font-weight:950;color:var(--guest-accent,#0b8ed6)}.featured-face-choice summary>strong svg{width:18px;height:18px}.featured-face-choice:not(.is-ready)>summary{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--guest-accent,#0b8ed6) 18%,transparent)}
@media(max-width:620px){.event-face-control{padding:15px}.event-face-control-head{grid-template-columns:43px minmax(0,1fr)}.event-face-control-head>span{width:43px;height:43px}.event-face-control-head>em{grid-column:1/-1;justify-self:start;margin-right:55px}.face-easy-guide{padding:13px}.face-easy-guide-steps{gap:6px}.face-easy-guide-steps>span{padding:9px 3px}.face-current-instruction{grid-template-columns:38px minmax(0,1fr);padding:11px 12px}.featured-face-choice summary>strong>span{font-size:7px}}

/* ONS Moments 3.0.8 — provider-controlled admin photo access */
.photo-access-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 0 18px;padding:16px 18px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(31,48,83,.06)}
.photo-access-card .photo-access-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#eef4ff;color:#246bfd}
.photo-access-card .photo-access-icon .ons-icon{width:25px;height:25px}.photo-access-card small{display:block;color:var(--muted);font-size:9px;font-weight:900}.photo-access-card h3{margin:3px 0 5px;color:var(--primary);font-size:15px}.photo-access-card p{margin:0;color:var(--muted);font-size:9px;line-height:1.75}.photo-access-card form{margin:0}.photo-access-card.pending{border-color:rgba(226,159,33,.32);background:linear-gradient(145deg,#fffaf0,#fff)}.photo-access-card.pending .photo-access-icon{background:#fff2d7;color:#a96a00}.photo-access-card.approved{border-color:rgba(22,162,111,.28);background:linear-gradient(145deg,#f0fbf6,#fff)}.photo-access-card.approved .photo-access-icon{background:#dff6ea;color:#11835d}.photo-access-card.rejected,.photo-access-card.revoked{border-color:rgba(208,63,78,.2)}
.photo-access-status{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 13px;border-radius:14px;background:#eef3f8;color:#667085;font-size:9px;font-weight:950;white-space:nowrap}.photo-access-status .ons-icon{width:17px;height:17px}.photo-access-actions{display:flex;align-items:center;gap:8px}.photo-access-disabled{pointer-events:none;opacity:.72}.privacy-locked-panel{display:grid;align-content:center;justify-items:center;text-align:center}.privacy-lock-visual{width:86px;height:86px;display:grid;place-items:center;margin:14px auto;border-radius:28px;background:linear-gradient(145deg,#eef4ff,#f7f3ff);color:#4f63e8}.privacy-lock-visual .ons-icon{width:42px;height:42px}.privacy-locked-panel h2{margin:8px 0}.privacy-locked-panel p{max-width:330px}.protected-photo-access .empty-icon{color:#4f63e8}.provider-access-inbox{margin:0 0 18px;padding:18px;border:1px solid rgba(79,99,232,.22);border-radius:24px;background:linear-gradient(145deg,#f5f8ff,#fff);box-shadow:0 14px 36px rgba(31,48,83,.06)}.provider-access-inbox-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px}.provider-access-inbox-head>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#246bfd,#6657e8);color:#fff}.provider-access-inbox-head .ons-icon{width:23px;height:23px}.provider-access-inbox-head small{color:#246bfd;font-size:9px;font-weight:900}.provider-access-inbox-head h2{margin:2px 0 3px;font-size:16px}.provider-access-inbox-head p{margin:0;color:var(--muted);font-size:9px}.provider-access-inbox-head>b{min-width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#246bfd;border:1px solid rgba(36,107,253,.16)}.provider-access-inbox-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border-top:1px solid rgba(36,107,253,.1);color:inherit;text-decoration:none}.provider-access-inbox-item>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#fff;color:#4f63e8}.provider-access-inbox-item .ons-icon{width:20px;height:20px}.provider-access-inbox-item b{display:block;font-size:11px}.provider-access-inbox-item small{display:block;margin-top:2px;color:var(--muted);font-size:8px}.provider-access-inbox-item strong{font-size:9px;color:#246bfd;white-space:nowrap}
/* Keep the face option icon intact; JS updates only the dedicated status label. */
.face-event-option>span{overflow:hidden;flex:0 0 40px}.face-event-option>span .ons-icon{display:block}.face-event-option [data-event-face-choice-label]{display:block;margin-top:4px;color:#246bfd;font-size:8px;font-style:normal;font-weight:950}
@media(max-width:700px){.photo-access-card{grid-template-columns:46px minmax(0,1fr);padding:14px}.photo-access-card .photo-access-icon{width:46px;height:46px;border-radius:15px}.photo-access-card>form,.photo-access-card>.photo-access-status,.photo-access-card>.photo-access-actions{grid-column:1/-1;width:100%}.photo-access-card>form button,.photo-access-card>.photo-access-status{width:100%}.photo-access-actions{display:grid;grid-template-columns:1fr 1fr}.photo-access-actions form button{width:100%}.provider-access-inbox{padding:14px}.provider-access-inbox-head{grid-template-columns:44px minmax(0,1fr) auto}.provider-access-inbox-item{grid-template-columns:38px minmax(0,1fr)}.provider-access-inbox-item>strong{grid-column:2;justify-self:start}.face-event-option{grid-template-columns:40px minmax(0,1fr)!important}.face-event-option>span{width:40px!important;height:40px!important}}


/* =====================================================================
   ONS Moments 3.0.9 — responsive icon-only controls and mobile layout guard
   Final override: fixed-size icon controls never contain visible copy.
   ===================================================================== */
.guest-event-page .featured-face-choice>summary{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:15px!important;
}
.guest-event-page .featured-face-choice>summary>span:not(.choice-icon){
  min-width:0!important;
  overflow-wrap:anywhere;
}
.guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action{
  display:grid!important;
  place-items:center!important;
  justify-items:center!important;
  align-items:center!important;
  gap:0!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:15px!important;
  font-size:0!important;
  line-height:0!important;
  white-space:nowrap!important;
  text-indent:0!important;
}
.guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action>span{
  display:none!important;
}
.guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  max-width:19px!important;
  max-height:19px!important;
  margin:0!important;
  flex:none!important;
}

/* Defensive rule for every square icon tile used across guest, provider and admin pages. */
:is(
  .choice-icon,
  .face-icon,
  .face-badge,
  .photo-access-icon,
  .event-location-direct-icon,
  .pre-event-gallery-icon,
  .pre-event-confirmed-icon,
  .face-easy-guide-head>span,
  .event-face-control-head>span,
  .face-event-option>span,
  .option-card>span,
  .folder-icon,
  .stat-icon,
  .success-dialog-icon,
  .empty-icon
){
  overflow:hidden!important;
  font-size:0!important;
  line-height:0!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
}
:is(
  .choice-icon,
  .face-icon,
  .face-badge,
  .photo-access-icon,
  .event-location-direct-icon,
  .pre-event-gallery-icon,
  .pre-event-confirmed-icon,
  .face-easy-guide-head>span,
  .event-face-control-head>span,
  .face-event-option>span,
  .option-card>span,
  .folder-icon,
  .stat-icon,
  .success-dialog-icon,
  .empty-icon
) svg{
  display:block!important;
  flex:none!important;
  max-width:68%!important;
  max-height:68%!important;
}

/* Prevent narrow screens from squeezing labels into icon columns. */
.event-face-dropdown>summary>span:not(.choice-icon),
.event-choice>span:not(.choice-icon),
.event-location-direct-copy,
.option-card>div,
.event-face-control-head>div,
.photo-access-card>div{
  min-width:0!important;
}
.event-face-dropdown>summary b,
.event-face-dropdown>summary small,
.event-choice b,
.event-choice small,
.event-location-direct-copy b,
.option-card b,
.option-card small,
.event-face-control-head h4,
.event-face-control-head p,
.photo-access-card h3,
.photo-access-card p{
  overflow-wrap:anywhere;
  word-break:normal;
}

@media(max-width:620px){
  .guest-event-page .featured-face-choice>summary{
    grid-template-columns:56px minmax(0,1fr) 40px!important;
    column-gap:11px!important;
    padding:15px 14px!important;
    min-height:96px!important;
  }
  .guest-event-page .featured-face-choice .choice-icon{
    width:56px!important;
    height:56px!important;
  }
  .guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    border-radius:14px!important;
  }
  .guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action svg{
    width:18px!important;
    height:18px!important;
    max-width:18px!important;
    max-height:18px!important;
  }
  .guest-event-page .featured-face-choice summary b{
    font-size:16px!important;
  }
  .guest-event-page .featured-face-choice summary small{
    font-size:9px!important;
  }
}

@media(max-width:360px){
  .guest-event-page .featured-face-choice>summary{
    grid-template-columns:50px minmax(0,1fr) 36px!important;
    column-gap:8px!important;
    padding:13px 11px!important;
  }
  .guest-event-page .featured-face-choice .choice-icon{
    width:50px!important;
    height:50px!important;
    border-radius:17px!important;
  }
  .guest-event-page .featured-face-choice>summary>strong.face-summary-icon-action{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    border-radius:12px!important;
  }
  .guest-event-page .featured-face-choice summary b{font-size:14px!important}
  .guest-event-page .featured-face-choice summary small{font-size:8.2px!important}
}


/* =====================================================================
   ONS Moments 3.0.10 — ultra-simple face search: one action at a time
   ===================================================================== */
.simple-face-flow{
  width:min(100%,580px)!important;
  margin-inline:auto!important;
  padding:10px!important;
  gap:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.simple-face-flow .face-flow-form{gap:0!important}
.simple-face-flow .face-wizard-progress,
.simple-face-flow .face-easy-guide,
.simple-face-flow .face-current-instruction,
.simple-face-flow .face-consent-highlights,
.simple-face-flow .face-consent-action-hint,
.simple-face-flow .face-account-strip,
.simple-face-flow .face-step-transition{display:none!important}
.face-simple-card{
  display:grid;
  gap:16px;
  padding:20px;
  border:1px solid var(--guest-border,var(--line));
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(24,45,97,.07);
}
.face-simple-heading{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:center;
  gap:13px;
  text-align:start;
}
.face-simple-heading>span{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));
  color:#fff;
}
.face-simple-heading>span svg{width:25px;height:25px}
.face-simple-heading small{display:block;color:var(--guest-accent,#0b8ed6);font-size:8px;font-weight:900}
.face-simple-heading h3{margin:2px 0 0;color:var(--guest-ink,var(--primary));font-size:20px}
.face-simple-heading p{margin:3px 0 0;color:var(--guest-muted,var(--muted));font-size:9px;line-height:1.6}
.simple-face-flow .selfie-capture-card{width:100%;margin:0}
.simple-face-flow .selfie-open-button{
  min-height:62px!important;
  grid-template-columns:44px minmax(0,1fr) 18px!important;
  gap:11px!important;
  padding:10px 13px!important;
  border:0!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6))!important;
  color:#fff!important;
  box-shadow:0 12px 26px color-mix(in srgb,var(--guest-accent,#0b8ed6) 20%,transparent)!important;
}
.simple-face-flow .selfie-open-button>span:first-child{width:40px;height:40px;background:rgba(255,255,255,.14)!important}
.simple-face-flow .selfie-open-button b{color:#fff!important;font-size:12px!important}
.simple-face-flow .selfie-open-button small{color:rgba(255,255,255,.76)!important;font-size:8px!important}
.simple-face-flow .selfie-selected{grid-template-columns:60px minmax(0,1fr)!important;padding:10px!important}
.simple-face-flow .selfie-selected img{width:60px!important;height:72px!important}
.simple-face-flow .selfie-selected-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
.simple-face-flow .face-flow-consent{
  margin:0!important;
  padding:14px!important;
  border:1px solid var(--guest-border,var(--line))!important;
  border-radius:16px!important;
  background:var(--guest-soft,#f5f8fd)!important;
  color:var(--guest-ink,var(--primary))!important;
  font-size:9.5px!important;
  line-height:1.7!important;
}
.simple-face-flow .face-flow-consent input{width:22px!important;height:22px!important}
.simple-face-flow .face-flow-consent.is-accepted{border-color:#8bd4b8!important;background:#effaf5!important}
.simple-face-flow .face-flow-submit{width:100%;min-height:56px!important;margin:0!important}
.face-simple-back{
  justify-self:center;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:0;
  background:transparent;
  color:var(--guest-muted,var(--muted));
  font-size:9px;
  font-weight:850;
  box-shadow:none!important;
}
.face-simple-back svg{width:14px;height:14px}
.simple-face-flow .face-reference-choice-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.simple-face-flow .face-reference-choice-actions>*{width:100%!important}
@media(max-width:520px){
  .simple-face-flow{padding:6px!important}
  .face-simple-card{padding:15px;border-radius:19px;gap:13px}
  .face-simple-heading{grid-template-columns:44px minmax(0,1fr);gap:10px}
  .face-simple-heading>span{width:44px;height:44px;border-radius:14px}
  .face-simple-heading h3{font-size:17px}
  .simple-face-flow .face-reference-choice-actions{grid-template-columns:1fr!important}
}


/* =====================================================================
   ONS Moments 3.0.11 — compact clickable face steps
   ===================================================================== */
.face-simple-stepper{
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);
  align-items:center;
  gap:7px;
  margin:0 0 10px;
  padding:6px;
  border:1px solid var(--guest-border,var(--line));
  border-radius:16px;
  background:color-mix(in srgb,var(--guest-soft,#f5f8fd) 78%,#fff);
}
.face-simple-stepper button{
  min-width:0!important;
  min-height:39px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:5px 7px!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--guest-muted,var(--muted))!important;
  box-shadow:none!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1.2!important;
}
.face-simple-stepper button i{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:9px;
  background:#e9eef6;
  color:#7e899a;
  font-style:normal;
  font-size:9px;
  font-weight:950;
}
.face-simple-stepper button.is-active{
  background:#fff!important;
  color:var(--guest-ink,var(--primary))!important;
  box-shadow:0 5px 14px rgba(24,45,97,.07)!important;
}
.face-simple-stepper button.is-active i{
  background:linear-gradient(135deg,var(--guest-accent-2,#31235e),var(--guest-accent,#0b8ed6));
  color:#fff;
}
.face-simple-stepper button.is-done{color:var(--guest-ink,var(--primary))!important}
.face-simple-stepper button.is-done i{background:#eaf8f2;color:#0b8f61}
.face-simple-stepper button:not(:disabled){cursor:pointer}
.face-simple-stepper button:disabled{opacity:.48!important;cursor:not-allowed}
.face-simple-stepper em{
  height:2px;
  border-radius:999px;
  background:color-mix(in srgb,var(--guest-accent,#0b8ed6) 22%,#dfe6f0);
}
@media(max-width:420px){
  .face-simple-stepper{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:4px;padding:5px}
  .face-simple-stepper button{gap:5px!important;padding:4px!important;font-size:8px!important}
  .face-simple-stepper button i{width:23px;height:23px;border-radius:8px}
}

/* =====================================================================
   ONS Moments 3.0.12 — optional public gallery per event
   ===================================================================== */
.public-gallery-option em{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:5px;
  padding:4px 8px;
  border-radius:999px;
  background:#e8f2ff;
  color:#1d6fc4;
  font-size:7.5px;
  font-style:normal;
  font-weight:950;
  line-height:1.35;
}
.public-gallery-option:has(input:not(:checked)) em{
  background:#f0eaff;
  color:#6643bd;
}
.event-gallery-visibility-control.is-disabled{
  border-color:rgba(101,67,189,.28);
  background:linear-gradient(145deg,#f7f3ff,#fff);
}
.event-gallery-visibility-control.is-disabled .event-face-control-head>span{
  background:#eee7ff;
  color:#6643bd;
}
.event-gallery-visibility-control.is-disabled .event-face-control-head em{
  background:#eee7ff;
  color:#6643bd;
}

/* =====================================================================
   ONS Moments 3.0.16 — provider workflow + guest experience controls
   ===================================================================== */
.public-account-icon{display:inline-grid!important;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:16px;background:#fff;border:1px solid rgba(49,35,94,.1);box-shadow:0 10px 28px rgba(31,57,105,.08);color:var(--primary)}
.public-account-icon svg{width:21px;height:21px}

.provider-event-accordions{display:grid;gap:12px;margin:16px 0}
.workspace-accordion{border:1px solid #dfe7f2;border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(29,52,96,.055);overflow:hidden;margin:12px 0}
.workspace-accordion>summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:70px;padding:15px 17px;cursor:pointer;user-select:none}
.workspace-accordion>summary::-webkit-details-marker{display:none}
.workspace-accordion>summary>span:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#f0ecff,#e7f7ff);color:#2d4392}
.workspace-accordion>summary>span:first-child svg{width:21px;height:21px}
.workspace-accordion>summary div{display:grid;gap:3px;min-width:0}
.workspace-accordion>summary b{font-size:15px;color:#241b55}
.workspace-accordion>summary small{font-size:11px;color:#758096}
.workspace-accordion>summary>svg,.workspace-accordion>summary>span:last-child svg{width:18px;height:18px;transition:transform .2s ease}
.workspace-accordion[open]>summary>svg,.workspace-accordion[open]>summary>span:last-child svg{transform:rotate(90deg)}
.workspace-accordion-body{border-top:1px solid #edf1f7;padding:15px;background:linear-gradient(180deg,#fbfdff,#fff)}
.workspace-accordion-body>.card,.workspace-accordion-body>.event-setup-pro{margin:0}
.upload-workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.upload-workspace-grid>.card{height:100%}
.edited-photo-uploader{border-color:rgba(87,65,181,.22)!important;background:linear-gradient(145deg,#fff,#f8f5ff)!important}
.edited-photo-uploader .feature-card-icon{background:linear-gradient(135deg,#efe9ff,#e8f7ff)!important;color:#4b3da0!important}
.upload-selection-status.has-error{color:#b42318!important;background:#fff1f0!important;border-color:#f3b7b2!important}

.upload-window-checkbox-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:10px}
.upload-window-checkbox-grid label{display:flex!important;align-items:center;gap:8px;padding:11px 12px!important;border:1px solid #dfe6f1;border-radius:14px;background:#fff;font-weight:800!important;cursor:pointer}
.upload-window-checkbox-grid input{width:18px!important;height:18px!important;margin:0!important}
.provider-logo-preview{display:flex;align-items:center;gap:14px;margin-top:12px;padding:12px;border:1px solid #e2e8f2;border-radius:16px;background:#fafcff}
.provider-logo-preview img{width:70px;height:70px;object-fit:contain;border-radius:14px;background:#fff;border:1px solid #e8edf5;padding:6px}

.camera-guides-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.camera-guide-admin-card{display:grid;gap:12px;padding:16px;border:1px solid #e1e8f3;border-radius:20px;background:linear-gradient(150deg,#fff,#f8fbff)}
.camera-guide-admin-card h3{margin:0;color:#241b55}
.camera-guide-admin-card textarea{min-height:150px;resize:vertical}
.camera-guide-admin-card .camera-guide-actions{display:flex;gap:8px;flex-wrap:wrap}
.guest-experience-admin-card{border:1px solid rgba(49,35,94,.12)!important;background:linear-gradient(145deg,#fff,#f8fbff)!important}
.guest-experience-admin-card .guest-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.guest-experience-admin-card input[type="color"]{min-height:46px;padding:4px}

.guest-event-page{--guest-primary:var(--primary);--guest-secondary:#0b8ed6;--guest-bg:#f7f9fe;--guest-surface:#fff;--guest-text:#221b43;--guest-muted:#737b8e;background:var(--guest-bg)!important;color:var(--guest-text)!important}
.guest-event-page .event-public-card,.guest-event-page .event-guest-section,.guest-event-page .event-face-dropdown{--primary:var(--guest-primary);--guest-accent:var(--guest-secondary);--guest-accent-2:var(--guest-primary);--guest-ink:var(--guest-text);--guest-muted:var(--guest-muted)}
.guest-app-promo{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;margin:12px 0;padding:11px 13px;border:1px solid color-mix(in srgb,var(--guest-secondary) 18%,#dce5f1);border-radius:18px;background:linear-gradient(115deg,color-mix(in srgb,var(--guest-secondary) 7%,#fff),color-mix(in srgb,var(--guest-primary) 5%,#fff));box-shadow:0 9px 26px rgba(32,56,102,.055);text-decoration:none!important;color:var(--guest-text)!important}
.guest-app-promo img{width:38px;height:38px;border-radius:11px;object-fit:cover;background:#fff}
.guest-app-promo>div{display:grid;gap:2px;min-width:0}
.guest-app-promo small{font-size:8px;font-weight:900;color:var(--guest-secondary);letter-spacing:.02em}
.guest-app-promo b{font-size:12px;line-height:1.35;color:var(--guest-text)}
.guest-app-promo span{font-size:9px;line-height:1.45;color:var(--guest-muted)}
.guest-app-promo>svg,.guest-app-promo>i svg{width:17px;height:17px;color:var(--guest-secondary)}

.user-account-page .app-shell{max-width:1120px}
.user-account-page .account-head{position:relative;overflow:hidden}
.user-account-page .account-head:after{content:"";position:absolute;inset:auto -90px -110px auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(18,157,224,.13),transparent 68%);pointer-events:none}
.user-account-page .account-management-card,.user-account-page .account-face-summary{border:1px solid #e2e8f2;border-radius:24px;box-shadow:0 13px 34px rgba(29,52,96,.055)}
.user-account-page .account-management-card{padding:21px}
.user-account-page .section-title{align-items:end}
.user-account-page .danger-zone{border-radius:22px}

@media(max-width:850px){
  .camera-guides-admin-grid{grid-template-columns:1fr}
  .upload-window-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .upload-workspace-grid{grid-template-columns:1fr}
  .guest-experience-admin-card .guest-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .workspace-accordion>summary{min-height:62px;padding:12px 13px;gap:9px}
  .workspace-accordion>summary>span:first-child{width:37px;height:37px;border-radius:12px}
  .workspace-accordion-body{padding:10px}
  .upload-window-checkbox-grid{grid-template-columns:1fr 1fr}
  .guest-experience-admin-card .guest-color-grid{grid-template-columns:1fr 1fr}
  .guest-app-promo{padding:9px 10px;border-radius:15px;gap:8px}
  .guest-app-promo img{width:34px;height:34px;border-radius:10px}
}
/* v3.0.16 guest promo actual markup */
.guest-app-promo>.guest-app-promo-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(30,52,95,.08);overflow:hidden}
.guest-app-promo>.guest-app-promo-icon img{display:block;width:100%;height:100%;object-fit:cover}
.guest-app-promo>span:nth-child(2){display:grid;gap:1px;min-width:0}
.guest-app-promo>span:nth-child(2)>small{font-size:8px;font-weight:900;color:var(--guest-secondary)}
.guest-app-promo>span:nth-child(2)>b{font-size:12px;line-height:1.3;color:var(--guest-text)}
.guest-app-promo>span:nth-child(2)>em{font-size:9px;line-height:1.4;color:var(--guest-muted);font-style:normal}
.guest-app-promo>strong{display:grid;place-items:center;width:28px;height:28px;border-radius:10px;background:color-mix(in srgb,var(--guest-secondary) 9%,#fff);color:var(--guest-secondary)}
.guest-app-promo>strong svg{width:14px;height:14px}

/* =====================================================================
   ONS Moments 3.0.17 — guest face readiness states
   Pending = warm attention; Ready = green confirmation. Both keep a
   subtle periodic bounce so the control remains discoverable.
   ===================================================================== */
@keyframes onsFaceStatusBounce317{
  0%,76%,100%{transform:translateY(0) scale(1)}
  82%{transform:translateY(-4px) scale(1.006)}
  88%{transform:translateY(0) scale(1)}
  94%{transform:translateY(-2px) scale(1.003)}
}
.guest-event-page .featured-face-choice>summary{
  animation:onsFaceStatusBounce317 3.2s cubic-bezier(.34,1.3,.64,1) infinite!important;
  transform-origin:center center!important;
  will-change:transform;
}
.guest-event-page .featured-face-choice.is-pending>summary{
  border-color:rgba(224,143,22,.34)!important;
  background:linear-gradient(145deg,#fff9e8,#fff4d8)!important;
  box-shadow:0 16px 36px rgba(199,125,13,.12),inset 0 0 0 1px rgba(224,143,22,.10)!important;
}
.guest-event-page .featured-face-choice.is-pending>summary .choice-icon{
  background:linear-gradient(135deg,#f2a61d,#e07719)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(224,119,25,.22)!important;
}
.guest-event-page .featured-face-choice.is-pending>summary .face-featured-badge{
  color:#9a6100!important;
  background:#fff0bf!important;
}
.guest-event-page .featured-face-choice.is-ready>summary{
  border-color:rgba(28,157,104,.28)!important;
  background:linear-gradient(145deg,#f1fbf6,#e8f8f0)!important;
  box-shadow:0 16px 36px rgba(28,157,104,.11),inset 0 0 0 1px rgba(28,157,104,.08)!important;
}
.guest-event-page .featured-face-choice.is-ready>summary .choice-icon{
  background:linear-gradient(135deg,#28b77c,#128c61)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(18,140,97,.20)!important;
}
.guest-event-page .featured-face-choice.is-ready>summary .face-featured-badge{
  color:#117653!important;
  background:#dff6ea!important;
}
.guest-event-page .featured-face-choice.is-ready>summary b{color:#164c3b!important}
.guest-event-page .featured-face-choice.is-pending>summary b{color:#6f4a08!important}
@media(prefers-reduced-motion:reduce){
  .guest-event-page .featured-face-choice>summary{animation:none!important;will-change:auto!important}
}


/* v3.0.18 — keep guest account shortcut visible beside language on mobile */
.guest-event-page .top-actions>a.public-account-icon{display:inline-grid!important;place-items:center!important}
@media(max-width:650px){
  .guest-event-page .top-actions{display:flex!important;align-items:center!important;gap:7px!important}
  .guest-event-page .top-actions>a.public-account-icon{display:inline-grid!important;width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:14px!important}
  .guest-event-page .top-actions>a.public-account-icon svg{width:20px!important;height:20px!important}
}

/* ONS Moments 3.0.25 ------------------------------------------------------- */
.event-public-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.event-public-actions>:only-child{grid-column:1/-1}.google-brand-mark,.brand-map-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 auto}.google-brand-mark svg,.brand-map-icon svg,.youtube-setting-icon svg,.event-live-stream-direct-icon svg{width:100%;height:100%;display:block}.event-live-stream-direct{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:14px 16px;border:1px solid rgba(255,0,0,.14);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,246,246,.98));box-shadow:0 12px 32px rgba(44,24,35,.07);color:inherit;text-decoration:none}.event-live-stream-direct-main{display:flex;align-items:center;gap:12px}.event-live-stream-direct-icon{display:flex;width:40px;height:40px;align-items:center;justify-content:center;flex:0 0 auto}.event-live-stream-direct small,.event-live-stream-direct b{display:block}.event-live-stream-direct small{margin-bottom:3px;color:#8d6067;font-size:.74rem}.event-live-stream-direct b{font-size:.98rem}.event-live-stream-direct-cta{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;font-weight:800;color:#bf1e2e;white-space:nowrap}.event-live-stream-direct-cta .ons-icon{width:17px;height:17px}.event-live-stream-settings{overflow:hidden}.event-live-stream-settings-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}.youtube-setting-icon{display:flex;width:42px;height:42px;flex:0 0 auto}.event-live-stream-settings-head small{color:var(--muted)}.event-live-stream-settings-head h3{margin:3px 0 5px}.event-live-stream-settings-head p{margin:0;color:var(--muted)}.event-live-stream-settings-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:12px}.event-live-stream-settings-actions .secondary-btn{display:inline-flex;align-items:center;gap:7px}.event-live-stream-settings-actions svg{width:19px;height:19px}.event-live-stream-accordion summary>span:first-child{display:flex;width:25px;height:25px}.event-live-stream-accordion summary>span:first-child svg{width:100%;height:100%}

.camera-connection-monitor{margin-top:16px;display:grid;gap:12px}.camera-live-status{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(248,248,250,.78)}.camera-live-dot{width:12px;height:12px;border-radius:50%;margin-top:7px;flex:0 0 auto;background:#a7a7ad;box-shadow:0 0 0 5px rgba(150,150,160,.09)}.camera-live-status.connected{border-color:rgba(25,157,92,.22);background:rgba(235,251,243,.83)}.camera-live-status.connected .camera-live-dot{background:#18a05e;box-shadow:0 0 0 5px rgba(24,160,94,.12),0 0 16px rgba(24,160,94,.28)}.camera-live-status.stale .camera-live-dot{background:#dc9e1a;box-shadow:0 0 0 5px rgba(220,158,26,.11)}.camera-live-status small,.camera-live-status b,.camera-live-status p{display:block}.camera-live-status small{color:var(--muted);font-size:.72rem}.camera-live-status b{margin:2px 0;font-size:.98rem}.camera-live-status p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.6}.camera-device-list{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.camera-device-list>small{color:var(--muted);font-weight:700}.camera-device-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.camera-device-row:first-of-type{border-top:0}.camera-device-row>span{display:flex;width:32px;height:32px;border-radius:10px;background:rgba(79,83,230,.07);align-items:center;justify-content:center}.camera-device-row .ons-icon{width:18px;height:18px}.camera-device-row b,.camera-device-row small{display:block}.camera-device-row small{margin-top:2px;color:var(--muted);font-size:.72rem}.camera-device-row em{font-style:normal;color:var(--muted);font-size:.72rem;white-space:nowrap}.camera-device-empty{padding:11px 13px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);font-size:.78rem;line-height:1.6}.camera-test-result{padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.camera-test-result.active{border-color:rgba(73,89,235,.24);box-shadow:0 10px 28px rgba(54,63,190,.06)}.camera-test-result.complete{border-color:rgba(25,157,92,.22);background:rgba(245,253,249,.8)}.camera-test-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.camera-test-result-head small,.camera-test-result-head b{display:block}.camera-test-result-head small{color:var(--muted);font-size:.72rem}.camera-test-result-head b{margin-top:2px}.camera-test-result-head em{font-style:normal;font-size:.72rem;color:var(--muted);white-space:nowrap}.camera-test-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:12px}.camera-test-slot{position:relative;overflow:hidden;aspect-ratio:3/4;border-radius:12px;border:1px solid var(--line);margin:0;background:#f5f5f7}.camera-test-slot.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted)}.camera-test-slot.empty span{font-weight:900;font-size:1.05rem}.camera-test-slot.empty small{font-size:.58rem;text-align:center}.camera-test-slot img{width:100%;height:100%;object-fit:cover;display:block}.camera-test-slot figcaption{position:absolute;inset:auto 5px 5px 5px;padding:4px 5px;border-radius:7px;background:rgba(18,18,22,.7);color:#fff;backdrop-filter:blur(7px)}.camera-test-slot figcaption b,.camera-test-slot figcaption small{display:block}.camera-test-slot figcaption small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.52rem}.camera-test-result>p{margin:10px 0 0;color:var(--muted);font-size:.73rem;line-height:1.55}.camera-test-start-form{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.camera-test-start-form small{flex:1 1 260px;color:var(--muted);line-height:1.55}.camera-test-button{display:inline-flex;align-items:center;gap:7px}.camera-test-button .ons-icon{width:18px;height:18px}

.matched-photo-sections{display:grid;gap:22px;margin-top:16px}.matched-photo-section{padding:14px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.66)}.matched-photo-section.edited{border-color:rgba(84,79,231,.17);background:linear-gradient(145deg,rgba(247,247,255,.96),rgba(255,255,255,.95));box-shadow:0 14px 36px rgba(76,71,208,.06)}.matched-photo-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.matched-photo-section-head small{color:var(--muted);font-size:.72rem;font-weight:800}.matched-photo-section.edited .matched-photo-section-head small{color:#5954c7}.matched-photo-section-head h3{margin:2px 0 3px;font-size:1.05rem}.matched-photo-section-head p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}.matched-photo-section-head .save-all-photos{flex:0 0 auto;white-space:nowrap}

.subscriber-account-list{display:grid;gap:10px}.subscriber-account-card{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(150px,220px);gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 7px 22px rgba(35,35,50,.035)}.subscriber-account-avatar{display:flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(145deg,rgba(80,75,224,.12),rgba(114,181,248,.1));font-size:1.25rem;font-weight:900}.subscriber-account-main h3{margin:4px 0 2px}.subscriber-account-main p{margin:0 0 4px;font-size:.82rem}.subscriber-account-main>small{color:var(--muted);font-size:.72rem}.subscriber-account-tags{display:flex;flex-wrap:wrap;gap:5px}.subscriber-ons-link{padding:10px 12px;border-radius:14px;background:rgba(248,248,251,.9);border:1px solid var(--line)}.subscriber-ons-link small,.subscriber-ons-link b,.subscriber-ons-link span{display:block}.subscriber-ons-link small{color:var(--muted);font-size:.65rem}.subscriber-ons-link b{margin:2px 0;font-size:.84rem;word-break:break-word}.subscriber-ons-link span{color:var(--muted);font-size:.67rem}.subscriber-search{margin-bottom:14px}.subscriber-pagination{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px}.subscriber-pagination>span{margin-inline-end:auto;color:var(--muted);font-size:.78rem}

@media(max-width:720px){.event-public-actions{grid-template-columns:1fr}.event-public-actions>:only-child{grid-column:auto}.event-live-stream-direct{min-height:70px;padding:12px 13px}.event-live-stream-direct-cta{font-size:.74rem}.camera-test-slots{gap:4px}.camera-test-slot{border-radius:9px}.camera-test-slot.empty small{display:none}.camera-test-result-head{display:block}.camera-test-result-head em{display:block;margin-top:4px}.matched-photo-section{padding:10px;border-radius:18px}.matched-photo-section-head{align-items:flex-start;flex-direction:column}.matched-photo-section-head .save-all-photos{width:100%;justify-content:center}.subscriber-account-card{grid-template-columns:44px minmax(0,1fr);padding:12px}.subscriber-account-avatar{width:42px;height:42px}.subscriber-ons-link{grid-column:1/-1}.subscriber-pagination{flex-wrap:wrap}.subscriber-pagination>span{width:100%;margin:0}}


/* ONS Moments 3.0.27 ------------------------------------------------------- */
/* Native, JavaScript-independent reveal for the FTPS camera password. */
.ftp-password-row .ftp-secret-native{min-width:0;margin:0}
.ftp-password-row .ftp-secret-native summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:34px;padding:4px 6px 4px 10px;border:1px solid rgba(59,73,124,.10);border-radius:11px;background:#fbfcff;cursor:pointer;user-select:none;-webkit-user-select:none}
.ftp-password-row .ftp-secret-native summary::-webkit-details-marker{display:none}
.ftp-password-row .ftp-secret-native code{display:block!important;min-width:48px;max-width:none!important;overflow:visible!important;text-overflow:clip!important;font-size:11px!important;letter-spacing:.14em;white-space:nowrap!important;color:#25233a!important}
.ftp-password-row .ftp-secret-value{display:none!important;letter-spacing:.18em!important;font-weight:950!important}
.ftp-password-row .ftp-secret-native[open] .ftp-secret-mask{display:none!important}
.ftp-password-row .ftp-secret-native[open] .ftp-secret-value{display:block!important}
.ftp-secret-toggle-label{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:6px 9px;border-radius:9px;background:#f1eef8;color:var(--primary);font-size:8px;font-weight:900;line-height:1}
.ftp-secret-toggle-label .when-open{display:none}
.ftp-secret-native[open] .ftp-secret-toggle-label .when-closed{display:none}
.ftp-secret-native[open] .ftp-secret-toggle-label .when-open{display:inline}
.ftp-password-row .credential-buttons{align-items:center}

/* Google Maps treatment: clearer brand colors on both provider and guest views. */
.google-brand-mark svg,.google-brand-mark svg path,.google-brand-mark svg circle{stroke:none!important;stroke-width:0!important}
.google-brand-mark .brand-map-icon{width:100%!important;height:100%!important;display:block!important;filter:none!important}
.venue-map-button.google-maps-provider-card,.event-location-direct.google-maps-action{position:relative;overflow:hidden;border:1px solid rgba(66,133,244,.18)!important;background:linear-gradient(135deg,rgba(255,255,255,.99) 0%,rgba(246,250,255,.99) 52%,rgba(255,251,244,.98) 100%)!important;box-shadow:0 12px 30px rgba(39,76,125,.07)!important;color:var(--v19-navy,var(--primary))!important}
.venue-map-button.google-maps-provider-card:before,.event-location-direct.google-maps-action:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#4285F4 0 25%,#34A853 25% 50%,#FBBC04 50% 75%,#EA4335 75% 100%)}
.venue-map-button.google-maps-provider-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:13px!important;min-height:78px!important;padding:14px 16px!important;border-radius:20px!important;text-decoration:none!important}
.venue-map-button.google-maps-provider-card:hover,.event-location-direct.google-maps-action:hover{transform:translateY(-1px);border-color:rgba(66,133,244,.28)!important;box-shadow:0 17px 36px rgba(39,76,125,.11)!important}
.venue-map-icon.google-brand-mark,.event-location-direct-icon.google-brand-mark{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;flex:0 0 46px!important;padding:7px!important;border-radius:15px!important;background:#fff!important;border:1px solid rgba(60,64,67,.09)!important;box-shadow:0 8px 18px rgba(60,64,67,.10)!important;color:inherit!important}
.venue-map-icon.google-brand-mark svg,.event-location-direct-icon.google-brand-mark svg{width:31px!important;height:31px!important}
.venue-map-copy,.event-location-direct-copy{min-width:0!important;display:grid!important;gap:2px!important;flex:1!important}
.venue-map-copy small,.event-location-direct-copy small{font-size:8px!important;line-height:1.25!important;font-weight:900!important;color:#5f6368!important;opacity:1!important;letter-spacing:.01em}
.venue-map-copy b,.event-location-direct-copy b{font-size:12.5px!important;line-height:1.4!important;font-weight:950!important;color:var(--v19-navy,var(--primary))!important;white-space:normal!important;overflow-wrap:anywhere!important}
.venue-map-copy em{font-size:8.5px!important;line-height:1.45!important;font-style:normal!important;color:#7b8190!important}
.venue-map-cta,.event-location-direct-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:0 0 auto!important;min-width:78px!important;margin:0!important;padding:9px 11px!important;border:0!important;border-radius:12px!important;background:rgba(66,133,244,.09)!important;color:#1967d2!important;font-size:8.5px!important;font-weight:950!important;white-space:nowrap!important}
.venue-map-cta svg,.event-location-direct-cta svg{width:15px!important;height:15px!important}
.event-location-direct.google-maps-action{min-height:76px!important;padding:13px 15px!important;border-radius:20px!important}
.event-location-direct.google-maps-action .event-location-direct-main{gap:12px!important;min-width:0!important;flex:1!important}
.venue-map-button.google-maps-provider-card.disabled-map,.event-location-direct.google-maps-action.is-disabled{opacity:.68;cursor:default;box-shadow:none!important}
.venue-map-button.google-maps-provider-card.disabled-map:hover,.event-location-direct.google-maps-action.is-disabled:hover{transform:none}
.venue-map-button.google-maps-provider-card.disabled-map .venue-map-cta,.event-location-direct.google-maps-action.is-disabled .event-location-direct-cta{background:#f1f3f4!important;color:#8a9098!important}

@media(max-width:650px){
  .ftp-password-row .ftp-secret-native summary{padding-inline:5px 6px;gap:5px}.ftp-secret-toggle-label{min-width:42px;padding:6px 7px}
  .venue-map-button.google-maps-provider-card,.event-location-direct.google-maps-action{min-height:70px!important;padding:12px 13px!important;gap:10px!important}
  .venue-map-icon.google-brand-mark,.event-location-direct-icon.google-brand-mark{width:42px!important;height:42px!important;flex-basis:42px!important;padding:6px!important;border-radius:14px!important}
  .venue-map-icon.google-brand-mark svg,.event-location-direct-icon.google-brand-mark svg{width:29px!important;height:29px!important}
  .venue-map-copy b,.event-location-direct-copy b{font-size:11.5px!important}.venue-map-copy em{font-size:7.8px!important}
  .venue-map-cta,.event-location-direct-cta{min-width:auto!important;padding:8px 9px!important;font-size:8px!important}
}


/* ONS Moments 3.0.27: event location controls + fail-safe FTPS password reveal */
.ftp-password-native-field{display:flex;align-items:center;gap:6px;min-width:0;flex:1}
.ftp-password-input{width:92px;min-width:72px;max-width:110px;height:34px;padding:5px 9px;border:1px solid rgba(59,73,124,.10);border-radius:11px;background:#fbfcff;color:#25233a;font:950 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.17em;text-align:center;outline:none;-webkit-text-security:auto}
.ftp-password-input[type="password"]{letter-spacing:.24em}
.ftp-password-toggle{min-width:48px!important;padding:7px 9px!important;border-radius:9px!important;background:#f1eef8!important;color:var(--primary)!important;font-size:8px!important;font-weight:950!important}
.event-location-settings{position:relative;overflow:hidden;border:1px solid rgba(66,133,244,.16)!important;background:linear-gradient(135deg,#fff 0%,#f7fbff 58%,#fffaf2 100%)!important}
.event-location-settings:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#4285F4 0 25%,#34A853 25% 50%,#FBBC04 50% 75%,#EA4335 75% 100%)}
.event-location-settings-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:14px;padding-top:3px}
.google-maps-setting-icon,.google-maps-summary-icon{display:grid;place-items:center;flex:0 0 auto;background:#fff;border:1px solid rgba(60,64,67,.09);box-shadow:0 8px 18px rgba(60,64,67,.08)}
.google-maps-setting-icon{width:48px;height:48px;border-radius:15px;padding:7px}
.google-maps-setting-icon svg{width:27px;height:39px;display:block}
.google-maps-summary-icon{width:32px!important;height:32px!important;border-radius:10px!important;padding:5px!important}
.google-maps-summary-icon svg{width:18px!important;height:26px!important;display:block}
.event-location-settings-head>div{display:grid;gap:3px;min-width:0}
.event-location-settings-head small{font-size:8px;font-weight:900;color:#5f6368}
.event-location-settings-head h3{margin:0;font-size:16px;color:var(--primary)}
.event-location-settings-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}
.event-location-settings form{display:grid;gap:10px}
.event-location-settings form label{display:grid;gap:6px;font-size:9px;font-weight:900;color:var(--primary)}
.event-location-settings form input{width:100%}
.event-location-settings-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.event-location-settings-actions .secondary-btn svg{width:16px;height:23px;flex:0 0 auto}
.event-location-settings-actions .danger-button{margin-inline-start:auto}
.event-location-accordion>summary{border-inline-start:3px solid #4285F4}
.event-location-direct-icon.google-brand-mark svg,.venue-map-icon.google-brand-mark svg{width:22px!important;height:32px!important}
@media(max-width:720px){.event-location-settings-head{gap:10px}.google-maps-setting-icon{width:44px;height:44px}.event-location-settings-actions{align-items:stretch}.event-location-settings-actions>*{flex:1 1 auto}.event-location-settings-actions .danger-button{margin-inline-start:0}}

/* ONS Moments 3.0.29 — durable Fast Ingest status */
.camera-ingest-health{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.camera-ingest-health>div:first-child small,.camera-ingest-health>div:first-child b{display:block}.camera-ingest-health>div:first-child small{color:var(--muted);font-size:.72rem;font-weight:800}.camera-ingest-health>div:first-child b{margin-top:3px;font-size:.94rem}.camera-ingest-health.ok{border-color:rgba(25,157,92,.20);background:rgba(243,252,247,.88)}.camera-ingest-health.busy{border-color:rgba(54,111,225,.20);background:rgba(245,249,255,.92)}.camera-ingest-health.warn{border-color:rgba(218,142,25,.26);background:rgba(255,250,239,.94)}
.camera-ingest-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(62px,1fr));gap:7px}.camera-ingest-metrics span{display:grid;gap:1px;min-width:64px;padding:8px 9px;border:1px solid rgba(64,72,110,.08);border-radius:12px;background:rgba(255,255,255,.72);text-align:center}.camera-ingest-metrics b{font-size:.98rem!important;line-height:1.1}.camera-ingest-metrics small{font-size:.61rem!important;color:var(--muted)!important;white-space:nowrap}
@media(max-width:760px){.camera-ingest-health{grid-template-columns:1fr}.camera-ingest-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.camera-ingest-metrics span{min-width:0}.camera-ingest-metrics small{white-space:normal}}

/* ONS Moments 3.0.30 — consent-first face capture + camera transfer telemetry */
.interactive-face-camera .selfie-ready-overlay{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:10;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:150px;min-height:44px;padding:10px 15px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(13,31,59,.88);color:#fff;font-weight:950;font-size:.78rem;box-shadow:0 12px 30px rgba(0,0,0,.3);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);transition:opacity .16s ease,filter .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease;will-change:transform}.interactive-face-camera .selfie-ready-overlay[hidden]{display:none!important}.interactive-face-camera .selfie-ready-overlay .ons-icon{width:18px;height:18px}.interactive-face-camera .selfie-ready-overlay:disabled{opacity:.58;filter:saturate(.7);cursor:not-allowed}.interactive-face-camera .selfie-ready-overlay.is-face-ready:not(:disabled){background:rgba(15,126,82,.94);border-color:rgba(112,245,191,.8);box-shadow:0 0 0 6px rgba(49,196,141,.12),0 14px 34px rgba(0,0,0,.32);animation:onsReadyButtonBounce .9s cubic-bezier(.34,1.56,.64,1) infinite}.interactive-face-camera .consent-first-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.interactive-face-camera .consent-first-actions [data-ready-capture-hint]{align-self:center;color:#b7c9e6;font-size:.68rem;line-height:1.55;text-align:center}.language-english .interactive-face-camera .consent-first-actions [data-ready-capture-hint]{font-size:.65rem}@keyframes onsReadyButtonBounce{0%,100%{transform:translate(-50%,-50%) translateY(0) scale(1)}42%{transform:translate(-50%,-50%) translateY(-9px) scale(1.045)}68%{transform:translate(-50%,-50%) translateY(2px) scale(.995)}}
.camera-test-slot figcaption em{display:block;margin-top:2px;color:#95f3cd;font-style:normal;font-size:.49rem;font-weight:900;white-space:nowrap}.camera-test-speed-summary{display:inline-flex!important;flex-direction:column;align-items:flex-end;gap:1px;padding:6px 9px;border:1px solid rgba(25,157,92,.18);border-radius:12px;background:rgba(235,251,243,.72);white-space:nowrap}.camera-test-speed-summary b{margin:0!important;color:#138054;font-size:.78rem}.camera-test-speed-summary small{font-size:.58rem!important}.language-english .camera-test-speed-summary{align-items:flex-start}
@media(max-width:720px){.interactive-face-camera .selfie-ready-overlay{min-width:138px;min-height:41px;padding:8px 12px;font-size:.7rem}.camera-test-speed-summary{margin-top:7px;align-items:flex-start}.camera-test-slot figcaption em{font-size:.43rem}}

/* =====================================================================
   ONS Moments 3.0.32 — provider sidebar compositor stability
   The provider workspace updates camera/photo status frequently. Keep the
   fixed desktop sidebar on its own opaque layer so Chrome does not repaint a
   blurred backdrop whenever live content behind it changes.
   ===================================================================== */
@media(min-width:1001px){
  html[dir] body.workspace-body .provider-nav{
    background:#fff!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    transform:translate3d(0,0,0)!important;
    -webkit-transform:translate3d(0,0,0)!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    isolation:isolate!important;
    transition:none!important;
  }
  html[dir] body.workspace-body .provider-nav .nav-scroll,
  html[dir] body.workspace-body .provider-nav .nav-identity,
  html[dir] body.workspace-body .provider-nav .nav-foot{
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }
}

/* ONS Moments 3.0.33 — branded route/error fallback */
.friendly-error-page{max-width:680px;margin:clamp(42px,8vh,88px) auto!important;padding:clamp(28px,5vw,46px)!important;border:1px solid rgba(49,35,94,.10);border-radius:32px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(247,249,255,.98));box-shadow:0 28px 74px rgba(37,43,78,.10);text-align:center}
.friendly-error-mark{width:74px;height:74px;margin:0 auto 18px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(96,83,206,.10),rgba(20,160,222,.12));color:var(--primary);box-shadow:inset 0 0 0 1px rgba(49,35,94,.06)}
.friendly-error-mark svg{width:31px;height:31px}
.friendly-error-page>small{display:block;margin-bottom:8px;color:var(--secondary);font-size:11px;font-weight:900;letter-spacing:.08em}
.friendly-error-page>h1{margin:0;font-size:clamp(26px,4vw,38px);line-height:1.25}
.friendly-error-page>p{max-width:520px;margin:12px auto 0;color:var(--muted);font-size:15px;line-height:1.9}
.friendly-error-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}
.friendly-error-actions .primary-btn,.friendly-error-actions .secondary-btn{min-width:132px;justify-content:center}
@media(max-width:640px){.friendly-error-page{margin:24px 12px!important;border-radius:26px}.friendly-error-actions{display:grid;grid-template-columns:1fr}.friendly-error-actions .primary-btn,.friendly-error-actions .secondary-btn{width:100%}}

/* ONS Moments 3.0.34 — admin aggregate metrics may be shown without media access. */
.stats.five{grid-template-columns:repeat(5,minmax(0,1fr))!important}
@media(max-width:900px){.stats.five{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* =====================================================================
   ONS Moments 3.0.36 — consent-before-camera selfie flow
   ===================================================================== */
.selfie-ready-dialog{width:min(calc(100vw - 28px),430px);padding:0!important;border:0!important;border-radius:28px!important;background:transparent!important;color:#17233c!important;overflow:visible!important;box-shadow:0 24px 80px rgba(13,32,68,.25)!important}
.selfie-ready-dialog::backdrop{background:rgba(5,14,32,.62);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.selfie-ready-prompt{position:relative;display:grid;justify-items:center;gap:10px;padding:30px 26px 24px;border:1px solid rgba(40,91,165,.11);border-radius:28px;background:linear-gradient(180deg,#fff,#f7f9fe);box-shadow:0 24px 80px rgba(13,32,68,.22);text-align:center}
.selfie-ready-prompt .dialog-close{position:absolute!important;top:12px!important;inset-inline-end:12px!important;width:36px!important;height:36px!important;min-height:36px!important;border:1px solid rgba(45,73,119,.1)!important;background:#eef3fb!important;color:#40506d!important}
.selfie-ready-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#0b8ed6,#6554db);color:#fff;box-shadow:0 12px 28px rgba(64,93,190,.25)}
.selfie-ready-icon .ons-icon{width:28px;height:28px}
.selfie-ready-prompt>small{margin-top:2px;color:#6b7a94;font-size:.68rem;font-weight:900;letter-spacing:.04em}
.selfie-ready-prompt h2{margin:0;max-width:330px;color:#17233c;font-size:1.22rem;line-height:1.45}
.selfie-ready-prompt p{margin:0;max-width:350px;color:#63718a;font-size:.82rem;line-height:1.75}
.selfie-ready-actions{width:100%;display:grid;grid-template-columns:1.2fr .8fr;gap:9px;margin-top:7px}
.selfie-ready-actions button{min-height:47px!important}
.interactive-face-camera .selfie-ready-overlay{display:none!important}
.interactive-face-camera .face-auto-countdown{inset:16px auto auto 50%!important;transform:translateX(-50%)!important;width:48px!important;height:48px!important;border-width:2px!important;border-color:rgba(255,255,255,.92)!important;background:rgba(4,49,35,.84)!important;font-size:22px!important;line-height:1!important;box-shadow:0 8px 22px rgba(0,0,0,.25)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9!important}
@media(max-width:560px){.selfie-ready-dialog{width:calc(100vw - 18px)}.selfie-ready-prompt{padding:28px 18px 20px}.selfie-ready-prompt h2{font-size:1.08rem}.selfie-ready-prompt p{font-size:.76rem}.selfie-ready-actions{grid-template-columns:1fr}.interactive-face-camera .face-auto-countdown{top:13px!important;width:44px!important;height:44px!important;font-size:20px!important}}
/* =====================================================================
   ONS Moments 3.0.37 — visible, face-safe selfie countdown
   ===================================================================== */
.interactive-face-camera .selfie-video-frame .face-auto-countdown{
  position:absolute!important;
  inset:10px auto auto 50%!important;
  transform:translateX(-50%) translateZ(0)!important;
  width:58px!important;height:58px!important;
  display:grid!important;place-items:center!important;
  border:2px solid rgba(255,255,255,.96)!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,rgba(8,28,59,.9),rgba(13,97,83,.88))!important;
  color:#fff!important;
  font-size:30px!important;font-weight:950!important;line-height:1!important;
  text-shadow:0 2px 9px rgba(0,0,0,.28)!important;
  box-shadow:0 0 0 5px rgba(255,255,255,.10),0 12px 30px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
  z-index:10!important;
  pointer-events:none!important;
  isolation:isolate;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown[hidden]{display:none!important}
.interactive-face-camera .selfie-video-frame .face-auto-countdown::after{
  content:"";position:absolute;inset:-6px;border-radius:50%;
  border:3px solid transparent;border-top-color:#64efc1;border-right-color:rgba(255,255,255,.96);
  opacity:.96;filter:drop-shadow(0 0 5px rgba(100,239,193,.42));
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking{animation:onsSelfieCountdownPop .34s cubic-bezier(.2,.85,.25,1.25) both}
.interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking::after{animation:onsSelfieCountdownRing 1s linear both}
.interactive-face-camera [data-face-scan-frame].is-counting .face-guide{border-color:#63e8b9!important;box-shadow:0 0 0 999px rgba(4,12,29,.26),0 0 34px rgba(62,214,158,.48)!important}
@keyframes onsSelfieCountdownPop{0%{transform:translateX(-50%) scale(.82);opacity:.35}55%{transform:translateX(-50%) scale(1.08);opacity:1}100%{transform:translateX(-50%) scale(1);opacity:1}}
@keyframes onsSelfieCountdownRing{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@media(max-width:560px){
  .interactive-face-camera .selfie-video-frame .face-auto-countdown{top:8px!important;width:54px!important;height:54px!important;font-size:28px!important;box-shadow:0 0 0 4px rgba(255,255,255,.10),0 10px 25px rgba(0,0,0,.28)!important}
  .interactive-face-camera .selfie-video-frame .face-auto-countdown::after{inset:-5px;border-width:3px}
}
@media(prefers-reduced-motion:reduce){
  .interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking,.interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking::after{animation:none!important}
}


/* =====================================================================
   ONS Moments 3.0.38 — eye-line countdown: visible at face centre without
   hiding facial features. The moving ring stays, while the solid badge is gone.
   ===================================================================== */
.interactive-face-camera .selfie-video-frame .face-auto-countdown{
  inset:50% auto auto 50%!important;
  transform:translate(-50%,-50%) translateZ(0)!important;
  width:92px!important;height:92px!important;
  border:0!important;
  background:transparent!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:46px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:-.04em!important;
  text-shadow:0 2px 4px rgba(0,0,0,.92),0 0 12px rgba(0,0,0,.72),0 0 2px rgba(0,0,0,1)!important;
  z-index:12!important;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown::before{
  content:"";position:absolute;inset:12px;border-radius:50%;
  background:radial-gradient(circle,rgba(7,18,38,.16) 0%,rgba(7,18,38,.08) 45%,rgba(7,18,38,0) 72%);
  pointer-events:none;z-index:-1;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown::after{
  content:"";position:absolute;inset:0;border-radius:50%;
  border:4px solid rgba(255,255,255,.22)!important;
  border-top-color:#65efc1!important;
  border-right-color:rgba(255,255,255,.98)!important;
  opacity:1!important;
  filter:drop-shadow(0 0 5px rgba(71,229,178,.5)) drop-shadow(0 2px 4px rgba(0,0,0,.42))!important;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking{
  animation:onsSelfieCountdownCentrePop .32s cubic-bezier(.2,.88,.25,1.22) both!important;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking::after{
  animation:onsSelfieCountdownRing 1s linear both!important;
}
@keyframes onsSelfieCountdownCentrePop{
  0%{transform:translate(-50%,-50%) scale(.78);opacity:.35}
  55%{transform:translate(-50%,-50%) scale(1.08);opacity:1}
  100%{transform:translate(-50%,-50%) scale(1);opacity:1}
}
@media(max-width:560px){
  .interactive-face-camera .selfie-video-frame .face-auto-countdown{
    top:50%!important;width:86px!important;height:86px!important;font-size:43px!important;
  }
  .interactive-face-camera .selfie-video-frame .face-auto-countdown::after{inset:0!important;border-width:4px!important}
}
@media(prefers-reduced-motion:reduce){
  .interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking,
  .interactive-face-camera .selfie-video-frame .face-auto-countdown.is-ticking::after{animation:none!important}
}

/* ONS Moments 3.0.38 final selfie refinement — the countdown stays exactly in the
   user's eye-line, but the digit is outline-only so the face remains visible. */
.interactive-face-camera .selfie-video-frame .face-auto-countdown{
  width:126px!important;height:126px!important;
  font-size:78px!important;font-weight:950!important;
  color:rgba(255,255,255,.14)!important;
  -webkit-text-fill-color:rgba(255,255,255,.08)!important;
  -webkit-text-stroke:3px rgba(255,255,255,.98)!important;
  paint-order:stroke fill!important;
  text-shadow:0 2px 7px rgba(0,0,0,.78),0 0 18px rgba(0,0,0,.42)!important;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown::before{
  inset:24px!important;
  background:radial-gradient(circle,rgba(5,15,34,.08),rgba(5,15,34,0) 74%)!important;
}
.interactive-face-camera .selfie-video-frame .face-auto-countdown::after{
  inset:0!important;border-width:4px!important;
  border-color:rgba(255,255,255,.18)!important;
  border-top-color:#63efc0!important;
  border-right-color:rgba(255,255,255,.96)!important;
}
@media(max-width:560px){
  .interactive-face-camera .selfie-video-frame .face-auto-countdown{
    width:116px!important;height:116px!important;font-size:70px!important;
    -webkit-text-stroke-width:2.5px!important;
  }
}

/* ONS Moments 3.0.40 — camera transfer diagnostics, review workflow and split photo manager */
.camera-device-row .camera-device-last{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:116px}
.camera-last-speed{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border-radius:999px;background:rgba(38,180,134,.12);border:1px solid rgba(38,180,134,.2);font-size:11px;white-space:nowrap}
.camera-last-speed.muted{background:rgba(120,130,150,.08);border-color:rgba(120,130,150,.15);font-weight:700}
.camera-review-panel{margin-top:14px;padding:15px;border:1px solid rgba(219,145,35,.25);border-radius:18px;background:rgba(255,248,231,.72)}
.camera-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}
.camera-review-head>div{display:grid;gap:2px}.camera-review-head>span{min-width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:#fff;border:1px solid rgba(219,145,35,.2)}
.camera-review-panel>p{margin:0 0 12px;font-size:12px;line-height:1.8;color:var(--muted)}
.camera-review-list{display:grid;gap:9px}.camera-review-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:14px;background:var(--surface,#fff);border:1px solid var(--line,#e8ebf2)}
.camera-review-list article>div:first-child{display:grid;gap:3px;min-width:0}.camera-review-list article b,.camera-review-list article small{overflow-wrap:anywhere}.camera-review-list article em{font-size:10px;color:var(--muted);font-style:normal}
.camera-review-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}.camera-review-actions form{margin:0}.camera-review-actions button{white-space:nowrap}
.camera-test-end-form{margin:0}.camera-test-end-form button{white-space:nowrap}
.camera-quota-note{margin:9px 0 0;padding:8px 10px;border-radius:12px;background:rgba(124,77,255,.07);font-size:11px;line-height:1.6}
.upload-quota-summary{display:inline-flex;align-items:center;gap:8px;margin:8px 0;padding:7px 10px;border-radius:12px;background:rgba(54,94,215,.08);border:1px solid rgba(54,94,215,.12)}
.upload-quota-summary.edited{background:rgba(133,80,193,.08);border-color:rgba(133,80,193,.12)}.upload-quota-summary b{font-size:13px}.upload-quota-summary small{font-size:10px;color:var(--muted)}
.provider-photo-type-section{margin-top:16px;padding:14px;border:1px solid var(--line,#e8ebf2);border-radius:20px;background:rgba(255,255,255,.55)}
.provider-photo-type-section:first-child{margin-top:0}.provider-photo-type-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.provider-photo-type-head>div{display:grid;gap:3px}.provider-photo-type-head h3,.provider-photo-type-head p{margin:0}.provider-photo-type-head p{font-size:11px;color:var(--muted);line-height:1.6}.provider-photo-type-head>span{min-width:34px;height:34px;border-radius:12px;display:grid;place-items:center;font-weight:900;background:rgba(54,94,215,.08)}
.photo-cost-badge{display:block;margin:4px 7px 8px;font-style:normal;font-size:9px;line-height:1.4;padding:4px 6px;border-radius:8px;text-align:center}.photo-cost-badge.derived{background:rgba(38,180,134,.11);color:#15765a}.photo-cost-badge.aws{background:rgba(219,145,35,.11);color:#986412}
@media(max-width:720px){.camera-device-row{align-items:flex-start}.camera-device-row .camera-device-last{min-width:0;align-items:flex-start}.camera-review-list article{align-items:flex-start;flex-direction:column}.camera-review-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.camera-test-result-head{align-items:flex-start;flex-wrap:wrap}.provider-photo-type-section{padding:11px}.provider-photo-manager-toolbar{gap:8px;flex-wrap:wrap}}

/* v3.0.41 collapsible photo manager */
.provider-photo-type-section{overflow:hidden}
.provider-photo-type-section>summary.provider-photo-type-head{cursor:pointer;list-style:none;margin-bottom:0;padding:2px;align-items:center}
.provider-photo-type-section>summary.provider-photo-type-head::-webkit-details-marker{display:none}
.provider-photo-type-section>summary.provider-photo-type-head:after{content:'⌄';font-size:18px;font-weight:900;color:var(--primary);margin-inline-start:8px;transition:transform .18s ease}
.provider-photo-type-section[open]>summary.provider-photo-type-head:after{transform:rotate(180deg)}
.provider-photo-type-body{padding-top:14px}
.camera-avg-speed{font-size:9px!important;color:var(--muted)!important;font-weight:800;white-space:nowrap}

/* v3.0.41 non-blocking resumable uploader */
.inline-upload-progress{grid-column:1/-1;display:grid;gap:8px;padding:11px 12px;border:1px solid rgba(54,94,215,.14);border-radius:14px;background:rgba(54,94,215,.045)}
.inline-upload-progress[hidden]{display:none!important}.inline-upload-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.inline-upload-progress-head b{font-size:11px}.inline-upload-progress-head span,.inline-upload-progress>small{font-size:10px;color:var(--muted);font-weight:750}.inline-upload-progress progress{width:100%;height:9px;accent-color:var(--primary)}.inline-upload-progress [data-upload-resume]{justify-self:start}

/* v3.0.41 camera inactivity alerts */
.camera-alert-settings{margin-top:12px;padding:14px;border:1px solid var(--line,#e5e9f1);border-radius:17px;background:rgba(16,185,129,.035);display:grid;gap:12px}.camera-alert-settings>div{display:grid;gap:4px}.camera-alert-settings h3,.camera-alert-settings p{margin:0}.camera-alert-settings>div>b{font-size:14px}.camera-alert-settings>div>p{font-size:10px;color:var(--muted);line-height:1.6}.camera-alert-settings form{display:grid;grid-template-columns:1.3fr .8fr auto;gap:9px;align-items:end}.camera-alert-settings label{display:grid;gap:5px;font-size:10px;font-weight:850}.camera-alert-settings input,.camera-alert-settings select{min-height:42px}
@media(max-width:760px){.camera-alert-settings form{grid-template-columns:1fr}}

/* v3.0.41 admin face usage accounting */
.admin-face-usage-card{margin-top:12px;padding:18px;display:grid;gap:14px}.admin-face-usage-card h3,.admin-face-usage-card p{margin:0}.admin-face-usage-card p{font-size:10px;color:var(--muted);line-height:1.6}.admin-face-usage-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.admin-face-usage-metrics>span{padding:12px;border:1px solid var(--line);border-radius:14px;display:grid;gap:3px}.admin-face-usage-metrics b{font-size:18px}.admin-face-usage-metrics small{font-size:9px;color:var(--muted)}.admin-face-operation-list{display:flex;gap:8px;flex-wrap:wrap}.admin-face-operation-list span{padding:8px 10px;border-radius:12px;background:#f5f7fb;display:flex;gap:8px;font-size:9px}.admin-face-operation-list em{font-style:normal;color:var(--muted)}
@media(max-width:720px){.admin-face-usage-metrics{grid-template-columns:1fr 1fr}}

/* v3.0.41 guest action order + provider action hover */
.account-choice-actions{direction:rtl!important}.account-choice-actions a[href*="/account/login"]{order:0}.account-choice-actions a[href*="/account/register"]{order:1}
.provider-dashboard-head .primary-btn:hover,.app-nav .nav-main-action:hover{background:linear-gradient(135deg,var(--primary),var(--secondary))!important;color:#fff!important;filter:none!important}.provider-dashboard-head .primary-btn:hover svg,.app-nav .nav-main-action:hover svg{color:#fff!important}
/* Hotfix76: the ONS Moments app icon is the logo in page headers; it carries its own rounded corners. */
img[src^="/brand-icon.png"]{padding:0!important;background:transparent!important;border:0!important;object-fit:cover!important;border-radius:22%!important}
.webapp-login img[src^="/brand-icon.png"],.auth-card img[src^="/brand-icon.png"]{width:76px!important;height:76px!important;max-height:none!important;margin-inline:auto!important}

.photo{position:relative}.guest-photo-brand{display:none!important}.event-face-dropdown.featured-face-choice:not([open]) .event-face-dropdown-body{display:none}.event-face-dropdown.featured-face-choice summary{cursor:pointer}.event-face-dropdown.featured-face-choice .face-featured-badge{display:none}.simple-face-flow .face-flow-main-card>small{display:none}.simple-face-flow .face-flow-consent-card{padding:18px}.simple-face-flow .face-flow-consent-card .face-wizard-actions,.simple-face-flow [data-face-consent-hint]{display:none!important}.face-auto-consent-note{display:block;margin-top:9px;color:var(--muted);font-size:11px}.guest-photo-grid{min-height:120px}.guest-event-cover-png{margin:14px 0 18px;border-radius:22px;overflow:hidden;background:#fff;border:1px solid rgba(30,38,65,.08);box-shadow:0 10px 28px rgba(24,29,62,.08)}.guest-event-cover-png img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#fff}.photo-viewer-media-frame{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:fit-content!important;height:fit-content!important;max-width:100%!important;max-height:64dvh!important;line-height:0!important}.photo-viewer-media-frame>#viewerimg{display:block!important}.photo-viewer-watermark{position:absolute!important;left:8px!important;bottom:8px!important;z-index:8!important;width:30px!important;height:30px!important;max-width:none!important;max-height:none!important;object-fit:contain!important;background:#fff!important;padding:4px!important;border-radius:8px!important;box-shadow:0 4px 12px rgba(0,0,0,.18)!important;pointer-events:none!important;box-sizing:border-box!important}.photo-viewer-watermark[hidden]{display:none!important}@media(max-width:600px){.guest-event-cover-png{border-radius:18px;margin:10px 0 15px}.photo-viewer-watermark{left:7px!important;bottom:7px!important;width:28px!important;height:28px!important;padding:4px!important;border-radius:8px!important}}

.is-preparing-native-share{position:relative!important;overflow:hidden!important;cursor:progress!important;opacity:1!important;filter:none!important}
.is-preparing-native-share::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.38) 50%,transparent 75%);background-size:240% 100%;animation:ons-save-shimmer 1.2s linear infinite}
.is-preparing-native-share.is-determinate::before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;width:calc(var(--ons-save-progress,0) * 100%);background:rgba(255,255,255,.24);transition:width .35s ease;pointer-events:none}
.is-preparing-native-share>*{position:relative;z-index:1}
.ons-save-spinner{display:inline-block;flex:0 0 auto;width:1.05em;height:1.05em;margin-inline-end:.45em;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:ons-save-spin .75s linear infinite;vertical-align:-.18em}
.is-save-ready{animation:ons-save-ready .9s ease}
@keyframes ons-save-shimmer{from{background-position:130% 0}to{background-position:-130% 0}}
@keyframes ons-save-spin{to{transform:rotate(360deg)}}
@keyframes ons-save-ready{0%{transform:scale(1)}35%{transform:scale(1.035);box-shadow:0 0 0 6px rgba(34,197,94,.28)}100%{transform:scale(1)}}
.photo img,.ons-photo-thumb{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.ons-gallery-more{display:flex;justify-content:center;padding:16px 0 26px}
.ons-gallery-more[hidden]{display:none!important}
.ons-gallery-more-button{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(49,35,94,.16);background:#fff;color:#31235e;border-radius:999px;padding:12px 22px;font:inherit;font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 8px 22px rgba(49,35,94,.10)}
.ons-gallery-more-spinner{display:none;width:16px;height:16px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:ons-save-spin .75s linear infinite}
.ons-gallery-more.is-loading .ons-gallery-more-spinner{display:inline-block}
.ons-gallery-more.is-error .ons-gallery-more-button{border-color:rgba(180,35,24,.35);color:#b42318}
@media (prefers-reduced-motion:reduce){.is-preparing-native-share::after,.ons-save-spinner,.is-save-ready,.ons-gallery-more-spinner{animation:none}}
[data-selfie-selected][hidden],.face-flow-clean .face-wizard-step[hidden]{display:none!important}
.face-flow-clean .face-flow-form{display:grid;gap:12px}
.ons-face-steps{display:flex;align-items:center;gap:10px;margin:2px 4px 0;padding:0;list-style:none}
.ons-face-steps li{display:flex;align-items:center;margin:0;padding:0}
.ons-face-steps li.ons-face-steps-line{flex:1;height:2px;border-radius:2px;background:#e6e4f0}
.ons-face-steps button{display:inline-flex!important;align-items:center!important;gap:7px!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important;min-height:0!important;width:auto!important;margin:0!important;font:inherit!important;font-size:13px!important;font-weight:800!important;color:#8a87a3!important;transform:none!important}
.ons-face-steps button i{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#efeef6;color:#6c6888;font-style:normal;font-size:12.5px;font-weight:900}
.ons-face-steps button.is-active{color:#31235e!important}
.ons-face-steps button.is-active i{background:linear-gradient(135deg,var(--primary,#31235e),var(--secondary,#0b8ed6));color:#fff;box-shadow:0 4px 10px rgba(49,35,94,.25)}
.ons-face-steps button.is-done{color:#127a52!important}
.ons-face-steps button.is-done i{background:#e3f6ec;color:#127a52}
.ons-face-steps button:disabled{opacity:1!important;cursor:default!important}
.face-flow-clean .clean-face-capture-card:not([hidden]),.face-flow-clean .face-flow-consent-card:not([hidden]){display:grid!important;gap:10px!important;background:#fff!important;border:1px solid #ecebf4!important;border-radius:20px!important;padding:14px!important;box-shadow:0 6px 18px rgba(49,35,94,.06)!important}
.face-flow-clean .selfie-capture-card{display:grid!important;gap:10px!important}
.face-flow-clean .ons-selfie-launch-button{width:100%!important;min-height:66px!important;display:grid!important;grid-template-columns:46px 1fr 16px!important;align-items:center!important;gap:12px!important;padding:10px 14px!important;border-radius:16px!important;text-align:start!important;margin:0!important}
.face-flow-clean .ons-selfie-launch-button>span:first-child{width:46px!important;height:46px!important;border-radius:14px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.18)!important;border:0!important}
.face-flow-clean .ons-selfie-launch-button b{font-size:16px!important}
.face-flow-clean .ons-selfie-launch-button small{font-size:12px!important;opacity:.85!important}
[dir=rtl] .face-flow-clean .ons-selfie-launch-button>span:last-child{transform:scaleX(-1)}
.face-flow-clean .selfie-capture-card:has([data-selfie-selected]:not([hidden])) .ons-selfie-launch-button{display:none!important}
.ons-face-privacy{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;color:#6c6888;font-size:12px;line-height:1.5;text-align:center}
.ons-face-privacy svg{width:14px;height:14px;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.face-flow-clean .face-reference-review:not([hidden]){display:grid!important;grid-template-columns:52px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:10px 12px!important;border:1px solid #cdeedd!important;border-radius:16px!important;background:#f3fbf7!important}
.face-flow-clean .face-reference-review img{width:52px!important;height:52px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid #fff!important;box-shadow:0 0 0 2px #2fb67a!important}
.face-flow-clean .face-reference-review span{display:grid!important;gap:2px!important;min-width:0}
.face-flow-clean .face-reference-review b{font-size:14px!important;color:#127a52!important}
.face-flow-clean .face-reference-review small{font-size:12px!important;color:#5d6b64!important}
.face-flow-clean .face-retake-compact{background:#fff!important;border:1px solid #d7d4e6!important;color:#31235e!important;border-radius:999px!important;padding:8px 14px!important;font-size:12.5px!important;min-height:0!important;box-shadow:none!important;margin:0!important}
.face-flow-clean .face-flow-consent-title{display:flex!important;align-items:center!important;gap:10px!important}
.face-flow-clean .face-flow-consent-title>span{width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#e3f6ec!important;color:#127a52!important}
.face-flow-clean .face-flow-consent-title b{font-size:15px!important;color:#1f1b33!important}
.face-flow-clean .face-flow-consent-title small{font-size:12px!important;color:#6c6888!important}
.face-flow-clean .face-flow-consent{display:grid!important;grid-template-columns:26px 1fr!important;gap:10px!important;align-items:start!important;padding:12px!important;border:1.5px solid #d9d6ea!important;border-radius:16px!important;background:#faf9fe!important;cursor:pointer}
.face-flow-clean .face-flow-consent input{width:22px!important;height:22px!important;margin:2px 0 0!important;accent-color:var(--primary,#31235e)}
.face-flow-clean .face-flow-consent strong{font-size:14px!important;line-height:1.6!important;color:#1f1b33!important}
.face-flow-clean .face-flow-consent small{font-size:12px!important;color:#6c6888!important}
.face-flow-clean .face-auto-consent-note{display:block;text-align:center;color:#6c6888;font-size:12px}
.ons-face-account{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin:0;padding:2px 0 4px;color:#6c6888;font-size:12px}
.ons-face-account b{color:#31235e}
.ons-face-account a{color:var(--secondary,#0b8ed6);font-weight:800;text-decoration:none}
