.td-page { min-height:100vh; }
.td-hero { max-width:860px; margin:0 auto; padding:56px 20px 22px; }
.td-eyebrow { color:#967238; font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; }
.td-hero h1 { margin:12px 0; line-height:1.05; }
.td-hero h1 em { font-style:normal; color:#c58a2a; }
.td-hero p { color:#81715b; max-width:560px; line-height:1.7; }
.td-main { max-width:860px; margin:0 auto; padding:10px 20px 70px; display:grid; gap:22px; }
.td-group { padding:22px; border:1px solid #cfbc96; background:#fffaf0cc; border-radius:6px; }
.td-group h2 { margin:0 0 14px; font-size:15px; letter-spacing:.06em; text-transform:uppercase; display:flex; align-items:center; gap:10px; color:#163958; }
.td-group h2 span { font-size:11px; padding:2px 8px; border-radius:20px; background:#163958; color:#ffe1a0; }
.td-group ul { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.td-item { display:flex; gap:12px; align-items:flex-start; padding:12px 14px; background:#fff; border:1px solid #e3d5b4; border-radius:4px; }
.td-item i { flex:none; width:10px; height:10px; margin-top:6px; border-radius:50%; background:#c9b78d; }
.td-progress .td-item i { background:#e0a21b; box-shadow:0 0 0 4px #e0a21b33; }
.td-done .td-item i { display:grid; place-items:center; width:16px; height:16px; margin-top:3px; background:#3d9a5f; }
.td-done .td-item i::after { content:"✓"; color:#fff; font:700 11px/1 system-ui,sans-serif; }
.td-done .td-item p { color:#8a8068; text-decoration:line-through; text-decoration-color:#3d9a5f; text-decoration-thickness:2px; }
.td-item p { margin:0; line-height:1.55; overflow-wrap:anywhere; white-space:pre-wrap; }
.td-empty { padding:28px; text-align:center; color:#81715b; border:1px dashed #cfbc96; border-radius:6px; }
@media(max-width:540px) { .td-hero { padding-top:34px; } .td-group { padding:16px; } }
