
:root{
  --blue:#1267ff;
  --blue2:#0ab7ff;
  --navy:#07192f;
  --text:#0b1d37;
  --muted:#6c7a91;
  --line:#e7ecf3;
  --card:#ffffff;
  --glass:rgba(255,255,255,.82);
  --shadow:0 24px 60px rgba(7,25,55,.18);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}
button,input,textarea,select{font:inherit}
body{background:#eef4fb}
a{text-decoration:none;color:inherit}

.stage{
  min-height:100vh;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(4,15,33,.22),rgba(4,15,33,.04) 42%,rgba(4,15,33,.22)),
    radial-gradient(circle at 67% 28%,rgba(255,255,255,.28),transparent 20%),
    linear-gradient(135deg,#0a2b63 0%,#0c76d8 42%,#12bfe8 70%,#071b3f 100%);
}
.stage:before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(130deg,transparent 0 46%,rgba(255,255,255,.08) 46% 47%,transparent 47% 100%),
    radial-gradient(circle at 20% 90%,rgba(255,255,255,.12),transparent 18%);
  pointer-events:none;
}
.topnav{
  position:relative; z-index:10;
  width:calc(100% - 36px);
  margin:18px auto 0;
  height:68px;
  display:flex; align-items:center; justify-content:space-between;
}
.brand-shell{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  border-radius:18px;
  background:#ffffff;
  border:1px solid #ffffff;
  box-shadow:0 10px 30px rgba(3,18,45,.14);
}
.brand-shell img{height:34px;width:auto;display:block}
.nav-right{display:flex;gap:10px;align-items:center}
.nav-pill{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.55);
  color:#203550;
  border-radius:16px;
  padding:12px 15px;
  box-shadow:0 10px 30px rgba(3,18,45,.12);
  backdrop-filter:blur(14px);
  font-size:13px;
}
.nav-links{display:flex;gap:18px}
.nav-links a:hover{color:var(--blue)}

.workspace{
  position:relative;z-index:5;
  width:calc(100% - 36px);
  min-height:calc(100vh - 110px);
  margin:14px auto 0;
  display:grid;
  grid-template-columns:360px minmax(0,1fr) 390px;
  gap:26px;
  align-items:center;
  padding:20px 0 30px;
}

.upload-panel{
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.65);
  border-radius:26px;
  box-shadow:var(--shadow);
  overflow:hidden;
  backdrop-filter:blur(18px);
}
.panel-top{padding:22px 22px 6px}
.panel-top h1{font-size:26px;line-height:1.08;margin:0 0 8px;letter-spacing:-.03em}
.panel-top p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.dropzone{
  margin:16px 18px 12px;
  min-height:160px;
  border:1.5px dashed #c9d5e5;
  border-radius:18px;
  display:grid;place-items:center;
  text-align:center;
  padding:20px;
  cursor:pointer;
  background:linear-gradient(180deg,#fbfdff,#f4f8fd);
  transition:.2s ease;
}
.dropzone.drag{border-color:var(--blue);background:#edf5ff;transform:translateY(-2px)}
.upload-icon{
  width:50px;height:50px;border-radius:16px;
  display:grid;place-items:center;margin:0 auto 12px;
  background:linear-gradient(135deg,#e5f0ff,#f7fbff);
  color:var(--blue);font-size:24px;
  box-shadow:inset 0 0 0 1px #e6edf7
}
.dropzone strong{display:block;font-size:16px}
.dropzone small{display:block;color:#8490a2;margin:5px 0 12px;font-size:12px}
.primary{
  border:0;border-radius:12px;padding:12px 18px;
  color:#fff;font-weight:750;cursor:pointer;
  background:linear-gradient(90deg,var(--blue),#159ff7);
  box-shadow:0 8px 18px rgba(18,103,255,.24)
}
.primary:hover{filter:brightness(.98);transform:translateY(-1px)}
.subnote{font-size:11px;color:#8a96a7;margin-top:12px}
.file-list{padding:0 18px;display:none}
.file-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);background:#fbfdff;border-radius:12px;padding:10px 12px;margin-top:8px}
.file-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}
.file-size{font-size:11px;color:var(--muted);margin-top:3px}
.remove{border:0;background:transparent;color:#8a97a9;font-size:18px;cursor:pointer}
.options{padding:6px 18px 18px}
.option-label{font-size:12px;font-weight:800;margin:12px 0 7px}
.field{width:100%;border:1px solid #dbe4ef;background:#fff;border-radius:12px;padding:11px 12px;outline:none;font-size:13px}
.field:focus{border-color:#9bc8ff;box-shadow:0 0 0 3px #eef6ff}
.toggle-row{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);padding:11px 12px;border-radius:12px;background:#fff}
.toggle-copy strong{display:block;font-size:13px}.toggle-copy span{font-size:11px;color:var(--muted)}
.switch{position:relative;width:42px;height:24px}.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;inset:0;border-radius:99px;background:#d9e1eb;cursor:pointer;transition:.2s}
.slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.18)}
.switch input:checked + .slider{background:var(--blue)}.switch input:checked + .slider:before{transform:translateX(18px)}
.password-wrap{display:none;margin-top:8px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.send-btn{width:100%;margin-top:12px}
.after-send{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:8px;margin-top:14px
}
.after-send div{background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:9px 5px;text-align:center;font-size:10px;color:#7c899b}
.after-send b{display:block;color:#18304f;margin-top:3px;font-size:10px}
.success{display:none;margin:0 18px 14px;padding:11px 12px;border-radius:12px;background:#edfff7;border:1px solid #bcebd8;color:#12895d;font-size:12px}

.campaign-visual{
  position:relative;
  min-height:660px;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 26px 80px rgba(3,18,45,.28);
  background:
    linear-gradient(180deg,rgba(2,12,28,.03),rgba(2,12,28,.08)),
    url('assets/gadgetpos-campaign.png') center/cover no-repeat;
}
.campaign-visual:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(3,16,37,.22),transparent 36%,rgba(3,16,37,.12));
}
.sponsored-chip{
  position:absolute;z-index:3;left:20px;top:20px;
  padding:9px 11px;border-radius:999px;
  background:rgba(5,18,40,.58);color:#fff;font-size:11px;
  backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18)
}
.campaign-caption{
  position:absolute;z-index:3;left:22px;bottom:22px;right:22px;
  display:flex;align-items:end;justify-content:space-between;gap:20px
}
.campaign-caption .meta{color:#fff}
.campaign-caption small{display:block;opacity:.75;margin-bottom:4px}
.campaign-caption strong{font-size:18px}
.view-btn{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.92);color:#0a274c;font-weight:700;font-size:12px}

.story-panel{
  color:#fff;
  padding:12px 10px;
}
.story-panel .label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;opacity:.7;font-weight:800}
.story-panel h2{font-size:48px;line-height:1.02;margin:14px 0 18px;letter-spacing:-.045em}
.story-panel p{font-size:17px;line-height:1.65;color:rgba(255,255,255,.83);margin:0 0 24px}
.story-panel .cta{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;color:#0a2347;border-radius:999px;padding:12px 16px;font-weight:750;font-size:13px
}
.story-panel .mini{margin-top:18px;font-size:11px;opacity:.7}
.footerline{
  position:absolute;z-index:6;left:18px;right:18px;bottom:10px;
  display:flex;justify-content:space-between;color:rgba(255,255,255,.72);font-size:11px
}
.demo-toggle{
  position:absolute;right:18px;top:96px;z-index:20;
  background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.6);
  border-radius:999px;padding:9px 12px;font-size:11px;cursor:pointer;box-shadow:0 8px 24px rgba(3,18,45,.14)
}

/* Receiver */
.receiver-stage .workspace{grid-template-columns:1fr 410px;max-width:1400px}
.receiver-stage .campaign-visual{min-height:700px}
.receiver-panel{
  background:rgba(255,255,255,.96);
  border-radius:26px;border:1px solid rgba(255,255,255,.65);
  box-shadow:var(--shadow);padding:22px;backdrop-filter:blur(18px)
}
.receiver-panel .download-round{width:58px;height:58px;border-radius:18px;background:#edf9f4;color:#18b878;display:grid;place-items:center;font-size:27px;margin-bottom:14px}
.receiver-panel h1{font-size:28px;margin:0 0 8px;letter-spacing:-.03em}
.receiver-panel>p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 16px}
.file-summary{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fbfdff}
.file-main{display:flex;align-items:center;gap:12px}
.fileicon{width:50px;height:50px;border-radius:14px;background:#edf5ff;color:var(--blue);display:grid;place-items:center;font-size:21px}
.expiry{font-size:11px;color:var(--muted);margin-top:12px}.expiry b{color:#159d6d}
.message{margin-top:10px;padding:10px 11px;background:#f5f7fb;border-radius:10px;color:#596980;font-size:12px}
.receiver-actions{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:12px}
.secondary{border:1px solid #dbe4ef;background:#fff;border-radius:12px;padding:11px 13px;cursor:pointer;font-weight:700;color:#213852}
.share-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.share-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-size:11px;color:#526176}
.qrbox{display:none;margin-top:12px;border:1px solid var(--line);background:#fbfdff;border-radius:14px;padding:14px;text-align:center}
.fakeqr{width:120px;height:120px;margin:0 auto 8px;background:
 linear-gradient(90deg,#111 10%,transparent 10% 20%,#111 20% 30%,transparent 30% 40%,#111 40% 50%,transparent 50% 60%,#111 60% 70%,transparent 70% 80%,#111 80% 90%,transparent 90%),
 linear-gradient(#111 10%,transparent 10% 20%,#111 20% 30%,transparent 30% 40%,#111 40% 50%,transparent 50% 60%,#111 60% 70%,transparent 70% 80%,#111 80% 90%,transparent 90%);
 background-color:#fff;border:9px solid #fff;box-shadow:0 0 0 1px #ddd}
.optional-lock{margin-top:12px;border:1px dashed #ccd7e5;border-radius:12px;padding:10px 11px;font-size:11px;color:#758397;background:#fafcff}

@media(max-width:1180px){
  .workspace{grid-template-columns:340px 1fr}
  .story-panel{grid-column:1/-1;padding:0 6px 70px}
  .story-panel h2{font-size:38px}
}
@media(max-width:820px){
  .topnav{width:calc(100% - 20px)} .nav-links{display:none}
  .workspace{width:calc(100% - 20px);grid-template-columns:1fr;align-items:start;padding-top:8px}
  .upload-panel{order:2}.campaign-visual{order:1;min-height:440px}.story-panel{order:3}
  .receiver-stage .workspace{grid-template-columns:1fr}
  .receiver-panel{order:2}.receiver-stage .campaign-visual{order:1;min-height:440px}
  .footerline{position:relative;left:auto;right:auto;bottom:auto;padding:0 12px 16px}
}
@media(max-width:540px){
  .brand-shell img{height:28px}.nav-right .nav-pill:first-child{display:none}
  .workspace{gap:14px}
  .campaign-visual{min-height:360px;border-radius:22px}
  .upload-panel,.receiver-panel{border-radius:22px}
  .grid2{grid-template-columns:1fr}
  .story-panel h2{font-size:34px}
  .story-panel p{font-size:15px}
  .after-send{grid-template-columns:1fr 1fr}
}

.campaign-link{
  position:absolute;
  inset:0;
  z-index:2;
  display:block;
}
.campaign-visual .sponsored-chip,
.campaign-visual .campaign-caption{
  pointer-events:none;
}
.campaign-visual .view-btn{
  pointer-events:auto;
}
.story-panel .cta{
  transition:.18s ease;
}
.story-panel .cta:hover,
.view-btn:hover{
  transform:translateY(-1px);
  filter:brightness(.98);
}
.gadgetpos-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:16px;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:11px;
  backdrop-filter:blur(10px);
}

/* V5 logo card fix */
.brand-shell{
  background:#ffffff !important;
  border-color:#ffffff !important;
  backdrop-filter:none !important;
}

/* V6 receiver campaign no-crop fix */
.receiver-stage .campaign-visual{
  background-image:none !important;
  background-color:#0a2b63 !important;
  display:flex;
  align-items:center;
  justify-content:center;
}
.receiver-stage .campaign-visual .receiver-campaign-img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  position:absolute;
  inset:0;
  margin:auto;
  z-index:1;
  background:#0a2b63;
}
.receiver-stage .campaign-link{z-index:2}
.receiver-stage .sponsored-chip,
.receiver-stage .campaign-caption{z-index:3}

/* ---------- Admin UI ---------- */
.admin-body{
  margin:0;
  min-height:100vh;
  background:#f4f7fb;
  color:#10243f;
}
.admin-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:250px 1fr;
}
.admin-sidebar{
  background:linear-gradient(180deg,#071b3a 0%,#0b2d64 100%);
  color:#fff;
  padding:22px 18px;
  position:sticky;
  top:0;
  height:100vh;
}
.admin-logo{
  background:#fff;
  border-radius:16px;
  padding:10px 12px;
  margin-bottom:26px;
}
.admin-logo img{width:100%;display:block}
.admin-nav{display:flex;flex-direction:column;gap:8px}
.admin-nav a{
  display:flex;align-items:center;gap:11px;
  color:rgba(255,255,255,.82);
  padding:11px 12px;border-radius:12px;
  font-size:14px;font-weight:650;
}
.admin-nav a:hover,.admin-nav a.active{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.admin-side-bottom{
  position:absolute;left:18px;right:18px;bottom:18px;
  font-size:12px;color:rgba(255,255,255,.65)
}
.admin-main{padding:22px 28px 40px}
.admin-top{
  display:flex;justify-content:space-between;align-items:center;
  gap:18px;margin-bottom:22px;
}
.admin-title h1{margin:0;font-size:28px;letter-spacing:-.03em}
.admin-title p{margin:5px 0 0;color:#708098;font-size:13px}
.admin-user{
  display:flex;align-items:center;gap:10px;
  background:#fff;border:1px solid #e3e9f2;border-radius:14px;
  padding:8px 10px;box-shadow:0 6px 20px rgba(27,63,112,.06)
}
.admin-avatar{
  width:34px;height:34px;border-radius:11px;background:#e9f2ff;
  color:#1267ff;display:grid;place-items:center;font-weight:800
}
.admin-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px
}
.metric{
  background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:17px;
  box-shadow:0 8px 24px rgba(28,63,112,.05)
}
.metric .k{font-size:12px;color:#75849a}
.metric .v{font-size:25px;font-weight:800;margin:7px 0 4px}
.metric .d{font-size:11px;color:#1aa46d}
.admin-two{
  display:grid;grid-template-columns:1.25fr .75fr;gap:16px;margin-bottom:18px
}
.admin-card{
  background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:18px;
  box-shadow:0 8px 24px rgba(28,63,112,.05)
}
.admin-card h2{font-size:17px;margin:0 0 14px}
.chart-placeholder{
  height:230px;border-radius:14px;background:
   linear-gradient(#eef3f9 1px,transparent 1px),
   linear-gradient(90deg,#eef3f9 1px,transparent 1px);
  background-size:36px 36px;
  position:relative;overflow:hidden
}
.chart-placeholder:after{
  content:"";position:absolute;left:7%;right:5%;bottom:26%;
  height:90px;border-bottom:4px solid #1267ff;border-radius:50%;
  transform:skewY(-9deg)
}
.table-wrap{overflow:auto}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th{
  text-align:left;color:#718096;font-weight:700;
  padding:10px;border-bottom:1px solid #e8edf4;white-space:nowrap
}
.admin-table td{padding:12px 10px;border-bottom:1px solid #eef2f7;white-space:nowrap}
.status{
  display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:750
}
.status.live{background:#e9fff5;color:#159b69}
.status.paused{background:#fff5e8;color:#b97710}
.status.expired{background:#f1f3f6;color:#7b8797}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap}
.admin-btn{
  border:1px solid #dce4ef;background:#fff;color:#203750;
  padding:9px 12px;border-radius:10px;font-weight:700;font-size:12px;cursor:pointer
}
.admin-btn.primary{
  border-color:#1267ff;background:#1267ff;color:#fff;box-shadow:none
}
.form-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:12px
}
.form-row{display:flex;flex-direction:column;gap:6px}
.form-row.full{grid-column:1/-1}
.form-row label{font-size:12px;font-weight:750;color:#53657e}
.form-row input,.form-row textarea,.form-row select{
  border:1px solid #dbe4ef;background:#fff;border-radius:11px;
  padding:11px 12px;outline:none
}
.form-row input:focus,.form-row textarea:focus,.form-row select:focus{
  border-color:#99c5ff;box-shadow:0 0 0 3px #eef6ff
}
.preview-ad{
  aspect-ratio:8/5;border-radius:16px;overflow:hidden;background:#0a2b63;
  display:grid;place-items:center
}
.preview-ad img{width:100%;height:100%;object-fit:contain}
.setting-row{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:14px 0;border-bottom:1px solid #edf1f6
}
.setting-row:last-child{border-bottom:0}
.setting-copy b{display:block;font-size:14px}.setting-copy span{font-size:12px;color:#75849a}
.small-input{width:130px}
.login-wrap{
  min-height:100vh;display:grid;place-items:center;
  background:
   radial-gradient(circle at 80% 20%,#16bdf0 0%,transparent 26%),
   linear-gradient(135deg,#061a38,#0c63ce 60%,#0a2348);
  padding:20px;
}
.login-card{
  width:min(420px,100%);background:#fff;border-radius:24px;padding:26px;
  box-shadow:0 30px 80px rgba(2,13,31,.32)
}
.login-card .admin-logo{max-width:220px;margin:0 auto 24px}
.login-card h1{font-size:25px;margin:0 0 6px}
.login-card p{font-size:13px;color:#748196;margin:0 0 20px}
.login-card .form-row{margin-bottom:12px}
.login-card button{width:100%;margin-top:8px}
@media(max-width:1000px){
  .admin-shell{grid-template-columns:82px 1fr}
  .admin-sidebar{padding:18px 10px}
  .admin-logo{padding:8px}.admin-nav a span{display:none}.admin-nav a{justify-content:center}
  .admin-side-bottom{display:none}
  .admin-grid{grid-template-columns:repeat(2,1fr)}
  .admin-two{grid-template-columns:1fr}
}
@media(max-width:650px){
  .admin-shell{display:block}
  .admin-sidebar{position:relative;height:auto;display:flex;align-items:center;gap:10px;overflow:auto}
  .admin-logo{min-width:170px;margin:0}.admin-nav{flex-direction:row}.admin-nav a{min-width:42px}
  .admin-main{padding:18px 14px 30px}.admin-grid{grid-template-columns:1fr}
  .admin-top{align-items:flex-start}.admin-user{display:none}.form-grid{grid-template-columns:1fr}
}

/* V9 real upload */
.part-progress{height:6px;background:#e8eef6;border-radius:999px;overflow:hidden;margin-top:7px}
.part-progress div{height:100%;width:0;background:linear-gradient(90deg,#1267ff,#0ab7ff);transition:width .2s}
.part-label{font-size:10px;color:#728198;margin-top:4px}
.send-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.send-row .send-btn{margin-top:12px}
.send-row #pauseBtn{margin-top:12px}
.overall-progress{margin-top:12px}
.overall-bar{height:8px;background:#e8eef6;border-radius:999px;overflow:hidden}
.overall-bar div{height:100%;width:0;background:linear-gradient(90deg,#1267ff,#0ab7ff);transition:width .2s}
.overall-label{font-size:11px;color:#728198;margin-top:6px}
.success-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.success a{color:inherit;font-weight:700}
@media(max-width:540px){.send-row{grid-template-columns:1fr}}

/* V10 recovery + QR */
.resume-banner{
  margin:0 18px 12px;
  padding:12px;
  border-radius:14px;
  background:#eef6ff;
  border:1px solid #cfe3ff;
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:8px;
  align-items:center;
  font-size:12px;
}
.resume-banner b{display:block;color:#12345f}
.resume-banner span{color:#6b7c94}
.generated-qr{
  margin-top:12px;
  background:#fff;
  border:1px solid #dce5ef;
  border-radius:14px;
  padding:14px;
  width:max-content;
  max-width:100%;
  color:#203750;
}
#qrCanvas{background:#fff;padding:6px}
.qr-caption{text-align:center;font-size:11px;margin-top:7px;color:#708096}
@media(max-width:600px){
  .resume-banner{grid-template-columns:1fr}
}


/* V10.1 visible upload activity */
.upload-status-card{
  padding:12px;
  border:1px solid #d8e6f5;
  border-radius:14px;
  background:#f8fbff;
}
.upload-status-head{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.upload-spinner{
  width:28px;
  height:28px;
  border:3px solid #d9e8fb;
  border-top-color:#1677ff;
  border-radius:50%;
  animation:gt-spin .85s linear infinite;
  box-sizing:border-box;
}
.upload-spinner.is-stopped{animation-play-state:paused}
.upload-spinner.is-complete{
  border-color:#20b77a;
  position:relative;
  animation:none;
}
.upload-spinner.is-complete:after{
  content:"✓";
  position:absolute;
  inset:-3px;
  display:grid;
  place-items:center;
  color:#20b77a;
  font-size:17px;
  font-weight:900;
}
.upload-spinner.is-error{
  border-color:#e5484d;
  animation:none;
}
.upload-spinner.is-error:after{
  content:"!";
  position:absolute;
  inset:-3px;
  display:grid;
  place-items:center;
  color:#e5484d;
  font-weight:900;
}
.upload-status-copy{min-width:0}
.upload-state-text{
  font-size:13px;
  font-weight:800;
  color:#10233e;
}
.upload-bytes-text{
  margin-top:2px;
  font-size:11px;
  color:#78879c;
}
.upload-percent{
  font-size:25px;
  line-height:1;
  font-weight:900;
  letter-spacing:-1px;
  color:#146cff;
  min-width:58px;
  text-align:right;
}
@keyframes gt-spin{to{transform:rotate(360deg)}}


/* V10.2 centered transfer modal */
.upload-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
}
.upload-modal.show{display:flex}
.upload-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,35,72,.36);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.upload-modal-card{
  position:relative;
  z-index:1;
  width:min(360px,calc(100vw - 36px));
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 80px rgba(22,52,104,.28);
  padding:30px 24px 18px;
  text-align:center;
}
.circular-progress{
  --progress:0;
  width:172px;
  height:172px;
  margin:0 auto 18px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:
    conic-gradient(#2f62ff calc(var(--progress) * 1%), #e8ebef 0);
  position:relative;
}
.circular-progress:before{
  content:"";
  position:absolute;
  inset:10px;
  background:#fff;
  border-radius:50%;
}
.circular-progress-inner{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
}
.modal-percent{
  font-size:62px;
  line-height:1;
  font-weight:500;
  letter-spacing:-4px;
  color:#111;
}
.modal-percent span{
  font-size:20px;
  color:#a8abb1;
  margin-left:4px;
  vertical-align:top;
  letter-spacing:0;
}
.upload-modal-card h2{
  margin:0 0 8px;
  font-size:25px;
  line-height:1.2;
  color:#121826;
}
.modal-linkish{
  border:0;
  background:transparent;
  color:#315dff;
  text-decoration:underline;
  font-size:14px;
  padding:0;
  margin:0 0 8px;
}
.modal-bytes{
  font-size:14px;
  color:#7a7f88;
  margin-bottom:10px;
}
.modal-eta{
  min-height:20px;
  font-size:14px;
  color:#737982;
  margin-bottom:24px;
}
.modal-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.modal-secondary,.modal-cancel{
  height:48px;
  border-radius:14px;
  background:#fff;
  border:1.5px solid #3261ff;
  color:#3261ff;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
}
.modal-cancel{
  grid-column:1/-1;
}
.upload-modal-open{overflow:hidden}

@media(max-width:480px){
  .upload-modal-card{padding:24px 18px 16px}
  .circular-progress{width:148px;height:148px}
  .modal-percent{font-size:54px}
}


/* V10.3 compact sender success state */
.sender-success-card{
  margin-top:2px;
  padding:20px;
  border-radius:22px;
  background:#fff;
  border:1px solid #dbe6f4;
  box-shadow:0 18px 50px rgba(12,52,104,.15);
}
.sender-success-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#e9fbf4;
  color:#10a66d;
  font-size:27px;
  font-weight:900;
  margin-bottom:12px;
}
.sender-success-kicker{
  color:#119b69;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.7px;
}
.sender-success-card h2{
  margin:5px 0 6px;
  font-size:24px;
  line-height:1.12;
  color:#0f2340;
}
.sender-success-copy{
  margin:0 0 14px;
  color:#75859d;
  font-size:13px;
}
.sender-link-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  padding:8px;
  background:#f4f8fd;
  border:1px solid #dce6f2;
  border-radius:14px;
}
.sender-link-box input{
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  font-size:12px;
  color:#27405f;
  padding:0 6px;
}
.sender-copy-main{
  min-width:96px;
  height:40px;
  border-radius:11px;
}
.sender-expiry-note{
  display:flex;
  align-items:center;
  gap:7px;
  margin:11px 2px;
  color:#687b94;
  font-size:12px;
}
.sender-share-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:10px;
}
.sender-share-grid .share-chip{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  text-align:center;
}
.send-another-btn{
  width:100%;
  margin-top:12px;
  min-height:44px;
  font-weight:800;
}

/* V10.3 receiver card prominence */
.receiver-panel{
  position:relative;
  width:min(430px,32vw);
  min-width:390px;
  padding:28px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(209,225,242,.95) !important;
  box-shadow:
    0 26px 70px rgba(8,42,89,.26),
    0 0 0 6px rgba(255,255,255,.10) !important;
}
.receiver-panel:before{
  content:"";
  position:absolute;
  left:0;
  top:24px;
  bottom:24px;
  width:5px;
  border-radius:0 6px 6px 0;
  background:linear-gradient(180deg,#1b72ff,#13bc86);
}
.receiver-ready-badge{
  display:inline-flex;
  padding:7px 10px;
  border-radius:999px;
  background:#e9fbf4;
  color:#0d9464;
  font-size:10px;
  font-weight:900;
  letter-spacing:.8px;
  margin-bottom:14px;
}
.receiver-download-icon{
  width:56px !important;
  height:56px !important;
  font-size:27px !important;
  background:#eafbf5 !important;
  color:#11a56e !important;
}
.receiver-panel h1{
  font-size:28px !important;
  line-height:1.12 !important;
  margin:14px 0 8px !important;
}
.receiver-panel > p{
  font-size:14px !important;
  line-height:1.55 !important;
  margin-bottom:18px !important;
}
.rx-list{
  gap:10px !important;
}
.rx-file{
  padding:14px !important;
  border-radius:15px !important;
  background:#f9fbfe !important;
  border:1px solid #dce6f2 !important;
}
.rx-file-name{
  font-size:14px !important;
  max-width:245px !important;
}
.rx-file-size{
  font-size:12px !important;
}
.receiver-download-btn{
  min-width:108px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#1677ff !important;
  border-color:#1677ff !important;
  color:#fff !important;
  font-weight:900 !important;
  border-radius:12px !important;
  box-shadow:0 8px 18px rgba(22,119,255,.22);
}
.receiver-panel .share-row{
  margin-top:16px !important;
  gap:8px !important;
}
.receiver-panel .share-chip{
  min-height:38px;
  font-weight:700;
}

@media(max-width:1100px){
  .receiver-panel{
    width:min(460px,92vw);
    min-width:0;
  }
}
@media(max-width:560px){
  .sender-link-box{
    grid-template-columns:1fr;
  }
  .sender-copy-main{
    width:100%;
  }
  .receiver-panel{
    padding:22px !important;
  }
  .rx-file{
    align-items:flex-start !important;
    flex-direction:column;
  }
  .receiver-download-btn{
    width:100%;
  }
}


/* V10.3.1 confirmed success/share state */
.sender-success-card{
  padding:22px !important;
  margin:0 !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid #d8e5f3 !important;
  box-shadow:0 20px 58px rgba(10,47,98,.18) !important;
}
.sender-success-top{display:flex;align-items:center;gap:12px}
.sender-success-top .sender-success-icon{margin:0 !important;flex:0 0 48px}
.sender-success-top h2{margin:3px 0 0 !important;font-size:22px !important}
#senderSuccessCard .sender-link-box{margin-top:4px}
#senderSuccessCard .send-another-btn{
  border:1px solid #d4dfec;
  background:#f8fbff;
  color:#17304f;
}


/* V10.4 premium transfer modal */
.upload-modal-backdrop{
  background:rgba(6,30,66,.42) !important;
  backdrop-filter:blur(8px) saturate(115%) !important;
  -webkit-backdrop-filter:blur(8px) saturate(115%) !important;
}
.upload-modal-card{
  width:min(340px,calc(100vw - 34px)) !important;
  border-radius:28px !important;
  padding:26px 24px 20px !important;
  border:1px solid rgba(255,255,255,.9) !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:
    0 30px 90px rgba(4,31,72,.32),
    0 1px 0 rgba(255,255,255,.95) inset !important;
  animation:gt-modal-in .28s cubic-bezier(.2,.8,.2,1);
}
.circular-progress{
  width:148px !important;
  height:148px !important;
  margin:2px auto 20px !important;
  background:
    conic-gradient(
      from -90deg,
      #1b71ff 0%,
      #21b7f3 calc(var(--progress) * 1%),
      #e9eef5 calc(var(--progress) * 1%),
      #e9eef5 100%
    ) !important;
  filter:drop-shadow(0 8px 18px rgba(24,113,255,.12));
  transition:background .18s linear;
}
.circular-progress:before{
  inset:7px !important;
  box-shadow:0 0 0 1px rgba(220,230,240,.7) inset;
}
.modal-percent{
  font-size:50px !important;
  font-weight:650 !important;
  letter-spacing:-3px !important;
  color:#0e1726 !important;
}
.modal-percent span{
  font-size:16px !important;
  color:#9aa7b8 !important;
  margin-left:3px !important;
}
.upload-modal-card h2{
  margin:0 0 7px !important;
  font-size:22px !important;
  font-weight:800 !important;
  color:#10213a !important;
}
.modal-linkish{
  max-width:250px;
  margin:0 auto 8px !important;
  display:block;
  color:#4a607d !important;
  text-decoration:none !important;
  font-size:12px !important;
  font-weight:700 !important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.modal-file-name:before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#20b77a;
  margin-right:7px;
  vertical-align:1px;
}
.modal-bytes{
  color:#708198 !important;
  font-size:12px !important;
  margin-bottom:5px !important;
}
.modal-eta{
  color:#9aa7b8 !important;
  font-size:12px !important;
  margin-bottom:20px !important;
}
.modal-actions{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
.modal-secondary{
  width:100%;
  height:42px !important;
  border-radius:13px !important;
  border:1px solid #d6e0ed !important;
  background:#f8fbff !important;
  color:#24405f !important;
  font-size:13px !important;
  font-weight:800 !important;
}
.modal-cancel{
  width:auto !important;
  height:auto !important;
  min-height:30px;
  border:0 !important;
  background:transparent !important;
  color:#8d99aa !important;
  font-size:12px !important;
  font-weight:700 !important;
  padding:6px 14px !important;
}
.modal-cancel:hover{color:#d14343 !important}
@keyframes gt-modal-in{
  from{opacity:0;transform:translateY(8px) scale(.97)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* V10.4 centered transfer link + copy button */
#senderSuccessCard .sender-link-box{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:9px !important;
  padding:12px !important;
}
#senderSuccessCard .sender-link-box input{
  width:100% !important;
  text-align:center !important;
  padding:5px 8px !important;
  font-size:12px !important;
}
#senderSuccessCard .sender-copy-main{
  width:150px !important;
  min-width:150px !important;
  height:42px !important;
  margin:0 auto !important;
  justify-self:center !important;
}


/* V10.5 premium success-card polish */
.sender-transfer-status-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:8px 0 10px;
  padding:8px 10px;
  border-radius:12px;
  background:#f7faff;
  border:1px solid #e2eaf4;
}
.sender-transfer-meta{
  font-size:11px;
  font-weight:800;
  color:#51657f;
}
.sender-verified{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:10px;
  font-weight:800;
  color:#129b69;
  white-space:nowrap;
}
.verified-dot{
  width:16px;
  height:16px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#e8fbf4;
  color:#10a36c;
  font-size:10px;
  font-weight:900;
}
#senderSuccessCard .sender-link-box{
  width:100%;
  box-sizing:border-box;
}
#senderSuccessCard .sender-link-box input{
  font-size:11px !important;
  color:#3f5674 !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#senderSuccessCard .sender-copy-main{
  border:0 !important;
  box-shadow:0 8px 18px rgba(21,111,255,.22) !important;
}
#senderSuccessCard .sender-share-grid .share-chip{
  gap:7px !important;
  border:1px solid #dfe7f1 !important;
  background:#fbfdff !important;
  color:#4c6079 !important;
  font-size:11px !important;
  font-weight:800 !important;
}
#senderSuccessCard .share-ico{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:#eef5ff;
  color:#176fff;
  font-size:11px;
  line-height:1;
}
#senderSuccessCard .send-another-btn{
  min-height:46px !important;
  border-radius:13px !important;
}
@media(max-width:420px){
  .sender-transfer-status-row{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* V11 admin hardening UI */
.admin-settings-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.admin-settings-grid label{
  display:flex;
  flex-direction:column;
  gap:7px;
  font-size:12px;
  font-weight:800;
  color:#405470;
}
.admin-span-2{grid-column:1/-1}
.admin-notice{
  padding:12px 14px;
  border-radius:12px;
  margin-bottom:14px;
  font-size:13px;
  font-weight:800;
}
.admin-notice.success{
  background:#eafbf4;
  color:#118b61;
  border:1px solid #c9efdf;
}
.admin-launch-health{margin-top:18px}
.admin-launch-health h2{margin:0 0 12px}
.admin-health-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.admin-health-grid>div{
  padding:14px;
  border:1px solid #e0e8f2;
  border-radius:14px;
  background:#fbfdff;
}
.admin-health-grid small{display:block;color:#7c8ba0;margin-bottom:5px}
.admin-health-grid strong{font-size:16px;color:#18324f}
@media(max-width:800px){
  .admin-settings-grid,.admin-health-grid{grid-template-columns:1fr}
  .admin-span-2{grid-column:auto}
}


/* V11.3 Campaign Manager */
.admin-notice.error{
  background:#fff0f0;
  color:#b42318;
  border:1px solid #f1c5c5;
}
.campaign-editor{margin-bottom:18px}
.campaign-editor-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:18px;
}
.campaign-editor-head h2{margin:0 0 4px}
.campaign-editor-head p{margin:0;color:#7a899c;font-size:12px}
.campaign-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.campaign-form-grid label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#41556f;
  font-size:12px;
  font-weight:800;
}
.campaign-span-2{grid-column:1/-1}
.campaign-preview-wrap{
  padding-top:4px;
}
.campaign-preview-title{
  margin-bottom:8px;
  font-size:12px;
  font-weight:900;
  color:#405570;
}
.campaign-preview{
  position:relative;
  width:min(760px,100%);
  aspect-ratio:8/5;
  border-radius:18px;
  overflow:hidden;
  background:#0c376c;
  box-shadow:0 16px 38px rgba(16,50,91,.14);
}
.campaign-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.campaign-preview:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(7,24,50,.72));
}
.campaign-preview-chip{
  position:absolute;
  z-index:2;
  left:14px;
  top:14px;
  padding:7px 9px;
  border-radius:999px;
  background:rgba(8,24,49,.65);
  color:#fff;
  font-size:10px;
}
.campaign-preview-copy{
  position:absolute;
  z-index:2;
  left:18px;
  right:18px;
  bottom:16px;
  color:#fff;
}
.campaign-preview-copy strong{
  display:block;
  font-size:22px;
  margin-bottom:4px;
}
.campaign-preview-copy span{
  display:block;
  max-width:650px;
  font-size:12px;
  line-height:1.45;
  opacity:.92;
}
.admin-btn.danger{
  color:#b42318;
  border-color:#f0c9c9;
  background:#fff7f7;
}
.admin-subtext{
  color:#7c8a9e;
  font-size:10px;
  margin-top:3px;
  line-height:1.4;
}
@media(max-width:760px){
  .campaign-form-grid{grid-template-columns:1fr}
  .campaign-span-2{grid-column:auto}
  .campaign-editor-head{flex-direction:column}
}


/* V11.4 5 GB free visibility */
.fivegb-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:6px 0 7px;
  padding:7px 10px;
  border-radius:999px;
  background:#edf5ff;
  border:1px solid #d3e5fb;
  color:#155fb8;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1px;
}
.fivegb-badge span{
  padding:3px 6px;
  border-radius:999px;
  background:#1677ff;
  color:#fff;
  font-size:9px;
  letter-spacing:.6px;
}
.success-5gb-reminder{
  margin-top:12px;
  padding:10px 12px;
  border-radius:13px;
  background:linear-gradient(135deg,#eef6ff,#f7fbff);
  border:1px solid #dbe8f6;
  text-align:center;
}
.success-5gb-reminder strong{
  display:block;
  color:#183a63;
  font-size:11px;
}
.success-5gb-reminder span{
  display:block;
  margin-top:2px;
  color:#7b8ba0;
  font-size:10px;
}

.receiver-5gb-promo{
  margin-top:18px;
  padding:14px;
  border-radius:16px;
  background:linear-gradient(135deg,#eef7ff,#f5fbff);
  border:1px solid #d6e8f8;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.receiver-5gb-promo strong{
  display:block;
  color:#153a63;
  font-size:12px;
  margin-bottom:3px;
}
.receiver-5gb-promo span{
  display:block;
  color:#74879d;
  font-size:11px;
  line-height:1.4;
}
.receiver-5gb-cta{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:11px;
  background:#1677ff;
  color:#fff !important;
  text-decoration:none;
  font-size:11px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(22,119,255,.18);
}
@media(max-width:560px){
  .receiver-5gb-promo{
    align-items:stretch;
    flex-direction:column;
  }
  .receiver-5gb-cta{
    width:100%;
  }
}


/* V11.5 stronger 5GB visibility */
.fivegb-promo-strip{
  display:flex;
  align-items:center;
  gap:11px;
  width:100%;
  box-sizing:border-box;
  margin:8px 0 12px;
  padding:11px 12px;
  border-radius:14px;
  background:linear-gradient(135deg,#126dff,#1eaaf0);
  box-shadow:0 10px 24px rgba(17,111,255,.20);
  color:#fff;
}
.fivegb-promo-icon{
  flex:0 0 34px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.25);
  font-size:18px;
  font-weight:900;
}
.fivegb-promo-copy{
  min-width:0;
}
.fivegb-promo-copy strong{
  display:block;
  font-size:13px;
  line-height:1.1;
  font-weight:950;
  letter-spacing:.25px;
}
.fivegb-promo-copy span{
  display:block;
  margin-top:4px;
  font-size:10.5px;
  line-height:1.35;
  color:rgba(255,255,255,.88);
}

/* V11.5 receiver 5GB promo prominence */
.receiver-5gb-promo{
  margin-top:18px !important;
  padding:16px !important;
  border-radius:17px !important;
  background:linear-gradient(135deg,#126dff,#18a8ed) !important;
  border:0 !important;
  box-shadow:0 12px 28px rgba(17,111,255,.20);
  color:#fff;
}
.receiver-5gb-copy{
  min-width:0;
}
.receiver-5gb-eyebrow{
  font-size:9px;
  font-weight:900;
  letter-spacing:1px;
  color:rgba(255,255,255,.78);
  margin-bottom:4px;
}
.receiver-5gb-promo strong{
  color:#fff !important;
  font-size:15px !important;
  line-height:1.1;
  margin-bottom:4px !important;
}
.receiver-5gb-promo span{
  color:rgba(255,255,255,.88) !important;
  font-size:10.5px !important;
}
.receiver-5gb-cta{
  min-width:112px !important;
  min-height:42px !important;
  padding:0 16px !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#126dff !important;
  box-shadow:0 8px 20px rgba(5,46,104,.18) !important;
}

/* V11.5 keep Download button inside file card */
.rx-file{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
  width:100% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  padding:14px !important;
}
.rx-file > div:first-child{
  min-width:0 !important;
  overflow:hidden !important;
}
.rx-file-name{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.receiver-download-btn{
  position:static !important;
  flex:none !important;
  min-width:100px !important;
  max-width:116px !important;
  width:auto !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:0 14px !important;
  white-space:nowrap !important;
}

@media(max-width:560px){
  .fivegb-promo-strip{
    padding:10px 11px;
  }
  .fivegb-promo-copy strong{
    font-size:12px;
  }
  .receiver-5gb-promo{
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .receiver-5gb-cta{
    width:100% !important;
  }
  .rx-file{
    grid-template-columns:1fr !important;
  }
  .receiver-download-btn{
    width:100% !important;
    max-width:none !important;
  }
}


/* V12 one-time Boost monetization */
.boost-upsell{margin:0 0 12px;position:relative}
.boost-toggle{
  width:100%;
  border:1px solid #d9e6f5;
  border-radius:14px;
  background:#fff;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  text-align:left;
}
.boost-toggle strong{
  display:block;
  color:#183755;
  font-size:11px;
  font-weight:900;
}
.boost-toggle small{
  display:block;
  color:#7a8da3;
  font-size:9.5px;
  margin-top:2px;
}
.boost-arrow{color:#1473ff;font-size:20px;line-height:1}
.boost-panel{
  position:absolute;
  z-index:40;
  left:0;right:0;
  top:calc(100% + 7px);
  padding:12px;
  border:1px solid #d7e4f3;
  border-radius:16px;
  background:#fff;
  box-shadow:0 20px 55px rgba(10,43,85,.22);
}
.boost-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.boost-panel-head strong{display:block;font-size:13px;color:#123454}
.boost-panel-head span{display:block;margin-top:2px;font-size:9.5px;color:#7d8da2}
.boost-panel-head button{border:0;background:transparent;font-size:20px;color:#8997aa;cursor:pointer}
.boost-products{display:grid;gap:7px}
.boost-product{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid #e0e8f2;
  background:#f9fbfe;
  border-radius:12px;
  padding:10px;
  cursor:pointer;
  text-align:left;
}
.boost-product:hover{border-color:#b9d6fa;background:#f3f8ff}
.boost-product strong{display:block;font-size:10.5px;color:#193956}
.boost-product small{display:block;font-size:9px;color:#7f8da0;margin-top:2px}
.boost-product b{font-size:13px;color:#126dff;white-space:nowrap}
.boost-note{
  margin-top:9px;
  padding-top:8px;
  border-top:1px solid #edf1f6;
  color:#8a98a9;
  font-size:9px;
  text-align:center;
}
.boost-loading{padding:12px;text-align:center;color:#8190a4;font-size:10px}


/* V12.2 PayPal Admin Settings */
.paypal-settings-card{margin-top:18px}
.paypal-settings-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
.paypal-settings-head h2{margin:0 0 4px}
.paypal-settings-head p{margin:0;color:#7b8a9e;font-size:12px}
.paypal-status-pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
}
.paypal-status-pill.on{background:#e9fbf3;color:#0a9562}
.paypal-status-pill.off{background:#f1f4f8;color:#728096}
.secret-field-wrap,.copy-field-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
}
.settings-help{
  color:#8795a8;
  font-size:10px;
  font-weight:500;
}
.paypal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
@media(max-width:620px){
  .paypal-settings-head{flex-direction:column}
  .secret-field-wrap,.copy-field-wrap{grid-template-columns:1fr}
}

/* V12.3 Country Analytics */
.country-top{align-items:center}.country-range{display:flex;gap:5px;padding:4px;border:1px solid #dde6f0;border-radius:12px;background:#fff}.country-range a{padding:8px 11px;border-radius:9px;color:#667991;text-decoration:none;font-size:10px;font-weight:800}.country-range a.active{background:#1677ff;color:#fff}.country-summary{margin-bottom:18px}.country-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.country-card-head h2{margin:0 0 4px}.country-card-head p{margin:0;color:#7b8b9f;font-size:11px}.country-name{display:flex;align-items:center;gap:10px}.country-flag{flex:0 0 auto;font-size:24px;line-height:1}.country-name strong{display:block;color:#173653}.country-name small{display:block;color:#8795a7;font-size:9px;margin-top:2px}.country-share{width:120px;max-width:100%;height:6px;border-radius:999px;overflow:hidden;background:#edf2f7;margin-bottom:4px}.country-share>div{height:100%;border-radius:999px;background:linear-gradient(90deg,#1677ff,#18a9ee)}.country-table td{vertical-align:middle}.dashboard-country-card{margin-top:18px}.dashboard-country-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.dashboard-country-row{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #e1e8f1;border-radius:13px;background:#fbfdff}.dashboard-country-row .country-flag{font-size:22px}.dashboard-country-row strong{display:block;color:#173653;font-size:11px}.dashboard-country-row small{display:block;color:#7d8da1;font-size:9px;margin-top:3px;line-height:1.35}@media(max-width:1000px){.dashboard-country-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.country-top,.country-card-head{align-items:stretch;flex-direction:column}.country-range{overflow:auto}.dashboard-country-list{grid-template-columns:1fr}}


/* V13 Premium Retention UX */
.returning-welcome{
  position:fixed;
  top:18px;
  left:50%;
  transform:translateX(-50%);
  z-index:60;
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(210,225,241,.9);
  box-shadow:0 14px 36px rgba(6,43,90,.15);
  backdrop-filter:blur(12px);
  color:#173a5f;
  font-size:11px;
  font-weight:800;
}
.returning-dot{
  width:20px;height:20px;border-radius:50%;
  display:grid;place-items:center;
  background:#e8fbf4;color:#0aa66d;font-size:11px;font-weight:900;
}
.install-glide-btn{
  min-height:38px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:12px;
  background:rgba(255,255,255,.94);
  color:#164b83;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(7,45,95,.12);
}
.trust-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin:8px 0 10px;
}
.trust-strip span{
  min-width:0;
  padding:7px 8px;
  border-radius:10px;
  background:#f4f8fc;
  border:1px solid #e1e9f2;
  color:#55708e;
  font-size:9px;
  font-weight:800;
  text-align:center;
}
.post-success-retention{
  margin-top:12px;
  padding:12px;
  border-radius:16px;
  border:1px solid #d8e7f6;
  background:linear-gradient(135deg,#f7fbff,#edf6ff);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px 11px;
  align-items:center;
}
.retention-mark{
  width:34px;height:34px;border-radius:11px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#1473ff,#20b7ed);
  color:#fff;font-weight:950;
  box-shadow:0 8px 18px rgba(20,115,255,.18);
}
.retention-copy strong{
  display:block;
  font-size:11px;
  color:#173b61;
}
.retention-copy span{
  display:block;
  margin-top:2px;
  color:#7a8da3;
  font-size:9.5px;
}
.retention-actions{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.retention-actions button,
.receiver-retention-note button{
  min-height:36px;
  border:1px solid #d6e3f1;
  border-radius:11px;
  background:#fff;
  color:#1a578f;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.receiver-retention-note{
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:14px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px;
  align-items:center;
  background:#f6faff;
  border:1px solid #dfeaf5;
}
.receiver-retention-note strong{
  font-size:10px;
  color:#294c70;
}
@media(max-width:640px){
  .trust-strip{grid-template-columns:1fr}
  .returning-welcome{
    max-width:calc(100vw - 28px);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .receiver-retention-note{
    grid-template-columns:1fr 1fr;
  }
  .receiver-retention-note strong{grid-column:1/-1}
}


/* V13.1 Retention layout bug fix */
.returning-welcome{
  position:absolute !important;
  top:82px !important;
  left:28px !important;
  transform:none !important;
  z-index:20 !important;
  max-width:270px !important;
  padding:7px 10px !important;
  font-size:9.5px !important;
  box-shadow:0 8px 22px rgba(6,43,90,.10) !important;
}
.post-success-retention[hidden]{
  display:none !important;
}
#senderSuccessCard .post-success-retention{
  margin:10px 0 0 !important;
  padding:9px 10px !important;
  border-radius:13px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:7px 9px !important;
  position:static !important;
  width:100% !important;
  box-sizing:border-box !important;
}
#senderSuccessCard .retention-mark{
  width:28px !important;
  height:28px !important;
  border-radius:9px !important;
  font-size:10px !important;
}
#senderSuccessCard .retention-copy strong{
  font-size:10px !important;
}
#senderSuccessCard .retention-copy span{
  font-size:9px !important;
}
#senderSuccessCard .retention-actions{
  grid-column:1/-1 !important;
  grid-template-columns:1fr 1fr !important;
  gap:6px !important;
}
#senderSuccessCard .retention-actions button{
  min-height:32px !important;
  font-size:9.5px !important;
}

/* Never let retention become a main layout/grid child */
.page-shell > .post-success-retention,
.campaign-layout > .post-success-retention,
main > .post-success-retention{
  display:none !important;
}

@media(max-width:700px){
  .returning-welcome{
    position:static !important;
    margin:8px 14px 0 !important;
    max-width:none !important;
  }
}


/* V13.1 strict hidden state — must come after success-card display rules */
#senderSuccessCard .post-success-retention[hidden],
.post-success-retention[hidden]{
  display:none !important;
}

/* V13.2 premium cleanup + admin restore */
.trust-strip,.returning-welcome{display:none !important}
.returning-inline{margin:0 0 7px;color:#6c819a;font-size:10px;font-weight:700}
.returning-inline[hidden]{display:none !important}
.install-glide-btn{
  display:inline-flex !important;align-items:center;justify-content:center;
  min-height:40px !important;padding:0 15px !important;border-radius:12px !important;
  border:1px solid rgba(255,255,255,.55) !important;background:rgba(255,255,255,.96) !important;
  color:#15518d !important;font-size:11px !important;font-weight:900 !important;
  cursor:pointer !important;white-space:nowrap;box-shadow:0 9px 24px rgba(7,45,95,.13) !important
}
.install-glide-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(7,45,95,.18) !important}
.fivegb-promo-strip{margin-top:4px !important}
.post-success-retention[hidden],#senderSuccessCard .post-success-retention[hidden]{display:none !important}
#senderSuccessCard .post-success-retention{position:static !important;width:100% !important;box-sizing:border-box !important}
.receiver-retention-note.compact{
  display:flex !important;align-items:center !important;justify-content:space-between !important;
  gap:10px !important;padding:9px 11px !important;border-radius:12px !important;
  background:#f7fbff !important;border:1px solid #e0eaf5 !important
}
.receiver-retention-note.compact span{color:#607b97;font-size:10px;font-weight:800}
.receiver-retention-note.compact button{min-height:32px !important;padding:0 11px !important;white-space:nowrap}
.admin-nav a[href="admin-countries.php"]{display:flex !important}


/* V13.3 Sender + Receiver Retention UX */
.sender-habit-line{
  margin:8px 2px 0;
  text-align:center;
  color:#607b97;
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.05px;
}
.sender-habit-line span{padding:0 4px;color:#b3c1d0}
.sender-success-copy strong{color:#173b61;font-weight:900}
.success-memory-cue{
  background:linear-gradient(135deg,#eef7ff,#f8fbff) !important;
  border-color:#d7e8f8 !important;
}
.success-memory-cue strong{
  font-size:12px !important;
  color:#125da9 !important;
  letter-spacing:-.1px;
}
.success-memory-cue span{font-size:9.5px !important}
.receiver-habit-note{
  margin-top:13px !important;
}
.receiver-habit-note span{
  min-width:0;
  line-height:1.35;
}
.receiver-habit-note span strong{
  color:#284d73;
  font-size:10px;
}
.receiver-habit-note button{
  flex:0 0 auto;
}
.receiver-convert-promo .receiver-5gb-eyebrow{
  letter-spacing:1.15px !important;
}
.receiver-convert-promo strong{
  font-size:14px !important;
  letter-spacing:-.1px;
}
.receiver-convert-promo span{
  line-height:1.35 !important;
}
@media(max-width:620px){
  .sender-habit-line{font-size:9px}
  .receiver-retention-note.compact.receiver-habit-note{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
  }
  .receiver-habit-note span{grid-column:1/-1}
  .receiver-habit-note button{width:100%}
}


/* V13.4.2 compact multi-file sender/receiver */
.file-summary-card{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);background:#fbfdff;border-radius:14px;padding:12px;margin-top:10px}
.file-summary-main{min-width:0;flex:1}.file-summary-count{font-weight:800;font-size:13px;color:#11243f}.file-summary-size{font-size:11px;color:var(--muted);margin-top:2px}.file-summary-preview{font-size:11px;color:#607086;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:6px}.file-summary-preview span{font-weight:800;color:#1877e8}.file-summary-actions{display:flex;gap:6px}.file-summary-actions button,.rx-view-files{border:1px solid #dbe5f2;background:#fff;color:#176fd1;border-radius:9px;padding:7px 9px;font-weight:800;font-size:10px;cursor:pointer}.summary-clear{color:#7b8797!important}
.files-modal,.rx-files-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}.files-modal.open,.rx-files-modal.open{display:flex}.files-modal-backdrop,.rx-files-backdrop{position:absolute;inset:0;background:rgba(4,18,39,.58);backdrop-filter:blur(4px)}.files-modal-card,.rx-files-dialog{position:relative;width:min(520px,94vw);max-height:min(650px,82vh);background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.28);overflow:hidden;display:flex;flex-direction:column}.files-modal-head,.rx-files-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid #e8eef6}.files-modal-head>div,.rx-files-head>div{display:flex;flex-direction:column;gap:2px}.files-modal-head strong,.rx-files-head strong{font-size:15px}.files-modal-head span,.rx-files-head span{font-size:11px;color:#7b8797}.files-modal-close,.rx-files-head button{border:0;background:#eff4fa;width:32px;height:32px;border-radius:10px;font-size:20px;cursor:pointer}.files-modal-list,.rx-list-modal{overflow:auto;padding:10px 14px 16px}.files-modal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 4px;border-bottom:1px solid #edf1f6}.files-modal-row>div{min-width:0;display:flex;flex-direction:column}.files-modal-row strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.files-modal-row span{font-size:10px;color:#8a97a8;margin-top:2px}.files-modal-row button{border:0;background:#f3f6fa;color:#68778b;border-radius:8px;padding:6px 8px;font-size:10px;cursor:pointer}
.rx-view-files{display:block;margin:8px auto 12px;padding:8px 12px}.rx-list-modal{margin:0!important;max-height:55vh}.rx-files-dialog .rx-file{margin:7px 0}
@media(max-width:700px){.file-summary-card{align-items:flex-start;flex-direction:column}.file-summary-actions{width:100%}.file-summary-actions button{flex:1}}


/* V13.4.4 Share GlideTransfer referral prompt */
.share-glide-card{
  margin-top:10px;
  padding:11px 12px;
  border:1px solid #e3ebf4;
  border-radius:14px;
  background:#fff;
}
.share-glide-copy{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.share-glide-copy strong{font-size:11px;color:#284d73;font-weight:900;line-height:1.3}
.share-glide-copy span{font-size:9.5px;color:#7289a1;font-weight:750;line-height:1.35}
.share-glide-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.share-glide-btn{
  display:flex;align-items:center;justify-content:center;min-height:32px;padding:0 7px;
  border:1px solid #d9e5f1;border-radius:10px;background:#f8fbff;color:#245a8f !important;
  font-size:9.5px;font-weight:900;text-decoration:none;transition:.15s ease;white-space:nowrap
}
.share-glide-btn:hover{background:#eef6ff;border-color:#bfd8ef;transform:translateY(-1px)}
@media(max-width:520px){
  .share-glide-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .share-glide-btn{min-height:34px}
}


/* V13.4.5 sender Share GlideTransfer visibility hardening */
#senderSuccessCard #shareGlideSection,
#senderSuccessCard .share-glide-card{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:static !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:10px 0 0 !important;
  padding:9px 10px !important;
}
#senderSuccessCard .share-glide-copy{margin-bottom:7px !important}
#senderSuccessCard .share-glide-actions{gap:5px !important}
#senderSuccessCard .share-glide-btn{min-height:30px !important;padding:0 5px !important;font-size:9px !important}


/* V13.4.6 receiver growth-share consistency */
.receiver-panel .receiver-growth-share{
  margin-top:10px;
  padding:10px;
  border-radius:14px;
  background:#f7fbff;
  border:1px solid #d7e7f5;
}
.receiver-panel .receiver-growth-share .share-glide-copy{margin-bottom:7px}
.receiver-panel .receiver-growth-share .share-glide-copy strong{font-size:10.5px}
.receiver-panel .receiver-growth-share .share-glide-copy span{font-size:9px}
.receiver-panel .receiver-growth-share .share-glide-actions{gap:5px}
.receiver-panel .receiver-growth-share .share-glide-btn{min-height:30px;padding:0 5px;font-size:8.8px}
@media (max-width:700px){
  .receiver-panel .receiver-growth-share .share-glide-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* V13.4.7 receiver growth-share CSS hardening */
.receiver-growth-share{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:10px 0 0 !important;
  padding:10px !important;
  border:1px solid #d7e7f5 !important;
  border-radius:14px !important;
  background:#f7fbff !important;
  overflow:hidden !important;
}
.receiver-growth-share .share-glide-copy{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  margin:0 0 8px !important;
}
.receiver-growth-share .share-glide-copy strong{
  display:block !important;
  color:#284d73 !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  line-height:1.3 !important;
}
.receiver-growth-share .share-glide-copy span{
  display:block !important;
  color:#7289a1 !important;
  font-size:9px !important;
  font-weight:750 !important;
  line-height:1.35 !important;
}
.receiver-growth-share .share-glide-actions{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:5px !important;
  width:100% !important;
}
.receiver-growth-share .share-glide-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  min-height:30px !important;
  padding:0 5px !important;
  border:1px solid #d9e5f1 !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#245a8f !important;
  font-size:8.8px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.receiver-growth-share .share-glide-btn:hover{
  background:#eef6ff !important;
  border-color:#bfd8ef !important;
}
@media(max-width:700px){
  .receiver-growth-share .share-glide-actions{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .receiver-growth-share .share-glide-btn{min-height:32px !important;}
}


/* V13.5 Storage & Cost */
.cost-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 26px;border-radius:20px;margin-bottom:18px;border:1px solid #dce5ee;background:#fff}.cost-hero small,.cost-hero span{display:block;color:#6f7d8e}.cost-hero strong{display:block;font-size:36px;line-height:1.05;margin:7px 0}.cost-budget{text-align:right;min-width:150px}.cost-budget b{font-size:26px;display:block}.cost-green{border-left:5px solid #1eaa73}.cost-yellow{border-left:5px solid #e4a11b}.cost-red{border-left:5px solid #dc4b4b}.cost-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-lines{display:grid;gap:0;margin:10px 0 18px}.cost-lines>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #edf1f5}.cost-lines span{color:#6f7d8e}.cost-lines b{text-align:right}@media(max-width:760px){.cost-hero{align-items:flex-start;flex-direction:column}.cost-budget{text-align:left}.cost-detail-grid{grid-template-columns:1fr}.cost-hero strong{font-size:30px}}

/* V13.6 campaign monetization */
.campaign-type-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em;background:#eef4ff;color:#174ea6}.campaign-type-badge.type-affiliate{background:#eefaf3;color:#167244}.campaign-type-badge.type-house{background:#f4f4f5;color:#52525b}

/* V13.6.2 Multi-campaign rotation */
.campaign-visual,
.story-panel{
  transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1),filter .65s ease;
}
.campaign-visual.campaign-is-transitioning{
  opacity:.26;
  transform:translateX(-8px) scale(.995);
  filter:saturate(.9);
}
.story-panel.campaign-is-transitioning{
  opacity:.22;
  transform:translateX(10px);
}
.campaign-rotation-indicators{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  border-radius:999px;
  background:rgba(4,20,45,.34);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  pointer-events:auto;
}
.campaign-rotation-dot{
  width:7px;
  height:7px;
  border:0;
  padding:0;
  border-radius:999px;
  background:rgba(255,255,255,.42);
  cursor:pointer;
  transition:width .22s ease,background .22s ease,transform .22s ease;
}
.campaign-rotation-dot:hover{transform:scale(1.18)}
.campaign-rotation-dot.is-active{
  width:22px;
  background:#fff;
}
.receiver-stage .campaign-rotation-indicators{bottom:16px}
@media (max-width:760px){
  .campaign-rotation-indicators{bottom:12px}
}
@media (prefers-reduced-motion:reduce){
  .campaign-visual,.story-panel,.campaign-rotation-dot{transition:none!important}
}

/* V13.6.4 Campaign rotation reliability */
.campaign-rotation-indicators{
  overflow:hidden;
  padding-top:9px;
}
.campaign-rotation-progress{
  position:absolute;
  left:8px;
  right:8px;
  top:4px;
  height:2px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.18);
  pointer-events:none;
}
.campaign-rotation-progress-bar{
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:rgba(255,255,255,.92);
  transform-origin:left center;
  transform:scaleX(0);
}
.campaign-rotation-progress-bar.is-running{
  animation:glideCampaignProgress var(--campaign-interval,10000ms) linear forwards;
}
@keyframes glideCampaignProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.rotation-pool-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:14px 16px;border:1px solid #dce5ee;border-radius:16px;background:#fff}.rotation-pool-card strong{font-size:15px}.rotation-pool-card span{color:#6f7d8e;font-size:12px}.rotation-pool-count{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:7px 11px;border-radius:999px;background:#eaf8f1;color:#14794b;font-weight:800;font-size:13px}
@media (prefers-reduced-motion:reduce){.campaign-rotation-progress-bar.is-running{animation:none!important;transform:scaleX(1)}}

/* V13.7.2 folder picker */
.picker-actions{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}
.folder-picker-btn{padding:11px 15px;border-radius:12px;background:#fff;color:#164b8f;border:1px solid #d4e1f0;font-weight:750;cursor:pointer}
.folder-picker-btn:hover{background:#f6faff;transform:translateY(-1px)}
.file-summary-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.files-modal-row strong{word-break:break-word}

/* V13.7.3 folder scan verification */
.file-summary-scan{margin-top:6px;font-size:11px;line-height:1.35;color:rgba(29,45,74,.62)}
.selection-status{margin:8px 0 0;padding:9px 11px;border-radius:10px;font-size:12px;line-height:1.45;border:1px solid transparent;background:#eef6ff;color:#24517a}
.selection-status.ok{background:#edf9f1;border-color:#cdebd6;color:#22633a}
.selection-status.warn{background:#fff8e8;border-color:#f3d79a;color:#805900}
.selection-status.error{background:#fff0f0;border-color:#f3c2c2;color:#a6231b}
