:root{
  --paper:#FFFFFF;
  --paper-raised:#FFFFFF;
  --paper-line:#DCE1EA;
  --ink:#122140;
  --ink-soft:#54627C;
  --accent:#7C232F;
  --accent-deep:#571821;
  --accent-tint:#F3E1E4;
  --trust:#122140;
  --trust-tint:#E7EAF2;
  --gold:#122140;
  --shadow-soft:0 10px 30px rgba(18,33,64,0.08);
  --shadow-lift:0 16px 40px rgba(18,33,64,0.13);
  --font-display:'Fraunces', Georgia, serif;
  --font-mono:'IBM Plex Mono', 'Courier New', monospace;
  --font-body:'Work Sans', -apple-system, sans-serif;
  --radius-lg:24px;
  --radius-md:16px;
  --radius-sm:10px;
  --sp-xs:8px;
  --sp-sm:16px;
  --sp-md:24px;
  --sp-lg:40px;
  --fs-eyebrow:0.75rem;
  --fs-sm:0.9rem;
  --fs-base:1rem;
  --fs-md:1.125rem;
  --fs-lg:1.4rem;
  --fs-xl:1.75rem;
  --fs-xxl:2.2rem;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.01ms !important; transition-duration:0.01ms !important;}
}
body{
  background-color:#FFFFFF;
  background-image:radial-gradient(circle at 1px 1px, rgba(18,33,64,0.09) 1px, transparent 0);
  background-size:24px 24px;
  color:var(--ink);
  font-family:var(--font-body);
  line-height:1.6;
}
a{color:inherit;}
img{max-width:100%; display:block;}
.wrap{max-width:1080px; margin:0 auto; padding:0 24px;}
.eyebrow{
  font-family:var(--font-mono);
  font-size:var(--fs-eyebrow);
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--accent-deep);
}
h1,h2,h3{font-family:var(--font-display); font-weight:600; color:var(--ink); letter-spacing:-0.01em; line-height:1.25;}
h3{font-size:var(--fs-md);}
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-body);
  font-weight:600;
  font-size:0.92rem;
  padding:14px 26px;
  border:1.5px solid var(--ink);
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  text-decoration:none;
  cursor:pointer;
  transition:transform 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
.btn:hover{transform:translateY(-1px); box-shadow:var(--shadow-soft);}
.btn:focus-visible{outline:3px solid var(--gold); outline-offset:2px;}
.btn-solid{background:var(--accent); border-color:var(--accent); color:#fff;}
.btn-solid:hover{background:var(--accent-deep); border-color:var(--accent-deep); color:#fff;}

/* ===== MASTHEAD ===== */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--paper-line);
}
.masthead-top{padding:9px 0; border-bottom:1px solid var(--paper-line);}
.masthead-top .wrap{display:flex; justify-content:space-between; align-items:center; width:100%;}
.masthead-main{padding:16px 0;}
.masthead-main .wrap{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap;}
.org-name{font-family:var(--font-display); font-weight:600; font-size:var(--fs-md); text-decoration:none; color:var(--ink); display:flex; align-items:center; gap:10px;}
.org-name img{height:42px; width:auto; display:block;}
footer h3.footer-brand{display:flex; align-items:center; gap:10px;}
footer h3.footer-brand img{height:26px; width:auto; display:block;}
nav{display:flex; gap:26px; flex-wrap:wrap;}
nav a{
  font-size:var(--fs-sm); font-weight:500;
  text-decoration:none; color:var(--ink-soft);
  padding-bottom:3px; border-bottom:1.5px solid transparent;
  transition:color 0.15s ease, border-color 0.15s ease;
}
nav a:hover{color:var(--ink); border-bottom-color:var(--accent);}
nav a.active{color:var(--ink); border-bottom-color:var(--accent);}

/* ===== PAGE HEADER (páginas internas) ===== */
.page-hero{padding:48px 0 40px; border-bottom:1px solid var(--paper-line);}
.page-hero h1{font-size:var(--fs-xxl); max-width:640px; margin-top:var(--sp-xs);}
.page-hero p{color:var(--ink-soft); max-width:560px; margin-top:var(--sp-sm); font-size:var(--fs-base);}

/* ===== HERO / CASO (home) ===== */
.hero{padding:52px 0 68px;}
.file-card{
  background:var(--paper-raised);
  border:1px solid var(--paper-line);
  border-radius:var(--radius-lg);
  padding:var(--sp-lg) var(--sp-md);
  position:relative;
  box-shadow:var(--shadow-lift);
}
.file-header{
  display:flex; justify-content:space-between; align-items:flex-start;
  padding-bottom:16px; margin-bottom:20px;
  border-bottom:1px solid var(--paper-line);
  gap:16px; flex-wrap:wrap;
  padding-right:110px;
}
.file-label{font-family:var(--font-mono); font-size:0.72rem; color:var(--ink-soft);}
.file-label b{color:var(--ink);}
.file-card h1, .file-card h2{ padding-right:110px; }
@media (max-width:640px){
  .file-header, .file-card h1, .file-card h2{ padding-right:88px; }
}
.hero h1{font-size:var(--fs-xxl); line-height:1.18; margin:var(--sp-sm) 0 var(--sp-sm); max-width:560px;}
.hero p.lede{max-width:560px; color:var(--ink-soft); font-size:var(--fs-base); margin-bottom:var(--sp-md);}
.progress-block{margin:24px 0; max-width:560px;}
.progress-meta{display:flex; justify-content:space-between; font-size:var(--fs-sm); font-weight:500; margin-bottom:var(--sp-xs);}
.progress-track{height:12px; background:var(--paper); border:1px solid var(--paper-line); border-radius:999px; overflow:hidden;}
.progress-fill{height:100%; background:linear-gradient(90deg, var(--ink), #2C3F66); width:0%; border-radius:999px; transition:width 1.1s cubic-bezier(.2,.8,.2,1);}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:24px;}

.seal{
  position:absolute; top:32px; right:36px;
  width:104px; height:104px;
}
@media (max-width:640px){ .seal{width:74px; height:74px; top:20px; right:20px;} }

section{padding:72px 0;}
section:not(.hero):not(.page-hero){border-top:1px solid var(--paper-line);}
.section-head{margin-bottom:var(--sp-lg); max-width:640px;}
.section-head h2{font-size:var(--fs-xl); margin-top:var(--sp-xs);}

.about-grid{display:grid; grid-template-columns:1.3fr 0.9fr; gap:40px; align-items:start;}
.about-grid p{margin-bottom:14px; color:var(--ink-soft);}
.stat-block{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-md); padding:var(--sp-md); box-shadow:var(--shadow-soft);
}
.stat-row{display:flex; justify-content:space-between; padding:var(--sp-sm) 0; border-bottom:1px solid var(--paper-line); font-size:var(--fs-sm);}
.stat-row:last-child{border-bottom:none;}
.stat-row .num{font-family:var(--font-display); font-weight:600; font-size:var(--fs-md); color:var(--accent-deep);}
@media (max-width:820px){ .about-grid{grid-template-columns:1fr;} }

.pillars{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
.pillar{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-md); padding:var(--sp-md); box-shadow:var(--shadow-soft);
  transition:transform 0.15s ease, box-shadow 0.15s ease;
}
.pillar:hover{transform:translateY(-3px); box-shadow:var(--shadow-lift);}
.pillar-icon{
  width:44px; height:44px; border-radius:var(--radius-sm);
  background:var(--trust-tint); display:flex; align-items:center; justify-content:center;
  margin-bottom:var(--sp-sm);
}
.pillar-icon svg{width:22px; height:22px;}
.pillar .tag{font-family:var(--font-mono); font-size:0.7rem; color:var(--accent-deep); text-transform:uppercase; letter-spacing:0.08em;}
.pillar h3{margin:var(--sp-sm) 0 var(--sp-xs);}
.pillar p{color:var(--ink-soft); font-size:var(--fs-sm);}
@media (max-width:760px){ .pillars{grid-template-columns:1fr;} }

/* ===== COMO FUNCIONA ===== */
.process{display:grid; grid-template-columns:repeat(4,1fr); gap:0; counter-reset:step;}
.process-step{position:relative; padding:0 20px 0 0;}
.process-step:not(:last-child)::after{
  content:''; position:absolute; top:22px; right:-2px; width:calc(100% - 44px); height:1px;
  background:var(--paper-line);
}
.process-num{
  counter-increment:step;
  width:44px; height:44px; border-radius:50%;
  background:var(--ink); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-weight:600; font-size:1.05rem;
  margin-bottom:16px; position:relative; z-index:2;
}
.process-num::before{content:counter(step);}
.process-step h3{font-size:var(--fs-base); margin-bottom:var(--sp-xs);}
.process-step p{color:var(--ink-soft); font-size:var(--fs-sm);}
@media (max-width:820px){
  .process{grid-template-columns:1fr; gap:28px;}
  .process-step:not(:last-child)::after{display:none;}
}

/* ===== OTROS CASOS ===== */
.cases-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px;}
.case-card-soon{
  border:1.5px dashed var(--paper-line); border-radius:var(--radius-md);
  padding:var(--sp-md); display:flex; flex-direction:column; gap:var(--sp-xs);
  background:repeating-linear-gradient(135deg, rgba(18,33,64,0.02) 0px, rgba(18,33,64,0.02) 10px, transparent 10px, transparent 20px);
}
.case-card-soon .tag{
  font-family:var(--font-mono); font-size:0.68rem; text-transform:uppercase; letter-spacing:0.08em;
  color:var(--ink-soft); background:var(--trust-tint); display:inline-block; padding:4px 10px; border-radius:999px; width:fit-content;
}
.case-card-soon h3{font-size:var(--fs-base); color:var(--ink-soft); margin-top:var(--sp-xs);}
.case-card-soon p{color:var(--ink-soft); font-size:var(--fs-sm); opacity:0.85;}
@media (max-width:760px){ .cases-grid{grid-template-columns:1fr;} }

/* ===== BOTÓN FLOTANTE DE DONAR ===== */
.floating-donate{
  position:fixed; bottom:var(--sp-md); right:var(--sp-md); z-index:40;
  box-shadow:var(--shadow-lift);
}
@media (max-width:640px){
  .floating-donate{ left:var(--sp-sm); right:var(--sp-sm); bottom:var(--sp-sm); }
  .floating-donate .btn{ width:100%; justify-content:center; }
}

.transparency{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
.doc-list{list-style:none; background:var(--paper-raised); border:1px solid var(--paper-line); border-radius:var(--radius-md); padding:var(--sp-xs) var(--sp-md); box-shadow:var(--shadow-soft);}
.doc-list li{
  display:flex; justify-content:space-between; align-items:center;
  padding:var(--sp-sm) 0; border-bottom:1px solid var(--paper-line);
  font-size:var(--fs-sm);
}
.doc-list li:last-child{border-bottom:none;}
.doc-list li span.status{color:var(--trust); font-weight:600; background:var(--trust-tint); padding:3px 10px; border-radius:999px; font-size:0.8rem;}
@media (max-width:820px){ .transparency{grid-template-columns:1fr;} }

.donate-grid{display:flex; flex-wrap:wrap; justify-content:center; gap:18px;}
.donate-card{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-md); padding:var(--sp-md); display:flex; flex-direction:column; gap:var(--sp-sm);
  box-shadow:var(--shadow-soft);
  flex:0 1 calc(33.333% - 12px);
}
.donate-card .value{
  font-family:var(--font-mono); font-size:var(--fs-sm);
  background:var(--accent-tint); border:1px solid var(--paper-line);
  padding:10px 12px; border-radius:var(--radius-sm); color:var(--accent-deep);
}
.copy-btn{
  align-self:flex-start; font-size:0.8rem; font-weight:500;
  background:none; border:none; text-decoration:underline; cursor:pointer; color:var(--ink-soft); padding:0;
}
.donate-card-links{display:flex; gap:16px; flex-wrap:wrap;}
.qr-toggle{
  align-self:flex-start; font-size:0.8rem; font-weight:500;
  background:none; border:none; text-decoration:underline; cursor:pointer; color:var(--ink-soft); padding:0;
}
.qr-reveal{
  display:none; margin-top:6px; padding:var(--sp-sm);
  background:var(--paper); border:1px solid var(--paper-line); border-radius:var(--radius-sm);
  text-align:center;
}
.qr-reveal.open{display:block;}
.qr-reveal img{width:150px; height:150px; margin:0 auto 8px; border-radius:8px; object-fit:contain; background:#fff;}
.qr-reveal p{font-size:0.78rem; color:var(--ink-soft);}

/* ===== FONDO GENERAL ===== */
.general-fund{
  background:var(--trust-tint);
  border:1.5px solid var(--paper-line);
  border-radius:var(--radius-lg);
  padding:var(--sp-md);
  display:flex; flex-direction:column; gap:var(--sp-xs);
}
.general-fund h2{font-size:var(--fs-lg); margin:var(--sp-xs) 0 var(--sp-xs);}
.general-fund p{color:var(--ink-soft); font-size:var(--fs-sm); max-width:600px;}
.general-fund .hero-actions{margin-top:var(--sp-sm);}
@media (max-width:760px){ .donate-card{flex-basis:100%;} }

.donate-cta{
  background:var(--ink);
  border-radius:var(--radius-lg);
  padding:var(--sp-lg) var(--sp-md);
  text-align:center;
  color:#fff;
}
.donate-cta .eyebrow{color:var(--accent-tint);}
.donate-cta h2{color:#fff; font-size:var(--fs-xl); max-width:520px; margin:var(--sp-xs) auto var(--sp-sm);}
.donate-cta p{color:rgba(255,255,255,0.75); max-width:480px; margin:0 auto var(--sp-md); font-size:var(--fs-base);}
.donate-cta .btn-solid{background:#fff; color:var(--ink); border-color:#fff;}
.donate-cta .btn-solid:hover{background:var(--accent-tint); border-color:var(--accent-tint); color:var(--accent-deep);}
.donate-cta-actions{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
.donate-cta .btn:not(.btn-solid){border-color:rgba(255,255,255,0.5); color:#fff;}
.donate-cta .btn:not(.btn-solid):hover{background:rgba(255,255,255,0.1);}

.mission{text-align:center;}
.mission .wrap{max-width:760px;}
.mission-statement{
  font-family:var(--font-display); font-weight:500; font-style:italic;
  font-size:clamp(1.4rem, 3vw, 2rem); line-height:1.4; color:var(--ink);
  margin:var(--sp-sm) 0 var(--sp-lg);
}
.mission-chips{display:flex; justify-content:center; gap:12px; flex-wrap:wrap;}
.mission-chip{
  display:inline-flex; align-items:center; gap:8px;
  background:var(--trust-tint); border-radius:999px;
  padding:10px 18px; font-size:var(--fs-sm); font-weight:500; color:var(--ink);
}
.mission-chip .dot{width:7px; height:7px; border-radius:50%; background:var(--accent);}

.featured-cases-grid{display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-md); align-items:stretch;}
.featured-cases-grid .file-card{display:flex; flex-direction:column; height:100%;}
.featured-cases-grid .hero-actions{margin-top:auto; padding-top:var(--sp-sm);}
@media (max-width:900px){ .featured-cases-grid{grid-template-columns:1fr;} }

/* ===== GALERÍA DE FOTOS DE SOPORTE (pública) ===== */
.case-gallery{margin:4px 0 20px;}
.gallery-label{font-family:var(--font-mono); font-size:0.72rem; color:var(--ink-soft); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:8px;}
.case-gallery-row{display:flex; flex-wrap:wrap; gap:10px;}
.gallery-thumb{
  position:relative; width:92px; height:92px; border-radius:var(--radius-sm);
  overflow:hidden; border:1px solid var(--paper-line); background:var(--paper);
}
.gallery-thumb img{width:100%; height:100%; object-fit:cover; display:block; filter:none; transition:filter 0.25s ease; cursor:zoom-in;}
.gallery-thumb.is-blurred img{filter:blur(16px) brightness(0.85); cursor:default;}
.gallery-thumb .reveal-btn{
  position:absolute; inset:0; background:rgba(18,33,64,0.4); color:#fff;
  border:none; font-family:var(--font-body); font-size:0.68rem; font-weight:600;
  cursor:pointer; line-height:1.3; padding:8px;
}
.gallery-thumb.revealed .reveal-btn{display:none;}
.gallery-thumb.revealed img{cursor:zoom-in;}

/* ===== GESTIÓN DE FOTOS (panel admin) ===== */
.case-photos-panel{margin-top:12px; padding-top:12px; border-top:1px dashed var(--paper-line);}
.admin-photo-grid{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:12px;}
.admin-photo-thumb{position:relative; width:80px; height:80px; border-radius:var(--radius-sm); overflow:hidden; border:1px solid var(--paper-line);}
.admin-photo-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.admin-photo-thumb .del-photo{
  position:absolute; top:2px; right:2px; width:20px; height:20px; border-radius:50%;
  background:var(--accent-deep); color:#fff; border:none; font-size:0.7rem; cursor:pointer; line-height:1;
}
.admin-photo-thumb .sensitive-tag{
  position:absolute; bottom:0; left:0; right:0; background:rgba(18,33,64,0.7); color:#fff;
  font-size:0.6rem; text-align:center; padding:2px 0;
}

footer{background:var(--ink); color:var(--paper); padding:52px 0 30px; border-radius:var(--radius-lg) var(--radius-lg) 0 0; margin-top:20px;}
footer .wrap{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:32px;}
footer .foot-eyebrow{
  font-family:var(--font-mono); font-size:0.7rem; letter-spacing:0.1em; text-transform:uppercase;
  color:rgba(255,255,255,0.5); display:block; margin-bottom:14px;
}
footer h3{color:var(--paper); font-size:1.1rem; margin-bottom:10px; font-family:var(--font-display);}
footer p{color:rgba(255,255,255,0.72); font-size:var(--fs-sm);}
footer a{text-decoration:none; color:var(--paper); opacity:0.85;}
footer a:hover{opacity:1; text-decoration:underline;}
.foot-links{display:flex; flex-direction:column; gap:10px;}
.foot-link-row{display:flex; align-items:center; gap:10px; font-size:var(--fs-sm);}
.foot-link-row svg{width:16px; height:16px; flex-shrink:0; opacity:0.75;}
@media (max-width:760px){
  footer .wrap{grid-template-columns:1fr; gap:28px;}
}
.legal-line{font-family:var(--font-mono); font-size:0.72rem; opacity:0.55; margin-top:30px; border-top:1px solid rgba(255,255,255,0.14); padding-top:18px;}

.nav-toggle{display:none; font-family:var(--font-body); font-weight:600; background:none; border:1.5px solid var(--ink); padding:8px 14px; border-radius:999px; cursor:pointer;}
@media (max-width:760px){
  .nav-toggle{display:inline-block;}
  nav{display:none; flex-direction:column; gap:14px; width:100%; padding-top:14px;}
  nav.open{display:flex;}
  .masthead-main .wrap{flex-direction:column; align-items:flex-start;}
}

/* ============================================================
   PANEL DE ADMINISTRADOR
   ============================================================ */
.admin-login{
  min-height:80vh; display:flex; align-items:center; justify-content:center;
  padding:24px;
}
.admin-login-card{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-lg); padding:var(--sp-lg); box-shadow:var(--shadow-lift);
  width:100%; max-width:380px;
}
.admin-login-card h1{font-size:var(--fs-xl); margin-bottom:var(--sp-xs);}
.admin-login-card p{color:var(--ink-soft); font-size:var(--fs-sm); margin-bottom:var(--sp-md);}

.form-field{display:flex; flex-direction:column; gap:6px; margin-bottom:var(--sp-sm);}
.form-field label{font-size:var(--fs-sm); font-weight:500; color:var(--ink);}
.form-field input, .form-field textarea, .form-field select{
  font-family:var(--font-body); font-size:var(--fs-sm);
  padding:10px 12px; border:1.5px solid var(--paper-line); border-radius:var(--radius-sm);
  background:#fff; color:var(--ink);
}
.form-field input:focus, .form-field textarea:focus, .form-field select:focus{
  outline:none; border-color:var(--accent);
}
.form-field textarea{resize:vertical; min-height:90px;}
.form-error{color:var(--accent-deep); font-size:var(--fs-sm); margin-top:8px; min-height:1.2em;}
.form-success{color:var(--trust); font-size:var(--fs-sm); margin-top:8px; min-height:1.2em;}

.admin-shell{display:flex; min-height:calc(100vh - 60px);}
.admin-sidebar{
  width:220px; flex-shrink:0; border-right:1px solid var(--paper-line);
  padding:var(--sp-md) var(--sp-sm);
}
.admin-sidebar button{
  display:block; width:100%; text-align:left;
  padding:10px 12px; border-radius:var(--radius-sm); border:none; background:none;
  font-family:var(--font-body); font-size:var(--fs-sm); font-weight:500; color:var(--ink-soft);
  cursor:pointer; margin-bottom:4px;
}
.admin-sidebar button:hover{background:var(--trust-tint);}
.admin-sidebar button.active{background:var(--ink); color:#fff;}
.admin-sidebar .logout-btn{margin-top:var(--sp-lg); color:var(--accent-deep);}

.admin-main{flex:1; padding:var(--sp-lg); max-width:900px;}
.admin-main h2{font-size:var(--fs-xl); margin-bottom:var(--sp-xs);}
.admin-main > p.admin-hint{color:var(--ink-soft); font-size:var(--fs-sm); margin-bottom:var(--sp-md);}

.admin-panel{display:none;}
.admin-panel.active{display:block;}

.admin-form-card{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-md); padding:var(--sp-md); margin-bottom:var(--sp-md);
}
.admin-form-card h3{font-size:var(--fs-md); margin-bottom:var(--sp-sm);}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-sm);}
@media (max-width:640px){ .form-row{grid-template-columns:1fr;} }

.admin-list{display:flex; flex-direction:column; gap:10px;}
.admin-list-item{
  background:var(--paper-raised); border:1px solid var(--paper-line);
  border-radius:var(--radius-sm); padding:14px 16px;
  display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap;
}
.admin-list-item .item-info{flex:1; min-width:200px;}
.admin-list-item .item-title{font-weight:600; font-size:var(--fs-sm);}
.admin-list-item .item-meta{font-size:0.8rem; color:var(--ink-soft); margin-top:2px;}
.admin-list-item .item-actions{display:flex; gap:8px;}
.btn-sm{
  font-size:0.78rem; padding:7px 14px; border-radius:999px; border:1px solid var(--paper-line);
  background:#fff; cursor:pointer; font-weight:500;
}
.btn-sm.danger{color:var(--accent-deep); border-color:var(--accent-tint);}
.btn-sm:hover{background:var(--trust-tint);}

.upload-box{
  border:1.5px dashed var(--paper-line); border-radius:var(--radius-sm);
  padding:var(--sp-md); text-align:center; color:var(--ink-soft); font-size:var(--fs-sm);
}
.upload-box input[type="file"]{margin-top:10px;}
.url-copy-box{
  font-family:var(--font-mono); font-size:0.78rem; background:var(--accent-tint);
  padding:8px 10px; border-radius:var(--radius-sm); margin-top:8px; word-break:break-all;
}
