/* All memory questions stay visible; the existing Google Form receives responses. */
.dtd-memory { --memory-purple:#4b3076; --memory-ink:#292334; --memory-muted:#71667c; width:100%; margin:0 auto; color:var(--memory-ink); }
.dtd-memory .dtd-memory-intro { max-width:780px; margin:0 0 36px; }
.dtd-memory .dtd-memory-intro p { font-size:clamp(20px,1.6vw,24px); line-height:1.55; margin:0 0 14px; }
.dtd-memory .dtd-memory-note { color:var(--memory-muted); font-size:16px; line-height:1.6; display:block; }
.dtd-memory .dtd-memory-form { display:grid; gap:24px; margin:0; padding:0; background:none; border:0; }
.dtd-memory .dtd-memory-section { display:grid; grid-template-columns:minmax(180px,.65fr) minmax(0,2fr); gap:clamp(28px,4vw,56px); min-width:0; margin:0; padding:clamp(28px,3vw,40px); border:1px solid #e4dcea; border-radius:20px; background:#fff; box-shadow:0 8px 28px rgba(46,28,74,.035); }
.dtd-memory .dtd-memory-section-heading { min-width:0; }
.dtd-memory .dtd-memory-section-icon { display:flex; width:48px; height:48px; justify-content:center; align-items:center; color:var(--memory-purple); background:#f3eef8; border-radius:12px; margin-bottom:18px; }
.dtd-memory .dtd-memory-section-heading h2 { font-size:clamp(27px,2.4vw,34px); font-weight:700; line-height:1.15; letter-spacing:-.025em; color:var(--memory-purple); margin:0 0 12px; }
.dtd-memory .dtd-memory-section-heading p { font-size:17px; line-height:1.5; color:var(--memory-muted); margin:0; max-width:245px; }
.dtd-memory .dtd-memory-section-body { min-width:0; }
.dtd-memory .dtd-memory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.dtd-memory .dtd-memory-identity { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.dtd-memory .dtd-memory-stack { display:grid; gap:28px; }
.dtd-memory .dtd-memory-field { min-width:0; }
.dtd-memory .dtd-memory-field label { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:6px 10px; font-size:19px; font-weight:600; line-height:1.4; margin:0 0 11px; color:var(--memory-ink); }
.dtd-memory .dtd-memory-field label > span:first-child { max-width:100%; }
.dtd-memory .dtd-memory-optional { color:var(--memory-muted); font-size:14px; font-weight:400; letter-spacing:0; }
.dtd-memory .dtd-memory-required { color:#8b5b14; font-size:18px; }
.dtd-memory .dtd-memory-field input,.dtd-memory .dtd-memory-field textarea { display:block; box-sizing:border-box; width:100%; max-width:none; min-height:56px; margin:0; padding:14px 16px; border:1px solid #cfc3dc; border-radius:10px; background:#fbf9fd; color:var(--memory-ink); font:inherit; font-size:18px; line-height:1.55; box-shadow:none; transition:border-color .15s,box-shadow .15s; }
.dtd-memory .dtd-memory-field textarea { min-height:164px; resize:vertical; }
.dtd-memory .dtd-memory-field input:hover,.dtd-memory .dtd-memory-field textarea:hover { border-color:#a28bb9; }
.dtd-memory .dtd-memory-field input:focus,.dtd-memory .dtd-memory-field textarea:focus { outline:none; border-color:var(--memory-purple); background:#fff; box-shadow:0 0 0 3px rgba(75,48,118,.12); }
.dtd-memory .dtd-memory-hint { font-size:15px; line-height:1.5; color:var(--memory-muted); margin:9px 0 0; }
.dtd-memory .dtd-memory-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-content:start; }
.dtd-memory .dtd-memory-option { display:flex; gap:12px; align-items:center; min-height:64px; padding:14px 16px; border:1px solid #dfd5e9; border-radius:10px; background:#fbf9fd; cursor:pointer; font-size:17px; line-height:1.45; }
.dtd-memory .dtd-memory-option:has(input:checked) { border-color:#a88bc5; background:#f1e9f9; }
.dtd-memory .dtd-memory-option input { width:21px; height:21px; min-width:21px; padding:0; margin:0; accent-color:var(--memory-purple); }
.dtd-memory .dtd-memory-option input:focus-visible { outline:2px solid var(--memory-purple); outline-offset:3px; }
.dtd-memory .dtd-memory-submit { display:flex; gap:28px; align-items:center; justify-content:space-between; margin:8px 0 0; padding:32px 40px; border:1px solid #e4dcea; border-radius:20px; background:#f5effa; }
.dtd-memory .dtd-memory-submit h2 { font-size:26px; line-height:1.25; letter-spacing:-.02em; color:var(--memory-purple); margin:0 0 8px; }
.dtd-memory .dtd-memory-submit p { font-size:15px; line-height:1.5; color:var(--memory-muted); margin:0; }
.dtd-memory .dtd-memory-submit button { display:inline-flex; justify-content:center; align-items:center; gap:12px; border:0; border-radius:10px; padding:17px 26px; min-height:58px; background:var(--memory-purple); color:#fff; font:inherit; font-size:19px; font-weight:700; white-space:nowrap; cursor:pointer; box-shadow:0 6px 16px rgba(75,48,118,.16); transition:background .15s; }
.dtd-memory .dtd-memory-submit button:hover { background:#362054; }
.dtd-memory .dtd-memory-submit button:focus-visible { outline:3px solid #cfa943; outline-offset:4px; }
.dtd-memory .dtd-memory-fallback { text-align:center; font-size:15px; line-height:1.6; color:var(--memory-muted); margin:28px 0 0; }
.dtd-memory .dtd-memory-fallback a { color:var(--memory-purple); text-decoration:underline; text-underline-offset:3px; }
@media(max-width:999px) {
 .dtd-memory .dtd-memory-section { grid-template-columns:1fr; gap:24px; }
 .dtd-memory .dtd-memory-section-heading { padding-bottom:22px; border-bottom:1px solid #e9e1ef; }
 .dtd-memory .dtd-memory-section-icon { display:inline-flex; vertical-align:middle; margin:0 13px 0 0; width:40px; height:40px; border-radius:10px; }
 .dtd-memory .dtd-memory-section-heading h2 { display:inline; vertical-align:middle; font-size:30px; }
 .dtd-memory .dtd-memory-section-heading p { margin-top:12px; max-width:none; }
 .dtd-memory .dtd-memory-submit { padding:28px; }
}
@media(max-width:767px) {
 .dtd-memory .dtd-memory-intro { margin-bottom:28px; }
 .dtd-memory .dtd-memory-form { gap:20px; }
 .dtd-memory .dtd-memory-section { padding:24px 20px; border-radius:16px; }
 .dtd-memory .dtd-memory-grid,.dtd-memory .dtd-memory-identity,.dtd-memory .dtd-memory-options { grid-template-columns:1fr; gap:20px; }
 .dtd-memory .dtd-memory-options { gap:12px; }
 .dtd-memory .dtd-memory-section-heading h2 { font-size:28px; }
 .dtd-memory .dtd-memory-section-heading p { font-size:16px; }
 .dtd-memory .dtd-memory-field label { font-size:18px; }
 .dtd-memory .dtd-memory-field input,.dtd-memory .dtd-memory-field textarea { font-size:17px; }
 .dtd-memory .dtd-memory-option { font-size:16px; }
 .dtd-memory .dtd-memory-submit { align-items:stretch; flex-direction:column; gap:22px; padding:24px 20px; border-radius:16px; }
 .dtd-memory .dtd-memory-submit h2 { font-size:25px; }
 .dtd-memory .dtd-memory-submit button { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .dtd-memory input,.dtd-memory textarea,.dtd-memory button { transition:none!important; } }
