/* Round 137 — Advanced Training Modules. tr- prefix; reuses gp- tokens from growth.css. Mobile first, dark mode aware. */
.tr-grid{display:grid;gap:14px;grid-template-columns: minmax(0, 1fr)}
@media(min-width:720px){.tr-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.tr-grid{grid-template-columns:1fr 1fr 1fr}}
.tr-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.tr-card .gp-bar{margin-top:auto}
.tr-mini{margin:4px 0 10px;padding-left:20px;font-size:14px;color:var(--color-text-muted,#6b5a52)}
.tr-mini li{margin:2px 0}
.tr-why{margin:0 0 8px;font-size:13.5px;color:#B8341A;font-weight:600}
.tr-prog{margin-top:6px}.tr-prog small{display:block;margin-top:6px}
.tr-continue{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;flex-wrap:wrap}
.tr-continue h3{font-size:19px}
.tr-go{min-height:auto;padding:9px 18px;white-space:nowrap}
.tr-out{margin:0;padding-left:20px}.tr-out li{margin:6px 0}
.tr-lessons{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tr-les{display:flex;gap:12px;align-items:flex-start;background:var(--color-surface,#fff);border:1px solid var(--color-border,#EADFD7);border-radius:16px;padding:14px 16px}
.tr-les--locked_seq,.tr-les--locked_pro{opacity:.72}
.tr-les--done{border-color:#BFE3CF;background:#F4FBF7}
.tr-n{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:#FDE4D6;color:#B8341A;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.tr-les--done .tr-n{background:#1D6A4A;color:#fff}
.tr-title{font-weight:700;font-size:16.5px;color:inherit;text-decoration:none;display:inline-block}
a.tr-title:hover{text-decoration:underline}
.tr-builds{color:#8a5a45;display:block;margin-top:4px;font-size:13px}
.tr-outline{padding-left:22px}.tr-outline li{margin:12px 0}
.tr-lesson h2{font-family:var(--font-display);font-size:21px;margin:26px 0 10px}
.tr-head h1{font-family:var(--font-display);font-size:clamp(24px,4.4vw,34px);line-height:1.15;margin:6px 0 8px}
.tr-obj{margin:0 0 12px;color:var(--color-text-muted,#6b5a52);font-size:16.5px}
.tr-dots{display:flex;gap:6px}.tr-dots i{flex:1;height:6px;border-radius:99px;background:#F1E7E0}.tr-dots i.on{background:#1D6A4A}.tr-dots i.cur{background:linear-gradient(90deg,#F0613D,#D9411E)}
.tr-builds-box{margin:14px 0 4px;padding:12px 14px;border-left:4px solid #D9411E;background:#FFF3E6;border-radius:0 12px 12px 0;font-size:15px}
.tr-intro{font-size:17.5px;line-height:1.6;margin:14px 0}
.tr-idea{display:flex;gap:14px;align-items:flex-start;margin:10px 0}
.tr-idea h3{font-size:17px;margin:0 0 4px}.tr-idea p{margin:0}
.tr-steps{padding-left:22px}.tr-steps li{margin:9px 0;line-height:1.55}
.tr-traps li{margin:8px 0;line-height:1.55}
.tr-practice{background:linear-gradient(160deg,#FFF8EE,#FFF1E3);margin-top:22px}
.tr-practice ol{margin:8px 0 0;padding-left:22px}.tr-practice li{margin:7px 0}
.tr-age{border:1px solid var(--color-border,#EADFD7);border-radius:12px;padding:10px 14px;margin:8px 0;background:var(--color-surface,#fff)}
.tr-age summary{cursor:pointer;font-weight:700}.tr-age p{margin:8px 0 2px}
.tr-take{margin:26px 0;padding:18px 20px;border-radius:18px;background:#2A1A14;color:#FBF3EC;display:grid;gap:4px}
.tr-take span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#FFB59B;font-weight:700}.tr-take b{font-size:19px;line-height:1.35;font-family:var(--font-display)}
.tr-q{border:0;padding:0;margin:0 0 18px;min-width:0}
.tr-q legend{font-weight:700;margin-bottom:8px;padding:0;line-height:1.45}
.tr-opt{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;margin:7px 0;border:1.5px solid var(--color-border,#EADFD7);border-radius:12px;cursor:pointer;line-height:1.45;background:var(--color-surface,#fff)}
.tr-opt input{margin-top:4px;flex:0 0 auto}
.tr-opt:has(input:checked){border-color:#D9411E;background:#FFF3E6}
.tr-opt.good{border-color:#1D6A4A;background:#E3F3EA}.tr-opt.bad{border-color:#B8341A;background:#FDE4D6}
.tr-why-out{font-size:14.5px;margin-top:6px;line-height:1.5}.tr-why-out.ok{color:#1D6A4A}.tr-why-out.err{color:#B8341A}
.tr-note{display:grid;gap:6px;margin:6px 0 4px;font-weight:600}
.tr-note textarea{width:100%;font:inherit;font-weight:400;padding:10px 12px;border-radius:12px;border:1.5px solid var(--color-border,#EADFD7);background:var(--color-surface,#fff);color:inherit;resize:vertical;box-sizing:border-box}
.tr-msg{min-height:20px;margin:10px 0 0;font-weight:600}.tr-msg.ok{color:#1D6A4A}.tr-msg.err{color:#B8341A}
.tr-done{margin-top:12px;padding:14px 16px;border-radius:14px;background:#E3F3EA;color:#14573b;font-weight:700;line-height:1.6}
.tr-done[hidden],#tr-next[hidden]{display:none}
.tr-nav{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;margin:22px 0 4px}
.tr-nav .btn{max-width:100%;white-space:normal;text-align:center}
/* dark mode */
:root[data-theme='dark'] .tr-les{background:#241d19;border-color:#4a3a32}
:root[data-theme='dark'] .tr-les--done{background:#1d2a23;border-color:#2f5a45}
:root[data-theme='dark'] .tr-n{background:#4A3128;color:#FFB59B}
:root[data-theme='dark'] .tr-builds-box{background:#2c2420}
:root[data-theme='dark'] .tr-builds{color:#e0b4a0}
:root[data-theme='dark'] .tr-practice{background:#2c2420}
:root[data-theme='dark'] .tr-opt,:root[data-theme='dark'] .tr-age,:root[data-theme='dark'] .tr-note textarea{background:#241d19;border-color:#4a3a32}
:root[data-theme='dark'] .tr-opt:has(input:checked){background:#3a2a22}
:root[data-theme='dark'] .tr-opt.good{background:#1d2a23}:root[data-theme='dark'] .tr-opt.bad{background:#3a2420}
:root[data-theme='dark'] .tr-dots i{background:#4a3a32}
:root[data-theme='dark'] .tr-done{background:#1d2a23;color:#9fe0bf}
:root[data-theme='dark'] .tr-why{color:#FFB59B}
/* certificate */
.tr-cert-page{background:#F6EFE8;min-height:100vh}
.tr-cert-wrap{max-width:900px;margin:0 auto;padding:18px 16px 40px}
.tr-cert-actions{display:flex;gap:10px;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap}
.tr-cert{background:#fff;border-radius:18px;padding:10px;box-shadow:0 10px 40px rgba(42,26,20,.12);border:2px solid #D9411E}
.tr-cert-in{border:1px solid #F3C9B5;border-radius:12px;padding:clamp(20px,5vw,52px) clamp(14px,4vw,44px);text-align:center;color:#2A1A14}
.tr-cert-emoji{font-size:44px;line-height:1}
.tr-cert-k{margin:10px 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#B8341A;font-weight:800}
.tr-cert-s{margin:8px 0;color:#5a443a}
.tr-cert-name{font-family:var(--font-display,Georgia,serif);font-size:clamp(28px,6vw,46px);margin:8px 0;line-height:1.1;overflow-wrap:anywhere}
.tr-cert-track{font-family:var(--font-display,Georgia,serif);font-size:clamp(20px,4vw,30px);margin:8px 0;color:#B8341A}
.tr-cert-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:30px;padding-top:14px;border-top:1px solid #F3C9B5;font-size:13px;color:#5a443a}
.tr-cert-fine{margin:12px 0 0;font-size:12px;color:#8a7468}
@media print{.tr-cert-actions{display:none}.tr-cert-page{background:#fff}.tr-cert{box-shadow:none}@page{size:landscape;margin:12mm}}
