@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');:root{--ink:#2c2a29;--muted:#77716c;--line:#e7ded3;--accent:#9b7653;--accent-dark:#765638;--danger:#9a3f3f}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 10% 10%,rgba(155,118,83,.1),transparent 30%),radial-gradient(circle at 90% 90%,rgba(155,118,83,.08),transparent 30%),#f7f2eb;font-family:Inter,system-ui,sans-serif}h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.7rem,7vw,5rem);line-height:.95;margin:.25rem 0 1rem}p{line-height:1.6}.guest-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.card{width:min(720px,100%);background:rgba(255,253,249,.95);border:1px solid var(--line);box-shadow:0 20px 60px rgba(75,55,40,.1);border-radius:24px;padding:clamp(28px,7vw,64px);text-align:center}.eyebrow{letter-spacing:.25em;font-size:.72rem;font-weight:600;color:var(--accent)}.message{max-width:580px;margin:0 auto 30px;color:#514c48;font-size:1.05rem}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:28px}.detail{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff}.detail-wide{grid-column:1/-1}.label{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.detail strong{font-size:1.05rem}.extra{margin-top:24px;color:var(--muted)}.footer-note{margin-top:34px;color:var(--accent-dark);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.35rem}.hidden{display:none!important}.admin-shell{max-width:1500px;margin:0 auto;padding:28px}.admin-card{margin:10vh auto;max-width:500px;text-align:left}.admin-card h1{font-size:3rem}label{display:block;font-size:.8rem;font-weight:600;color:var(--muted);margin:16px 0}input{width:100%;padding:11px 12px;margin-top:6px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}button{border:0;border-radius:10px;padding:11px 15px;cursor:pointer;background:var(--accent);color:white;font-weight:600}button:hover{background:var(--accent-dark)}button.secondary{background:#eee7df;color:var(--ink)}.admin-header{display:flex;gap:20px;align-items:end;justify-content:space-between;margin-bottom:22px}.admin-header h1{font-size:3.6rem;margin-bottom:.2rem}.header-actions{display:flex;gap:8px;flex-wrap:wrap}.toolbar{display:flex;align-items:center;gap:15px;margin-bottom:12px}.toolbar input{max-width:420px;margin:0}.count{color:var(--muted);font-size:.9rem}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:white}table{width:100%;border-collapse:collapse;min-width:1150px}th,td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}th{background:#f8f3ed;position:sticky;top:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}td input{margin:0;min-width:110px}td .message-input{min-width:240px}td .id-input{min-width:120px;font-family:monospace;font-size:.8rem}.error{color:var(--danger);min-height:1.2em}.save-ok{color:#54704d;font-size:.8rem;margin-left:6px}@media(max-width:700px){.details{grid-template-columns:1fr}.detail-wide{grid-column:auto}.admin-shell{padding:14px}.admin-header{align-items:flex-start;flex-direction:column}}
/* Welcome page */
.welcome-box {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  min-height: 400px;
  max-width: 400px;
  margin: 28px auto 8px;
  display: grid;
  place-items: center;
}
.welcome-box img {
  position: absolute;
  width: 80%;
  height: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  object-position: center;
  opacity: 0.20;
}
.welcome-overlay{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;text-shadow:0 1px 10px rgba(255,253,249,.9)}
.countdown-label{font-size:.75rem;letter-spacing:.25em;font-weight:600;color:var(--accent-dark);margin-bottom:4px}
.days{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(7rem,22vw,12rem);font-weight:700;line-height:.8;color:var(--ink)}
.days-label{font-size:1rem;letter-spacing:.35em;font-weight:600;color:var(--accent-dark);margin-top:12px}
.inline-icon{display:inline-flex;align-items:center;margin:0 0 0 4px}.inline-icon svg{width:18px;height:18px}
@media(max-width:700px){.welcome-box{min-height:270px}.days{font-size:clamp(6rem,27vw,9rem)}}
