:root{--bg:#222;--text:#f4efe8;--muted:#aaa49b;--accent:#eee7dc;--line:#5b5751}.dap-shell{min-height:100svh;background:var(--bg);color:var(--text);font-family:Arial,sans-serif;position:relative;overflow:hidden}.dap-shell *{box-sizing:border-box}.dap-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:#ffffff1c;z-index:20}.dap-progress span{display:block;height:100%;background:var(--accent);width:0;transition:.3s}.dap-step{display:none;min-height:100svh;padding:70px 24px;align-items:center;justify-content:center}.dap-step.is-active{display:flex;animation:in .35s ease}@keyframes in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.dap-card{width:min(760px,100%)}.dap-card h2,.dap-intro h1{font-family:Georgia,serif;font-weight:400;line-height:1.15}.dap-card h2{font-size:clamp(32px,4vw,52px)}.dap-card input,.dap-card textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--text);font-size:23px;padding:15px 2px;outline:none}.dap-choices{display:grid;gap:12px}.dap-choices label{display:flex;gap:14px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:5px;cursor:pointer}.dap-choices label:hover,.dap-choices label:has(input:checked){border-color:var(--accent);background:#ffffff12}.dap-choices input{position:absolute;opacity:0}.dap-choices label span{border:1px solid var(--muted);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.dap-primary{border:0;background:var(--accent);color:#1d1d1c;padding:14px 22px;border-radius:4px;font-weight:700;cursor:pointer}.dap-back{border:0;background:transparent;color:var(--muted);padding:14px 0;display:block;cursor:pointer}.dap-actions{margin-top:26px;display:flex;gap:16px;align-items:center}.dap-error{color:#ffb6ad;min-height:22px;margin-top:12px}.dap-num{color:var(--muted);margin-bottom:18px}.dap-welcome{padding:0;grid-template-columns:1.15fr .85fr}.dap-welcome.is-active,.dap-thanks.is-active{display:grid}.dap-hero{height:100svh;background-size:cover;background-position:center}.dap-intro{padding:8vw}.dap-intro h1{font-size:clamp(42px,5vw,72px)}.dap-intro p{line-height:1.7;color:#d0cbc4;font-size:18px}.dap-wordmark{font-family:Georgia,serif;letter-spacing:.18em;font-size:22px}.dap-wordmark small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.4em;margin-top:8px}.dap-thanks{padding:0;grid-template-columns:1fr 1fr}.dap-thanks .dap-card{padding:8vw}@media(max-width:760px){.dap-welcome.is-active,.dap-thanks.is-active{display:block}.dap-hero{height:42svh}.dap-intro,.dap-thanks .dap-card{padding:38px 24px 80px}.dap-card h2{font-size:34px}}


/* v1.1 additions */
.dap-picture-choices{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.dap-picture-choices label{
  position:relative;
  display:block;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  overflow:hidden;
  cursor:pointer;
  background:rgba(255,255,255,.04);
  transition:.2s ease;
}
.dap-picture-choices label:hover,
.dap-picture-choices label.is-selected{
  border-color:#f1ece5;
  transform:translateY(-2px);
}
.dap-picture-choices input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.dap-picture-choices img{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}
.dap-picture-choice-copy{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:12px;
  color:#f2eee7;
  line-height:1.35;
}
.dap-picture-choice-copy span:first-child{
  display:inline-flex;
  width:24px;
  height:24px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:4px;
  align-items:center;
  justify-content:center;
  font-size:11px;
  flex:0 0 auto;
}
.dap-choices label.is-selected{
  border-color:#f1ece5!important;
  background:rgba(255,255,255,.09)!important;
}
@media(max-width:600px){
  .dap-picture-choices{grid-template-columns:1fr 1fr;gap:9px}
  .dap-picture-choice-copy{font-size:12px;padding:9px}
}
