.lt-cascade { margin-top: 1.5rem; border: 1px solid #cbd5e1; border-radius: 14px; overflow: hidden; background: #fff; color: #0f172a; font-family:'Noto Serif Bengali','Noto Sans Bengali',sans-serif; }
.lt-cascade *, .lt-cascade *::before, .lt-cascade *::after { box-sizing:border-box; }
.dark .lt-cascade { background: #111827; color: #f8fafc; border-color: #475569; }
.lt-cascade-head { padding: 16px 18px; background: #f8fafc; border-bottom: 1px solid #cbd5e1; }
.dark .lt-cascade-head { background: #1f2937; border-color: #475569; }
.lt-cascade-head h3 { margin: 0 0 5px; font-size: 1.05rem; font-weight: 800; }
.lt-cascade-head h3 small { display:inline-block; margin-left:5px; padding:2px 7px; border-radius:999px; background:#dbeafe; color:#1d4ed8; font-size:.67rem; vertical-align:middle; }
.lt-cascade-head p { margin: 0; color: #475569; font-size: .88rem; line-height: 1.6; }
.dark .lt-cascade-head p { color: #cbd5e1; }
.lt-cascade-body { padding: 16px; }
.lt-cascade-select-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.lt-cascade-guide { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:13px; }
.lt-cascade-guide div { display:flex; align-items:center; gap:7px; padding:8px; border:1px solid #dbeafe; border-radius:8px; background:#fff; font-size:.74rem; font-weight:700; }
.dark .lt-cascade-guide div { background:#111827; border-color:#334155; }
.lt-cascade-guide b, .lt-cascade-section-title b { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; background:#2563eb; color:#fff; font-size:.75rem; }
.lt-cascade-section-title { display:flex; align-items:center; gap:8px; margin:0 0 4px; font-size:.95rem; font-weight:800; }
.lt-cascade-help { margin:0 0 10px; color:#64748b; font-size:.78rem; line-height:1.5; }
.lt-cascade-select, .lt-stage-heir { padding: 10px; border: 1px solid #dbe3ee; border-radius: 8px; background: #fff; }
.dark .lt-cascade-select, .dark .lt-stage-heir { background: #1f2937; border-color: #475569; }
.lt-cascade-select label, .lt-stage-heir > label { display: block; margin-bottom: 5px; font-size: .84rem; font-weight: 700; }
.lt-cascade-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.lt-cascade-inputs span { display: block; margin-bottom: 3px; color: #64748b; font-size: .72rem; }
.dark .lt-cascade-inputs span { color: #cbd5e1; }
.lt-cascade input { font-family:'Noto Serif Bengali','Noto Sans Bengali',sans-serif; }
.lt-cascade input[data-bn-number], .lt-node-name input { width: 100%; min-width: 0; padding: 7px 8px; border: 1px solid #94a3b8; border-radius: 6px; background: transparent; color: inherit; font-size:.88rem; }
.lt-cascade input[data-bn-number] { text-align:center; font-weight:700; }
.lt-cascade-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 12px; }
.lt-cascade-btn { border: 0; border-radius: 7px; padding: 8px 13px; background: #2563eb; color: #fff; font-weight: 700; cursor: pointer; }
.lt-cascade-btn:hover { background: #1d4ed8; }
.lt-cascade-btn-secondary { background:#475569; font-size:.78rem; }
.lt-cascade-btn-secondary:hover { background:#334155; }
.lt-stage-card { margin-top: 14px; padding: 14px; border: 1px solid #93c5fd; border-left: 4px solid #2563eb; border-radius: 9px; background: #f8fbff; }
.dark .lt-stage-card { background: #172033; border-color: #3b82f6; }
.lt-stage-card[data-religion=hindu] { border-color: #fdba74; border-left-color: #ea580c; background: #fffaf5; }
.dark .lt-stage-card[data-religion=hindu] { background: #2b1d17; border-color: #c2410c; }
.lt-stage-heading { display:flex; justify-content:space-between; gap:10px; margin-bottom:9px; }
.lt-stage-heading > div > span { display:inline-block; margin-bottom:4px; padding:2px 8px; border-radius:999px; background:#dbeafe; color:#1d4ed8; font-size:.7rem; font-weight:800; }
.lt-stage-card[data-religion=hindu] .lt-stage-heading > div > span { background:#ffedd5; color:#c2410c; }
.lt-stage-title { margin: 0 0 4px; font-size: 1rem; font-weight: 800; }
.lt-stage-meta { margin: 0 0 12px; color: #475569; font-size: .82rem; }
.dark .lt-stage-meta { color: #cbd5e1; }
.lt-node-name { display:block; margin:0 0 14px; padding:10px; border:1px solid #dbeafe; border-radius:8px; background:#fff; }
.dark .lt-node-name { background:#111827; border-color:#475569; }
.lt-node-name > span { display:block; margin-bottom:5px; font-size:.8rem; font-weight:800; }
.lt-node-name small { color:#64748b; font-weight:500; }
.lt-stage-heirs { display:block; }
.lt-stage-heir-group { margin-bottom:8px; border:1px solid #cbd5e1; border-radius:8px; overflow:hidden; background:#fff; }
.dark .lt-stage-heir-group { background:#111827; border-color:#475569; }
.lt-stage-heir-group > summary { position:relative; padding:10px 34px 10px 12px; color:#1d4ed8; font-size:.85rem; font-weight:800; cursor:pointer; list-style:none; }
.lt-stage-card[data-religion=hindu] .lt-stage-heir-group > summary { color:#c2410c; }
.lt-stage-heir-group > summary::after { content:'+'; position:absolute; right:12px; top:8px; font-size:1.15rem; }
.lt-stage-heir-group[open] > summary::after { content:'−'; }
.lt-stage-heir-group[open] > summary { border-bottom:1px solid #e2e8f0; background:#f8fafc; }
.dark .lt-stage-heir-group[open] > summary { background:#1f2937; border-color:#475569; }
.lt-stage-group-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:9px; }
.lt-cascade-error { margin-top: 10px; padding: 8px 10px; border-radius: 6px; background: #fef2f2; color: #b91c1c; font-size: .82rem; font-weight: 700; }
.lt-stage-results { margin-top: 12px; overflow-x: auto; }
.lt-stage-results table { width: 100%; border-collapse: collapse; font-size: .82rem; }
.lt-stage-results th, .lt-stage-results td { padding: 7px; border: 1px solid #cbd5e1; text-align: right; }
.lt-stage-results th:first-child, .lt-stage-results td:first-child { text-align: left; }
.lt-stage-results th { background: #dbeafe; color: #1e3a8a; }
.lt-stage-card[data-religion=hindu] .lt-stage-results th { background: #ffedd5; color: #9a3412; }
.lt-stage-pending { color: #b45309; font-weight: 700; }
.lt-prebranch-tools { margin-top:12px; padding:11px; border:1px dashed #60a5fa; border-radius:8px; }
.lt-prebranch-tools h5 { margin:0 0 3px; font-size:.88rem; font-weight:800; }
.lt-prebranch-tools > p { margin:0; color:#64748b; font-size:.75rem; }
.lt-prebranch { margin-top:9px; padding:9px; border:1px solid #bfdbfe; border-radius:7px; background:#eff6ff; }
.dark .lt-prebranch { background:#1e3a5f; border-color:#3b82f6; }
.lt-prebranch-title { display:flex; justify-content:space-between; align-items:center; margin-bottom:7px; font-size:.8rem; }
.lt-prebranch-title button { border:0; background:transparent; color:#dc2626; font-size:20px; cursor:pointer; }
.lt-prebranch-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.lt-prebranch-grid span { display:block; margin-bottom:3px; color:#64748b; font-size:.7rem; }
.lt-prebranch-wrap { margin-top:10px; border:1px dashed #94a3b8; border-radius:8px; }
.lt-prebranch-wrap > summary { padding:10px 12px; font-size:.8rem; font-weight:800; cursor:pointer; }
.lt-prebranch-wrap .lt-prebranch-tools { margin:0; border:0; border-top:1px dashed #94a3b8; border-radius:0; }
.lt-cascade-note { margin-top: 12px; padding: 9px 10px; border: 1px dashed #94a3b8; border-radius: 7px; color: #475569; font-size: .79rem; line-height: 1.55; }
.dark .lt-cascade-note { color: #d1d5db; }
.lt-cascade-legal { margin-top: 10px; font-size: .76rem; }
.lt-cascade-legal summary { color: #1d4ed8; font-weight: 800; cursor: pointer; }
.lt-cascade-legal div { margin-top: 6px; line-height: 1.6; }
.lt-cascade-legal a { color: #1d4ed8; text-decoration: underline; }
.dark .lt-cascade-legal summary, .dark .lt-cascade-legal a { color: #93c5fd; }
.lt-cascade-report-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:16px; padding:10px 12px; border-radius:9px; background:#ecfdf5; border:1px solid #a7f3d0; }
.lt-cascade-report-bar span { font-size:.8rem; font-weight:800; color:#065f46; }
.dark .lt-cascade-report-bar { background:#052e27; border-color:#047857; }
.dark .lt-cascade-report-bar span { color:#a7f3d0; }
.lt-cascade .hidden { display:none !important; }
@media(max-width:640px){.lt-cascade-select-grid,.lt-stage-group-grid,.lt-cascade-guide{grid-template-columns:1fr}.lt-cascade-body{padding:12px}.lt-cascade-report-bar{align-items:stretch;flex-direction:column}.lt-cascade-report-bar .lt-cascade-btn{width:100%}}
@media print { .lt-cascade { break-inside: avoid; } .lt-cascade-actions, .lt-stage-heirs, .lt-cascade-select-grid, .lt-cascade-note { display:none !important; } .lt-cascade-print-stage { margin: 0 0 12px; break-inside: avoid; } .lt-cascade-print-stage h4 { margin: 0 0 3px; font-size: 10.5pt; } .lt-cascade-print-stage p { margin: 0 0 6px; font-size: 9pt; } .lt-cascade-print table { width:100%; border-collapse:collapse; font-size:9pt; } .lt-cascade-print th,.lt-cascade-print td { border:1px solid #94a3b8; padding:5px; } .lt-cascade-print-refs { margin-top:8px; font-size:8pt; line-height:1.45; } }
