/* Case Court and Drafting Lab demos: extends law.css, law-learn.css and law-proc.css */
.lc-cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:20px}
.lc-bench{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;margin:10px 0 12px;padding:14px 18px;border-radius:18px;border:1px solid rgba(245,196,81,.5);background:linear-gradient(180deg,#3a2616,#24160c);box-shadow:inset 0 2px 0 rgba(255,255,255,.12),0 14px 34px rgba(0,0,0,.4)}
.lc-judge{font-size:3rem;width:74px;height:74px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,233,168,.4),rgba(245,196,81,.08));border:2px solid var(--gold);box-shadow:0 0 26px rgba(245,196,81,.35);animation:lxfloat 4s ease-in-out infinite}
.lc-say{position:relative;font-family:Georgia,serif;font-size:1.05rem;line-height:1.5;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:10px 14px;transition:background .3s}
.lc-say::before{content:"";position:absolute;left:-8px;top:50%;margin-top:-7px;border:7px solid transparent;border-right-color:rgba(255,255,255,.2);border-left:0}
.lc-say.good{background:rgba(25,230,161,.18);border-color:var(--em)}.lc-say.bad{background:rgba(255,77,109,.2);border-color:var(--ruby)}
.lc-hearts{display:flex;gap:4px;font-size:1.6rem}.lc-h{font-style:normal;color:rgba(255,255,255,.2)}.lc-h.on{color:var(--ruby);text-shadow:0 0 12px rgba(255,77,109,.7)}.lc-hearts.hit{animation:lxshake .45s}
.lc-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.lc-steps span{display:flex;align-items:center;gap:7px;font-size:.74rem;font-weight:700;color:var(--dim);background:var(--glass);border:1px solid var(--line);border-radius:99px;padding:5px 12px 5px 5px}.lc-steps i{font-style:normal;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12)}.lc-steps .now{color:#2a1800;background:linear-gradient(180deg,var(--gold2),var(--gold))}.lc-steps .now i{background:rgba(0,0,0,.18)}.lc-steps .done{color:var(--em)}.lc-steps .done i{background:var(--em);color:#04281c}
.lc-grid{display:grid;grid-template-columns:minmax(220px,.8fr) 1.4fr;gap:16px;align-items:start}
.lc-facts{margin-top:0}.lc-facts ol{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.lc-facts li{display:flex;gap:10px;align-items:flex-start;padding:9px 11px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.05);font-size:.9rem;line-height:1.55;transition:background .2s,border-color .2s,transform .2s}.lc-facts li span{flex:none;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#2a1800;font-weight:800;font-size:.72rem;display:flex;align-items:center;justify-content:center}
.lc-facts li[role=button]{cursor:pointer}.lc-facts li[role=button]:hover{transform:translateX(3px);border-color:var(--gold)}.lc-facts li.pick{background:rgba(245,196,81,.22);border-color:var(--gold);box-shadow:0 0 16px rgba(245,196,81,.25)}.lc-facts li.bad{background:rgba(255,77,109,.22);border-color:var(--ruby)}.lc-facts li.miss{border-color:var(--gold);border-style:dashed}.lc-facts li.key{background:rgba(25,230,161,.2);border-color:var(--em)}.lc-facts li.locked{cursor:default}
.lc-q{margin-top:0}.lc-memo{margin-top:16px}.lc-ml{padding:10px 0;border-top:1px solid var(--line)}.lc-ml:first-of-type{border-top:0}.lc-ml b{font-family:Georgia,serif;color:var(--gold)}.lc-ml p{margin:.2rem 0 0}
.ld-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:start}.ld-final{grid-template-columns:1.2fr .8fr}
.ld-paper{background:linear-gradient(180deg,#fffaf0,#f6ecd6);color:#2b2118;border-radius:6px;padding:22px 24px;box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 0 1px rgba(0,0,0,.25);font-family:Georgia,"Times New Roman",serif;position:relative;max-height:640px;overflow:auto}
.ld-paper::before{content:"";position:absolute;left:0;top:0;bottom:0;width:30px;border-right:2px solid rgba(190,60,60,.35);pointer-events:none}
.ld-head{text-align:center;font-weight:700;letter-spacing:.14em;font-size:.82rem;border-bottom:2px double #2b2118;padding:0 0 10px 30px;margin-bottom:14px}
.ld-clause{padding:6px 0 8px 36px}.ld-clause small{display:block;font-family:Inter,system-ui,sans-serif;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:#8a6d3b}.ld-clause p{margin:.15rem 0 0;font-size:.92rem;line-height:1.6;color:#2b2118!important}
.ld-clause.empty{opacity:.7}.ld-clause.empty.now{opacity:1;background:rgba(245,196,81,.2);border-radius:4px}.ld-ph i{display:block;height:7px;border-radius:4px;background:rgba(43,33,24,.14);margin:6px 30% 0 0}.ld-ph i+i{margin-right:50%}
.ld-clause.pop{animation:ldink .7s ease-out}@keyframes ldink{0%{background:rgba(245,196,81,.5);transform:translateX(-10px);opacity:.3}100%{background:transparent;transform:none;opacity:1}}
.ld-paper.signed::after{content:"";position:absolute;inset:0;pointer-events:none}
.ld-pick{margin-top:0}.ld-opts{display:grid;gap:10px;margin-top:8px}
.ld-opt{display:flex;gap:12px;align-items:flex-start;font:inherit;text-align:left;cursor:pointer;color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:12px 14px;font-size:.9rem;line-height:1.55;transition:transform .15s,border-color .2s,box-shadow .25s}
.ld-opt kbd{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:rgba(245,196,81,.15);border:1px solid rgba(245,196,81,.5);color:var(--gold);font-weight:800;opacity:1}
.ld-opt:hover:not(:disabled){transform:translateY(-2px);border-color:var(--gold)}.ld-opt.right{background:linear-gradient(180deg,rgba(25,230,161,.35),rgba(25,230,161,.14));border-color:var(--em)}.ld-opt.wrong{background:linear-gradient(180deg,rgba(255,77,109,.35),rgba(255,77,109,.12));border-color:var(--ruby);animation:lxshake .45s}.ld-opt.dim{opacity:.4}
.lawx .ld-opt span,.lawx .lc-facts li{color:#fff}
@media(max-width:860px){.lc-grid,.ld-grid,.ld-final{grid-template-columns:1fr}.lc-bench{grid-template-columns:auto 1fr}.lc-hearts{grid-column:1/-1}.lc-say::before{display:none}.ld-paper{max-height:none}}
