/* DocMate guide additions. Reuse the site's document layout, tokens and navigation. */
.docmate-guide { overflow-wrap:anywhere; }
.docmate-guide .legal-hero { background:linear-gradient(118deg,var(--aditi-surface-primary),var(--aditi-brand-orange-soft-4)); }
.docmate-guide .legal-hero__inner { width:min(1280px,calc(100% - 48px)); padding:48px 0; gap:40px; }
.docmate-guide .legal-hero__copy { max-width:830px; }
.docmate-guide .legal-hero h1 { font-size:clamp(2rem,3.5vw,3.25rem); line-height:1.15; letter-spacing:-.04em; }
.docmate-guide .legal-hero h1 span { color:var(--aditi-brand-orange-dark); }
.docmate-guide .legal-eyebrow { color:var(--aditi-text-secondary); margin-bottom:14px; }
.docmate-guide .legal-hero__intro { max-width:700px; margin:18px 0 22px; }
.docmate-guide .legal-shell { width:calc(100% - 20px); max-width:none; gap:10px; padding:10px 0 42px; grid-template-columns:280px minmax(0,1fr); }
.docmate-guide .legal-document { min-width:0; }
.docmate-guide .legal-section { padding:32px; }
.docmate-guide .legal-section :is(p,li) { font-size:1rem; line-height:1.75; }
.docmate-guide .legal-section h2 { display:block; font-size:clamp(1.45rem,2.5vw,1.8rem); line-height:1.3; }
.docmate-guide .legal-section h3 { font-size:1.125rem; }
.docmate-guide .legal-toc a { font-size:.875rem; min-height:44px; align-items:center; }
.docmate-guide .legal-toc a::before { color:var(--aditi-text-secondary); font-size:.75rem; }
.docmate-guide .legal-section a { color:var(--aditi-text-heading); text-decoration:underline; text-underline-offset:4px; }
.docmate-guide :is(a,button,summary):focus-visible { outline:3px solid var(--aditi-text-heading); outline-offset:4px; border-radius:4px; }
.docmate-guide .dm-kicker { color:var(--aditi-text-secondary); font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; font-weight:700; margin:0 0 10px; }
.docmate-guide .dm-route { color:var(--aditi-text-secondary); font-size:.875rem; padding:10px 14px; border-radius:8px; background:var(--aditi-surface-subtle); margin:0 0 22px; }
.docmate-guide .dm-hero-links { display:flex; flex-wrap:wrap; gap:12px; }
.docmate-guide .dm-hero-links a { display:inline-flex; gap:16px; justify-content:space-between; align-items:center; min-height:48px; padding:10px 18px; border:1px solid var(--aditi-border-default); border-radius:10px; background:var(--aditi-surface-primary); color:var(--aditi-text-heading); font-weight:700; text-decoration:none; }
.docmate-guide .dm-hero-links a:first-child { border-color:var(--aditi-brand-orange); box-shadow:inset 4px 0 var(--aditi-brand-orange); }
.docmate-guide .dm-hero-links a:hover { background:var(--aditi-brand-orange-soft); }
.docmate-guide .dm-hero-art { display:grid; place-items:center; gap:20px; flex:0 0 200px; padding:30px 20px; border:1px solid var(--aditi-brand-orange-border); border-radius:24px; background:var(--aditi-surface-glass-76); transform:rotate(3deg); }
.docmate-guide .dm-hero-art svg { width:84px; height:84px; color:var(--aditi-brand-orange); }
.docmate-guide .dm-hero-art span { color:var(--aditi-text-secondary); font-size:.75rem; font-weight:700; }
.docmate-guide :is(.dm-tab-grid,.dm-tool-grid) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0; }
.docmate-guide .dm-tab-grid > div { padding:18px; border-radius:12px; background:var(--aditi-surface-legal-blue); }
.docmate-guide .dm-tab-grid strong { color:var(--aditi-text-heading); }
.docmate-guide .dm-tab-grid p { font-size:.875rem; margin-top:6px; line-height:1.6; }
.docmate-guide .dm-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.docmate-guide .dm-tool-grid a { display:grid; gap:6px; padding:18px; border:1px solid var(--aditi-border-default); border-radius:12px; text-decoration:none; }
.docmate-guide .dm-tool-grid a:hover { border-color:var(--aditi-brand-orange); background:var(--aditi-brand-orange-soft-4); }
.docmate-guide .dm-tool-grid span { color:var(--aditi-text-secondary); font-size:.875rem; }
.docmate-guide ol.dm-steps { padding:0 0 0 1.5em; margin:22px 0; display:grid; gap:16px; }
.docmate-guide .dm-steps li { padding-left:8px; }
.docmate-guide .dm-steps li::before,.docmate-guide .dm-flow li::before { content:none; }
.docmate-guide .dm-steps li::marker { color:var(--aditi-text-heading); font-weight:800; }
.docmate-guide .dm-tip { margin:22px 0 0; padding:18px 20px; border-left:3px solid var(--aditi-brand-orange); border-radius:0 10px 10px 0; background:var(--aditi-brand-orange-soft-4); }
.docmate-guide code { font-size:.9em; white-space:normal; overflow-wrap:anywhere; color:inherit; }
.docmate-guide .dm-visual { margin:24px 0; padding:22px; border:1px solid var(--aditi-border-default); border-radius:14px; background:var(--aditi-surface-subtle); }
.docmate-guide .dm-flow { padding:0; margin:0; list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.docmate-guide .dm-flow li { padding:0; display:grid; gap:6px; align-content:start; }
.docmate-guide .dm-flow li > span { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:var(--aditi-surface-primary); border:1px solid var(--aditi-border-default); font-weight:700; color:var(--aditi-text-heading); }
.docmate-guide .dm-flow :is(strong,small) { font-size:.875rem; line-height:1.5; }
.docmate-guide figcaption { padding-top:16px; margin-top:16px; border-top:1px solid var(--aditi-border-default); color:var(--aditi-text-secondary); font-size:.8125rem; line-height:1.6; }
.docmate-guide .dm-equation { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; color:var(--aditi-text-heading); }
.docmate-guide .dm-equation > span { padding:14px; border:1px solid var(--aditi-border-default); border-radius:10px; background:var(--aditi-surface-primary); text-align:center; font-weight:700; }
.docmate-guide .dm-equation small { font-weight:400; font-size:.8125rem; }
.docmate-guide details { border-bottom:1px solid var(--aditi-border-default); padding:4px 0; }
.docmate-guide summary { padding:16px 4px; min-height:44px; cursor:pointer; font-weight:700; color:var(--aditi-text-heading); }
.docmate-guide details p { padding:0 4px 20px; }
.docmate-guide .dm-support { margin:28px 0; padding:24px; background:var(--aditi-surface-legal-blue); border-radius:12px; }
.docmate-guide .dm-support h3 { margin-top:0; }
.docmate-guide .dm-support a { display:inline-block; padding:12px 0; font-weight:700; }
.docmate-guide .dm-related { line-height:2.2; }
@media(max-width:960px) {
 .docmate-guide .legal-shell { grid-template-columns:1fr; gap:10px; }
 .docmate-guide .dm-hero-art { display:none; }
 .docmate-guide .legal-toc h2 { font-size:1rem; }
}
@media(max-width:600px) {
 .docmate-guide .legal-hero__inner { width:calc(100% - 32px); padding:32px 0; }
 .docmate-guide .legal-shell { width:calc(100% - 10px); gap:5px; padding:5px 0 32px; }
 .docmate-guide .legal-section { padding:24px 20px; }
 .docmate-guide :is(.dm-tab-grid,.dm-tool-grid,.dm-flow) { grid-template-columns:1fr; }
 .docmate-guide .dm-flow li { grid-template-columns:32px 1fr; column-gap:12px; }
 .docmate-guide .dm-flow li > span { grid-row:1 / 3; }
 .docmate-guide .dm-hero-links { display:grid; }
 .docmate-guide .dm-visual { padding:16px; }
}
@media print {
 .docmate-guide .legal-hero__inner,.docmate-guide .legal-shell { width:100%; padding:12px 0; }
 .docmate-guide .legal-shell { display:block; }
 .docmate-guide .legal-document { border:0; box-shadow:none; }
 .docmate-guide .legal-section { padding:16px 0; }
 .docmate-guide :is(.dm-hero-links,.dm-hero-art,.dm-related) { display:none; }
 .docmate-guide details::details-content { content-visibility:visible; }
 .docmate-guide details p { display:block; }
 .docmate-guide figure,.docmate-guide .dm-tip { break-inside:avoid; }
}
