/* SendUsPics – mobile-first. Base = phones; min-width queries scale up. */
:root{--sup-blue:#005a87;--sup-blue-dk:#003f5e;--sup-text:#1d2327;--sup-muted:#50575e;--sup-line:#dcdcde;--sup-bg:#f6f7f7;--sup-ok:#00703c;--sup-err:#b32d2e;--sup-r:12px;}
.sup-dashboard,.sup-photos,.sup-event-page,.sup-upload-wrap,.sup-wrap{--sup-fs:18px;--sup-title-scale:1;--sup-btn-scale:1;--sup-t:calc(var(--sup-fs) * var(--sup-title-scale));--sup-bt:calc(var(--sup-fs) * var(--sup-btn-scale) * .9444);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:var(--sup-fs);line-height:1.5;color:var(--sup-text);box-sizing:border-box;}
.sup-dashboard *,.sup-photos *,.sup-event-page *,.sup-upload-wrap *,.sup-wrap *{box-sizing:border-box;}

/* Buttons & inputs: 44px+ tap targets. v1.2.2: sizes come from --sup-fs (text), --sup-t (titles), --sup-bt (buttons);
   set in Send Us Pics → Settings. Inputs never drop below 16px (prevents iOS zoom). */
.sup-btn,.sup-wrap button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;border:0;border-radius:10px;background:var(--sup-blue);color:#fff !important;font-size:var(--sup-bt);font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.sup-btn:hover,.sup-wrap button:hover{background:var(--sup-blue-dk);}
.sup-btn:focus-visible,.sup-wrap button:focus-visible,.sup-input:focus-visible,.sup-field:focus-visible{outline:3px solid var(--sup-blue);outline-offset:2px;}
.sup-btn[disabled]{opacity:.6;cursor:default;}
.sup-btn-secondary{background:#fff;color:var(--sup-blue) !important;border:2px solid var(--sup-blue);}
.sup-btn-secondary:hover{background:#eef6fb;}
.sup-btn-danger{background:var(--sup-err);}
.sup-btn-block{display:flex;width:100%;}
.sup-input,.sup-field,.sup-wrap input{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid #8c8f94;border-radius:10px;font-size:max(16px, var(--sup-fs));background:#fff;color:var(--sup-text);}
.sup-label{display:block;font-weight:600;margin:18px 0 6px;}
.sup-success{color:var(--sup-ok);background:#e7f6ed;padding:12px 14px;border-radius:10px;}
.sup-error{color:var(--sup-err);background:#fcf0f1;padding:12px 14px;border-radius:10px;}
.sup-muted{color:var(--sup-muted);font-size:var(--sup-fs);}
.sup-checks{display:flex;flex-direction:column;gap:4px;margin:20px 0;}
.sup-checks label,.sup-check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:var(--sup-fs);cursor:pointer;}
.sup-checks input[type=checkbox],.sup-check input[type=checkbox]{width:22px;height:22px;flex:none;}

/* Header */
/* Not sticky: the header shortcode sits inside page content, and a sticky z-index:1000 bar slid over
   form fields while scrolling, swallowing taps on phones (one cause of 'can't tap the text box'). */
.sup-topbar{position:relative;z-index:50;}
.sup-topbar a{display:inline-flex;align-items:center;min-height:44px;}

/* Auth cards */
.sup-wrap{width:100%;max-width:440px;margin:16px auto;background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.08);padding:24px 18px;text-align:center;}
.sup-wrap h2{margin:0 0 8px;font-size:calc(var(--sup-t) * 1.5);line-height:1.2;}
.sup-wrap .sub{color:var(--sup-muted);margin:0 0 16px;}
.sup-wrap input,.sup-wrap button{margin:8px 0;}
.sup-wrap button{width:100%;}

/* Dashboard (events list) – cards on phones, table from 700px */
.sup-dashboard{max-width:1100px;margin:12px auto;padding:0 12px;}
.sup-dashboard h2{font-size:calc(var(--sup-t) * 1.4);line-height:1.2;margin:8px 0 12px;}
.sup-table{width:100%;border-collapse:collapse;display:block;}
.sup-table thead{display:none;}
.sup-table tbody{display:block;}
.sup-table tr{display:block;background:#fff;border-radius:var(--sup-r);padding:14px;margin:0 0 12px;box-shadow:0 2px 8px rgba(0,0,0,.08);}
.sup-table td{display:block;padding:4px 0;border:0;}
.sup-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;}
.sup-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid var(--sup-line);border-radius:10px;color:var(--sup-blue);font-weight:600;font-size:calc(var(--sup-bt) * 0.9375);text-decoration:none;text-align:center;}
.sup-actions a:hover,.sup-actions a:focus-visible{background:#eef6fb;border-color:var(--sup-blue);}
.sup-actions a.sup-del{color:var(--sup-err);}
.sup-table a.sup-event-title{display:flex;align-items:center;width:100%;min-height:48px;padding:6px 0;font-size:calc(var(--sup-t) * 1.2222);font-weight:600;line-height:1.3;color:var(--sup-blue);text-decoration:none;border-radius:4px;word-break:break-word;}
.sup-table a.sup-event-title:hover{color:var(--sup-blue-dk);text-decoration:underline;text-underline-offset:3px;}
.sup-table a.sup-event-title:focus-visible{outline:3px solid var(--sup-blue);outline-offset:2px;text-decoration:underline;}
.sup-status{display:inline-block;font-size:calc(var(--sup-fs) * 0.75);font-weight:700;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:#f0f0f1;}
.sup-status.active{color:var(--sup-ok);background:#e7f6ed;}
.sup-status.closed{color:var(--sup-err);background:#fcf0f1;}
.sup-status.upcoming{color:#1d4f91;background:#e8f0fb;}
.sup-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--sup-muted);font-size:calc(var(--sup-fs) * 0.9375);}
.sup-warn{color:var(--sup-err);font-weight:600;}

/* Edit / add event */
.sup-photos{max-width:1100px;margin:12px auto;padding:0 12px;}
.sup-edit-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.08);padding:18px;margin-top:12px;}
.sup-row{display:flex;flex-direction:column;gap:0;}
.sup-block{background:var(--sup-bg);border:1px solid var(--sup-line);border-radius:var(--sup-r);padding:12px;margin:12px 0;}
.sup-remove{min-height:44px;padding:8px 14px;background:#fff;border:1px solid var(--sup-line);border-radius:8px;font-size:calc(var(--sup-bt) * 0.9375);cursor:pointer;}
.sup-save{width:100%;}
.sup-back{display:inline-flex;align-items:center;min-height:44px;color:var(--sup-blue);font-weight:600;text-decoration:none;}

/* Photo grids */
.sup-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.sup-grid img{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:8px;cursor:pointer;background:#eee;}
.sup-tile{position:relative;background:#fff;border-radius:10px;}
.sup-tile .sup-pick{position:absolute;top:4px;left:4px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);border-radius:8px;}
.sup-tile .sup-pick input{width:22px;height:22px;}
.sup-tile .sup-x{position:absolute;top:4px;right:4px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--sup-err);color:#fff;border-radius:50%;font-size:20px;text-decoration:none;}
.sup-tile small,.sup-tile .sup-who{display:block;font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);padding:4px 2px;}
.sup-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;}
.sup-toolbar .sup-btn{width:100%;padding:10px 8px;font-size:calc(var(--sup-bt) * 0.9375);}

/* Public event page */
.sup-event-page{max-width:1100px;margin:12px auto;padding:0 12px;position:relative;}
.sup-event-page h1{font-size:calc(var(--sup-t) * 1.7778);line-height:1.2;overflow-wrap:anywhere;margin:0 0 6px;}
.sup-event-date{margin:0 0 12px;font-weight:700;font-size:calc(var(--sup-fs) * 1.125);}
.sup-event-head{display:flex;flex-direction:column;gap:16px;}
.sup-event-hero{width:100%;max-height:260px;object-fit:cover;border-radius:var(--sup-r);}
.sup-event-cta{margin:16px 0;}
.sup-edit-link{margin:0 0 8px;}

/* Guest upload */
.sup-upload-wrap{max-width:560px;margin:12px auto;padding:0 12px;}
.sup-upload-wrap h2{font-size:calc(var(--sup-t) * 1.4);line-height:1.2;margin:4px 0 8px;}
.sup-upload-form{display:flex;flex-direction:column;gap:10px;}
.sup-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:150px;padding:20px;border:2px dashed var(--sup-blue);border-radius:16px;background:#eef6fb;color:var(--sup-blue);text-align:center;cursor:pointer;}
.sup-dropzone strong{font-size:calc(var(--sup-fs) * 1.25);}
.sup-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px;}
.sup-dropzone:focus-within{outline:3px solid var(--sup-blue);outline-offset:2px;}
.sup-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.sup-file{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;background:#fff;border:1px solid var(--sup-line);border-radius:10px;padding:6px;}
.sup-file img{width:48px;height:48px;object-fit:cover;border-radius:6px;background:#eee;}
.sup-file .sup-fname{font-size:calc(var(--sup-fs) * 0.9375);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sup-bar{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-top:4px;}
.sup-bar span{display:block;height:100%;width:0;background:var(--sup-blue);transition:width .2s;}
.sup-file.ok .sup-bar span{background:var(--sup-ok);}
.sup-file.err .sup-bar span{background:var(--sup-err);width:100% !important;}
.sup-fstate{font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);}
.sup-file.err .sup-fstate{color:var(--sup-err);}
.sup-send{min-height:56px;font-size:calc(var(--sup-bt) * 1.125);}

/* Modals */
#sup-modal>div{width:min(92vw,360px);}

/* Rich text fields: defend against theme rules that make TinyMCE untappable on touch devices. */
.wp-editor-wrap,.wp-editor-wrap *{pointer-events:auto;touch-action:manipulation;}
.wp-editor-wrap .mce-edit-area,.wp-editor-wrap .wp-editor-area{-webkit-user-select:text;user-select:text;}
.wp-editor-wrap .mce-edit-area iframe{min-height:140px !important;max-width:100%;display:block;}
.wp-editor-wrap .wp-editor-container{position:relative;z-index:1;}
.wp-editor-wrap .mce-toolbar .mce-btn button{min-width:40px;min-height:40px;}
.wp-editor-wrap textarea.wp-editor-area,.sup-rte-area{width:100%;min-height:120px;font-size:max(16px, var(--sup-fs));}
.sup-rte-fallback textarea.wp-editor-area{display:block !important;}
.sup-rte-fallback .mce-tinymce{display:none !important;}
.sup-comment p{margin:2px 0;}

/* ≥ 480px: larger phones / small tablets */
@media (min-width:480px){
	.sup-grid{grid-template-columns:repeat(3,1fr);}
	.sup-toolbar{grid-template-columns:repeat(3,1fr);}
	.sup-wrap{padding:32px;}
}
/* ≥ 700px: tablets – event list becomes a table */
@media (min-width:700px){
	.sup-table{display:table;background:#fff;border-radius:var(--sup-r);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.06);}
	.sup-table thead{display:table-header-group;}
	.sup-table tbody{display:table-row-group;}
	.sup-table tr{display:table-row;box-shadow:none;border-radius:0;margin:0;padding:0;}
	.sup-table th,.sup-table td{display:table-cell;padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid #eee;}
	.sup-table a.sup-event-title{font-size:calc(var(--sup-t) * 1.2222);width:auto;display:inline-flex;min-height:44px;}
	.sup-actions{grid-template-columns:repeat(3,auto);justify-content:start;}
	.sup-row{flex-direction:row;gap:16px;}
	.sup-row>div{flex:1;min-width:0;}
	.sup-edit-card{padding:32px;}
	.sup-save{width:auto;}
	.sup-event-head{flex-direction:row;align-items:flex-start;}
	.sup-event-head>div{flex:1;}
	.sup-event-hero{width:320px;max-height:240px;}
	.sup-toolbar{display:flex;flex-wrap:wrap;}
	.sup-toolbar .sup-btn{width:auto;padding:10px 16px;}
}
/* ≥ 1024px: desktop */
@media (min-width:1024px){
	.sup-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;}
	.sup-event-page h1{font-size:calc(var(--sup-t) * 2.1111);}
}
/* Mobile hamburger + menu (v1.1.3) – theme-proof against TT25 global styles, theme.json,
   block-gap and hostile Additional CSS. Icons are inline SVGs (no spans / pseudo-elements),
   toggled by aria-expanded. !important is used where a theme rule could otherwise win. */
.sup-topbar button.sup-ham{-webkit-appearance:none !important;appearance:none !important;position:relative;display:inline-flex !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important;
	width:44px !important;height:44px !important;min-width:44px !important;min-height:44px !important;max-width:44px !important;max-height:44px !important;
	margin:0 0 0 auto !important;padding:0 !important;line-height:1 !important;font-size:0 !important;letter-spacing:normal !important;text-transform:none !important;text-decoration:none !important;
	border:1px solid #50575e !important;border-radius:8px !important;background:#fff !important;background-image:none !important;color:#1d2327 !important;box-shadow:none !important;
	overflow:hidden !important;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.sup-topbar button.sup-ham svg.sup-ham-icon{display:block !important;flex:none !important;width:24px !important;height:24px !important;min-width:0 !important;max-width:none !important;margin:0 !important;padding:0 !important;fill:currentColor !important;color:inherit !important;pointer-events:none;}
.sup-topbar button.sup-ham svg.sup-ham-close path{stroke:currentColor !important;fill:none !important;}
.sup-topbar button.sup-ham[aria-expanded="false"] svg.sup-ham-close,
.sup-topbar button.sup-ham:not([aria-expanded="true"]) svg.sup-ham-close,
.sup-topbar button.sup-ham[aria-expanded="true"] svg.sup-ham-open{display:none !important;}
@media (hover:hover){
	.sup-topbar button.sup-ham:hover{background:#eef6fb !important;border-color:#005a87 !important;color:#005a87 !important;}
}
.sup-topbar button.sup-ham:active{background:#d7e9f4 !important;}
.sup-topbar button.sup-ham:focus{outline:none;}
.sup-topbar button.sup-ham:focus-visible{outline:3px solid #005a87 !important;outline-offset:2px !important;}
.sup-topbar .sup-mob{position:absolute;top:calc(100% + 4px);z-index:9999;min-width:200px;margin:0 !important;padding:6px !important;border-radius:12px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	background:#fff !important;border:1px solid #c3c4c7 !important;box-shadow:0 8px 24px rgba(0,0,0,.18) !important;}
.sup-topbar .sup-mob ul.sup-mob-list{display:flex !important;flex-direction:column !important;gap:0 !important;list-style:none !important;margin:0 !important;padding:0 !important;}
.sup-topbar .sup-mob ul.sup-mob-list > li{display:block !important;list-style:none !important;margin:0 !important;padding:0 !important;border:0 !important;line-height:1.3 !important;}
.sup-topbar .sup-mob ul.sup-mob-list > * + *{margin-block-start:0 !important;border-top:1px solid #f0f0f1 !important;}
.sup-topbar .sup-mob ul.sup-mob-list > li::before,.sup-topbar .sup-mob ul.sup-mob-list > li::marker{content:none !important;display:none !important;}
.sup-topbar .sup-mob ul.sup-mob-list a{display:flex !important;align-items:center !important;box-sizing:border-box !important;min-height:44px !important;height:auto !important;margin:0 !important;padding:10px 16px !important;line-height:1.3 !important;
	font-size:17px !important;font-weight:600;text-decoration:none !important;border-radius:8px;color:#1d2327 !important;background:transparent !important;}
.sup-topbar .sup-mob ul.sup-mob-list a:hover{color:#005a87 !important;background:#eef6fb !important;text-decoration:underline !important;}
.sup-topbar .sup-mob ul.sup-mob-list a:focus-visible{outline:3px solid #005a87 !important;outline-offset:-3px !important;}
/* Header nav switch (kept at the original 768px breakpoint, now min-width). */
.sup-desk{display:none !important;}
.sup-ham{display:flex !important;}
@media (min-width:769px){ .sup-desk{display:flex !important;} .sup-ham,.sup-topbar button.sup-ham{display:none !important;} .sup-mob,.sup-topbar .sup-mob{display:none !important;} }
.sup-meta-label{font-weight:600;color:var(--sup-muted);}
@media (min-width:700px){ .sup-meta-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);} }
.sup-block p{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 0;}
.sup-block label{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:var(--sup-fs);}
.sup-block input[type=checkbox]{width:22px;height:22px;}
/* v1.1.4 extra text block styling: border size + colours (all controls >= 44px) */
.sup-bstyle{margin:12px 0 0;}
.sup-bsize{border:0;margin:0 0 12px;padding:0;min-width:0;}
.sup-bsize legend{font-size:var(--sup-fs);font-weight:600;margin:0 0 6px;padding:0;color:var(--sup-text);}
.sup-seg{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--sup-blue);border-radius:10px;overflow:hidden;}
.sup-seg label{position:relative;display:flex !important;align-items:center;justify-content:center;min-height:44px;margin:0;padding:0 2px;font-size:calc(var(--sup-bt) * 0.875);font-weight:600;white-space:nowrap;color:var(--sup-blue);background:#fff;cursor:pointer;border-left:1px solid var(--sup-blue);}
.sup-seg label:first-child{border-left:0;}
.sup-seg input{position:absolute;opacity:0;width:1px;height:1px;}
.sup-seg input:checked+span{color:#fff;}
.sup-seg label:has(input:checked){background:var(--sup-blue);color:#fff;}
.sup-seg label:has(input:focus-visible){outline:3px solid var(--sup-blue-dk);outline-offset:-5px;}
.sup-crow{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);}
.sup-crow>*{min-width:0;}
.sup-cfield[hidden]{display:none !important;}
.sup-colorpair{display:flex;gap:8px;align-items:center;}
.sup-colorpair .sup-color{flex:0 0 52px;width:52px !important;height:48px !important;min-height:48px;padding:3px !important;border:1px solid #8c8f94;border-radius:10px;background:#fff;cursor:pointer;}
.sup-colorpair .sup-hex{flex:1 1 auto;min-width:0;width:auto !important;min-height:48px;font-family:ui-monospace,Menlo,Consolas,monospace;text-transform:lowercase;}
.sup-colorpair .sup-cnone{flex:0 0 auto;min-height:48px;min-width:64px;padding:0 12px;border:2px solid var(--sup-blue);border-radius:10px;background:#fff;color:var(--sup-blue);font-size:calc(var(--sup-bt) * 0.9375);font-weight:600;cursor:pointer;}
.sup-colorpair .sup-hex:invalid{border-color:var(--sup-err);}
.sup-bpreview{margin:12px 0 0;padding:14px 16px;border-radius:12px;font-size:var(--sup-fs);line-height:1.5;}
.sup-bnote{display:block;font-size:calc(var(--sup-fs) * 0.875);opacity:.9;}
@media (min-width:600px){.sup-crow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}
/* Event page text blocks */
.sup-textblock{margin:12px 0;}
.sup-textblock.is-boxed{padding:14px 16px;border-radius:12px;}
.sup-textblock.is-boxed>:first-child{margin-top:0;}
.sup-textblock.is-boxed>:last-child{margin-bottom:0;}
.sup-textblock.is-boxed a{color:inherit;text-decoration:underline;}
/* TinyMCE text-colour palette: big tappable swatches (panel is rendered in the page, not the iframe) */
.mce-colorbutton-grid td.mce-grid-cell div{width:40px !important;height:40px !important;border-radius:6px;}
.mce-colorbutton-grid td.mce-grid-cell{padding:3px !important;}
.mce-colorbutton-grid .mce-custom-color-btn button,.mce-colorbutton-grid .mce-btn button{min-height:44px;font-size:16px !important;}
.mce-colorbutton-grid .mce-colorbtn-trans div{line-height:40px !important;font-size:28px !important;}
.mce-toolbar .mce-colorbutton .mce-open{padding-left:6px !important;padding-right:6px !important;}
/* ---------- v1.2.0 guest upload: camera / gallery buttons, auto-upload rows, captions ---------- */
.sup-vh{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;clip-path:inset(50%) !important;white-space:nowrap !important;border:0 !important;opacity:0;}
.sup-pickers{display:grid;gap:12px;margin:16px 0 8px;}
.sup-pick-btn{display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;padding:12px 20px;border-radius:14px;font-size:calc(var(--sup-bt) * 1.1875);font-weight:700;line-height:1.2;cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;text-align:center;}
.sup-pick-camera,.sup-take-another{background:var(--sup-blue);color:#fff !important;border:2px solid var(--sup-blue);}
.sup-pick-gallery{background:#fff;color:var(--sup-blue) !important;border:2px solid var(--sup-blue);}
.sup-pick-btn:active{transform:scale(.98);}
.sup-pick-camera:hover,.sup-take-another:hover{background:var(--sup-blue-dk);}
.sup-pick-gallery:hover{background:#eef5f9;}
.sup-guest [hidden]{display:none !important;}
.sup-pick-btn:has(+ .sup-vh:focus-visible),.sup-guest label[for=sup-cam]:focus-visible{outline:3px solid var(--sup-blue-dk);outline-offset:3px;}
.sup-guest .sup-nojs{margin-top:12px;}
.sup-session{margin:16px 0 0;}
.sup-sent-count{font-size:calc(var(--sup-fs) * 1.125);font-weight:700;color:var(--sup-ok);margin:0 0 10px;}
.sup-session .sup-files{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px;}
.sup-session .sup-file{grid-template-columns:72px 1fr;align-items:start;padding:8px;}
.sup-session .sup-file img.sup-thumb{width:72px;height:72px;object-fit:cover;border-radius:8px;}
.sup-fline{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;}
.sup-fstate{font-size:calc(var(--sup-fs) * 0.9375);font-weight:600;}
.sup-file.ok .sup-fstate{color:var(--sup-ok);}
.sup-retry{min-height:44px;min-width:88px;padding:0 14px;border:2px solid var(--sup-err);border-radius:10px;background:#fff;color:var(--sup-err);font-size:var(--sup-bt);font-weight:700;cursor:pointer;}
.sup-cap{margin-top:6px;}
.sup-cap-input{display:block;width:100%;min-height:44px;padding:10px 12px;border:1px solid #8c8f94;border-radius:10px;font-size:max(16px, var(--sup-fs));box-sizing:border-box;background:#fff;color:var(--sup-text);}
.sup-cap-input:focus-visible{outline:3px solid var(--sup-blue);outline-offset:1px;}
.sup-cap-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;}
.sup-cap-count{font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);min-width:56px;}
.sup-cap-ok{font-size:calc(var(--sup-fs) * 0.9375);font-weight:600;color:var(--sup-ok);flex:1 1 auto;}
.sup-cap-save,.sup-remove-photo{min-height:44px;min-width:72px;padding:0 14px;border-radius:10px;font-size:var(--sup-bt);font-weight:600;cursor:pointer;}
.sup-cap-save{border:2px solid var(--sup-blue);background:#fff;color:var(--sup-blue);}
.sup-remove-photo{border:1px solid var(--sup-line);background:#f6f7f7;color:var(--sup-err);}
.sup-cap-input:disabled{background:#f0f0f1;color:var(--sup-muted);}
.sup-after{display:grid;gap:10px;margin-top:8px;}
.sup-after .sup-more-gallery{min-height:52px;}
.sup-after .sup-done{min-height:52px;background:#1d2327;}
.sup-full{margin-top:12px;font-weight:600;}
.sup-fig{margin:0;}
.sup-fig figcaption{font-size:calc(var(--sup-fs) * 0.875);line-height:1.4;color:var(--sup-muted);padding:4px 2px 0;overflow-wrap:anywhere;}
.sup-caption{font-style:italic;margin-top:2px;overflow-wrap:anywhere;}
.sup-usage{font-weight:600;color:var(--sup-muted);margin:4px 0 12px;}
/* ---------- v1.2.0 event code entry ---------- */
.sup-code-box{max-width:440px;margin:0 auto;}
.sup-code-label{display:block;font-size:calc(var(--sup-fs) * 1.25);font-weight:700;margin:0 0 10px;text-align:center;}
.sup-code-input,.sup-wrap .sup-code-input{display:block;width:100%;min-height:72px;padding:10px 12px;border:3px solid var(--sup-blue);border-radius:14px;font:700 calc(var(--sup-fs) * 2)/1.2 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.3em;text-align:center;text-transform:uppercase;color:var(--sup-text);background:#fff;box-sizing:border-box;}
.sup-code-input::placeholder{color:#c3c4c7;letter-spacing:.3em;}
.sup-code-input:focus-visible{outline:3px solid var(--sup-blue-dk);outline-offset:3px;}
.sup-code-box .sup-muted{text-align:center;margin:8px 0 14px;}
.sup-code-go{min-height:56px;font-size:calc(var(--sup-bt) * 1.125);}
/* ---------- v1.2.0 My Events: code + short link ---------- */
.sup-codeline{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 0;}
.sup-code-pill{display:inline-flex;align-items:center;min-height:36px;padding:2px 12px;border-radius:8px;background:#eef5f9;border:1px solid #b9d3e2;color:var(--sup-blue-dk);font:700 var(--sup-fs)/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.12em;}
.sup-copy-btn{min-height:44px;padding:0 14px;border:2px solid var(--sup-blue);border-radius:10px;background:#fff;color:var(--sup-blue);font-size:calc(var(--sup-bt) * 0.9375);font-weight:600;cursor:pointer;line-height:1.2;}
.sup-copy-btn.is-done{background:var(--sup-ok);border-color:var(--sup-ok);color:#fff;}
.sup-copy-btn:focus-visible{outline:3px solid var(--sup-blue-dk);outline-offset:2px;}
.sup-short{flex-basis:100%;font-size:calc(var(--sup-fs) * 0.875);overflow-wrap:anywhere;}
.sup-tier-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#f0f0f1;font-size:calc(var(--sup-fs) * 0.8125);}
.sup-couponbox,.sup-linkbox{margin-top:16px;}
.sup-inline{display:flex;gap:8px;}
.sup-inline .sup-input{flex:1 1 auto;min-width:0;}
.sup-slug-form .sup-label{font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);overflow-wrap:anywhere;}
.sup-slug-form .sup-btn{margin-top:8px;}

/* v1.2.1: Main image field. No-JS: plain file input + checkbox. With JS (.is-js): upload zone + preview card. */
.sup-mi{margin:4px 0 8px;}
.sup-mi-zone,.sup-mi-card{display:none;}
.sup-mi.is-js .sup-mi-input{position:absolute !important;width:1px !important;height:1px !important;min-height:0 !important;margin:-1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;clip-path:inset(50%) !important;border:0 !important;opacity:0;}
.sup-mi.is-js .sup-mi-del{display:none;}
.sup-mi.is-js .sup-mi-zone:not([hidden]){display:flex;}
.sup-mi-card:not([hidden]){display:block;}
.sup-mi:not(.is-js) .sup-mi-actions{display:none;}
.sup-mi:not(.is-js) .sup-mi-card{max-width:240px;margin-bottom:8px;}
.sup-mi-zone{flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:132px;padding:18px 16px;border:2px dashed #8fb3c9;border-radius:14px;background:#f3f8fb;color:var(--sup-blue);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;}
.sup-mi-zone:hover,.sup-mi.is-drag .sup-mi-zone{background:#e6f1f8;border-color:var(--sup-blue);}
.sup-mi-zone:active{transform:scale(.99);}
.sup-mi-zone:focus-visible,.sup-mi-replace:focus-visible{outline:3px solid var(--sup-blue);outline-offset:2px;}
.sup-mi-zone-title{font-size:calc(var(--sup-fs) * 1.125);font-weight:700;line-height:1.2;}
.sup-mi-zone-hint{font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);}
.sup-mi-card{border:1px solid var(--sup-line);border-radius:14px;padding:10px;background:#fff;}
.sup-mi-thumb{display:block;width:100%;max-height:240px;object-fit:cover;border-radius:10px;background:#eee;aspect-ratio:16/10;}
.sup-mi-name{margin:8px 2px 0;font-size:calc(var(--sup-fs) * 0.875);color:var(--sup-muted);overflow-wrap:anywhere;}
.sup-mi-name:empty{display:none;}
.sup-mi-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
.sup-mi-actions .sup-btn{width:100%;min-height:44px;padding:10px 8px;}
.sup-btn-outline-danger{background:#fff;color:var(--sup-err) !important;border:2px solid var(--sup-err);}
.sup-btn-outline-danger:hover{background:#fcf0f1;}
.sup-mi-err,.sup-mi-pending{margin:8px 0 0;}
.sup-mi-del{margin-top:6px;}
@media (min-width:700px){.sup-mi-zone,.sup-mi-card{max-width:420px;}}

/* v1.2.1: Download all (paid plans) + upgrade note */
.sup-dlall{margin:12px 0;}
.sup-upgrade-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #f0c36d;border-radius:12px;background:#fff8e5;color:#4a3b00;}
.sup-upgrade-note svg{flex:none;color:#b07d00;margin-top:2px;}
.sup-upgrade-note p{margin:0;font-size:calc(var(--sup-fs) * 0.9375);line-height:1.45;}
.sup-dl-hint{display:block;margin:-2px 0 4px 32px;font-size:calc(var(--sup-fs) * 0.875);}

/* v1.2.2: My Events actions – five buttons, 2 + 2 + full-width Delete on phones; one row on tablets+ */
.sup-actions a.sup-act-wide{grid-column:1 / -1;border-color:#e3b4b5;}
.sup-actions a.sup-del:hover,.sup-actions a.sup-del:focus-visible{background:#fcf0f1;border-color:var(--sup-err);}
@media (min-width:700px){.sup-actions a.sup-act-wide{grid-column:auto;}}
/* v1.2.2: main image is being resized on the phone */
.sup-mi.is-busy .sup-mi-thumb{background:#eef3f6 linear-gradient(90deg,#eef3f6,#dfe9ef,#eef3f6);background-size:200% 100%;animation:sup-shim 1.2s linear infinite;}
.sup-mi.is-busy .sup-mi-actions .sup-btn{opacity:.6;pointer-events:none;}
@keyframes sup-shim{to{background-position:-200% 0;}}
@media (prefers-reduced-motion:reduce){.sup-mi.is-busy .sup-mi-thumb{animation:none;}}
/* v1.2.2: code line = [CODE][Copy code] / [short link][Copy link]; action labels stay on one line at 390px */
.sup-codeline{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;}
.sup-codeline .sup-code-pill{justify-self:start;}
.sup-codeline .sup-copy-btn{width:100%;padding:0 8px;}
.sup-codeline .sup-short{order:2;min-width:0;font-size:calc(var(--sup-fs) * 0.8333);}
.sup-codeline button:nth-of-type(2){order:3;}
@media (min-width:700px){.sup-codeline{grid-template-columns:auto auto;justify-content:start;}}
.sup-actions a{font-size:calc(var(--sup-bt) * 0.875);padding:8px 4px;line-height:1.2;overflow-wrap:anywhere;}
@media (min-width:700px){.sup-actions{display:flex;flex-wrap:wrap;gap:6px;}.sup-actions a{white-space:nowrap;padding:8px 12px;}}

/* v1.2.2: text size settings. Rich text on the event page always follows the setting, whatever the theme says. */
.sup-event-page .sup-textblock,.sup-event-page .sup-rich{font-size:var(--sup-fs) !important;line-height:1.55;}
.sup-event-page :is(.sup-textblock,.sup-rich) :is(p,li,ul,ol,div,span,blockquote,td,th,a,strong,em,b,i,u,s){font-size:inherit !important;line-height:inherit;}
.sup-event-page :is(.sup-textblock,.sup-rich) h2{font-size:calc(var(--sup-t) * 1.4) !important;line-height:1.25;}
.sup-event-page :is(.sup-textblock,.sup-rich) h3{font-size:calc(var(--sup-t) * 1.2) !important;line-height:1.3;}
.sup-event-page :is(.sup-textblock,.sup-rich) :is(h4,h5,h6){font-size:calc(var(--sup-t) * 1.05) !important;line-height:1.3;}
.sup-event-page :is(.sup-textblock,.sup-rich){overflow-wrap:anywhere;}
.sup-event-page>p,.sup-event-page .sup-usage{font-size:var(--sup-fs);}
@media (min-width:700px){.sup-event-page h1{font-size:calc(var(--sup-t) * 1.9444);}}
@media (min-width:1024px){.sup-event-page h1{font-size:calc(var(--sup-t) * 2.1111);}}
/* v1.2.2: every text field inside the plugin stays at 16px or more (iOS zooms below that); colour hex inputs included. */
:where(.sup-dashboard,.sup-photos,.sup-event-page,.sup-upload-wrap,.sup-wrap) :where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea){font-size:max(16px, var(--sup-fs));}
.sup-event-page .sup-event-date{font-size:calc(var(--sup-fs) * 1.125);}
.sup-event-page .sup-usage,.sup-event-page .sup-event-cta,.sup-event-page>p{font-size:var(--sup-fs);}
/* v1.2.2: custom link box + checkout */
.sup-slugfield{display:flex;align-items:stretch;border:1px solid #8c8f94;border-radius:10px;background:#fff;overflow:hidden;}
.sup-slugfield:focus-within{outline:3px solid var(--sup-blue);outline-offset:2px;}
.sup-slughost{display:flex;align-items:center;flex:none;padding:0 2px 0 12px;color:var(--sup-muted);background:#f6f7f7;font-size:calc(var(--sup-fs) * .875);white-space:nowrap;max-width:55%;overflow:hidden;text-overflow:ellipsis;}
.sup-slugfield .sup-slug-input{border:0;border-radius:0;min-width:0;flex:1 1 auto;padding-left:4px;}
.sup-slugfield .sup-slug-input:focus-visible{outline:none;}
.sup-slug-status{min-height:1.5em;margin:6px 0 4px;font-size:calc(var(--sup-fs) * .9375);font-weight:600;overflow-wrap:anywhere;}
.sup-slug-status.is-ok{color:var(--sup-ok);}
.sup-slug-status.is-bad{color:var(--sup-err);}
.sup-slug-status.is-busy{color:var(--sup-muted);}
.sup-slugbox .sup-slug-go{width:100%;margin-top:4px;}
.sup-slugbox .sup-slug-go[disabled]{opacity:.55;cursor:not-allowed;}
.sup-linkcur{overflow-wrap:anywhere;}
.sup-testbanner{margin:0 0 12px;padding:10px 14px;border:2px dashed #b07d00;border-radius:10px;background:#fff8e5;color:#4a3b00;font-size:calc(var(--sup-fs) * .9375);}
.sup-testbanner strong{letter-spacing:.06em;margin-right:4px;}
.sup-testbanner-big{font-size:var(--sup-fs);text-align:center;padding:14px;}
.sup-testbanner-big strong{display:block;font-size:calc(var(--sup-t) * 1.4);}
.sup-order-sum{border:1px solid var(--sup-line);border-radius:12px;padding:12px 14px;margin:0 0 14px;background:var(--sup-bg);}
.sup-order-sum p{margin:4px 0;}
.sup-order-item{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:calc(var(--sup-fs) * 1.0625);}
.sup-order-item strong{white-space:nowrap;}
.sup-gw{border:0;padding:0;margin:0 0 12px;}
.sup-gw legend{font-weight:600;margin-bottom:4px;}
.sup-gw input[type=radio]{width:22px;height:22px;flex:none;}
.sup-pay-form .sup-btn-block,.sup-testpay-form .sup-btn-block{margin-top:10px;}
.sup-buy-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.sup-buy-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--sup-line);border-radius:12px;background:#fff;}
.sup-buy-list li>div{display:flex;flex-direction:column;min-width:0;}
.sup-buy-list .sup-muted{font-size:calc(var(--sup-fs) * .875);}
.sup-buy-list .sup-btn{flex:none;min-width:96px;}
.sup-order-status{font-weight:700;}
.sup-upgrade-note .sup-btn{margin-top:8px;}
.sup-upgrade-note p .sup-btn{display:inline-flex;}
