/* Laws Hub v1 — navy/gold/white, glass cards, accessible contrast */
.lw{--n:#0B1F3A;--n2:#13294d;--g:#C6A15B;--g2:#e7cf9a;--w:#fff}
.lw .lw-sub{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 18px}
.lw .lw-sub a{font-size:.82rem;padding:4px 10px;border-radius:999px;border:1px solid rgba(198,161,91,.55);text-decoration:none;color:inherit}
.lw .lw-sub a:hover,.lw .lw-sub a:focus-visible{background:var(--g);color:var(--n)}
.lw-head h1{letter-spacing:-.01em}.lw-lede{font-size:1.08rem;max-width:62ch}
.lw-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:18px 0}
.lw-card{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:16px;background:linear-gradient(160deg,rgba(11,31,58,.92),rgba(19,41,77,.86));color:#fff;text-decoration:none;border:1px solid rgba(198,161,91,.45);box-shadow:0 8px 24px rgba(11,31,58,.18);backdrop-filter:blur(8px)}
.lw-card b{color:var(--g2)}.lw-card span{font-size:.9rem;opacity:.92}
.lw-card:hover,.lw-card:focus-visible{border-color:var(--g);transform:translateY(-1px)}
.lw-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:10px 0}
.lw-filters label,.lw-calc label{display:flex;flex-direction:column;font-size:.85rem;gap:4px}
.lw-filters select,.lw-filters input,.lw-calc input,.lw-calc select{min-height:40px;padding:6px 10px;border-radius:10px;border:1px solid #8a7a55;font:inherit;max-width:100%}
.chip{min-height:36px;padding:4px 14px;border-radius:999px;border:1px solid var(--g);background:transparent;color:inherit;cursor:pointer;font:inherit}
.chip[aria-pressed=true]{background:var(--g);color:var(--n);font-weight:700}
.lw-feed{list-style:none;padding:0;display:grid;gap:10px}
.lw-feed li{padding:12px 14px;border-radius:12px;border:1px solid rgba(198,161,91,.4);background:rgba(198,161,91,.06)}
.lw-feed .t{font-weight:700;display:block}.lw-feed .m,.lw-fine,.lw-meta{font-size:.82rem;opacity:.85}
.lw-feed .s{margin:.3em 0}.lw-feed .lab{font-size:.75rem;font-style:italic;opacity:.8}
.lw-tag{display:inline-block;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--n);color:var(--g2);margin-right:6px}
.lw-mean{margin:18px 0;padding:14px 16px;border-left:4px solid var(--g);border-radius:10px;background:rgba(11,31,58,.05)}
.lw-mean h3{margin:0 0 6px;font-size:1rem}
.lw-tl{list-style:none;padding:0;border-left:2px solid var(--g);margin-left:6px}
.lw-tl li{position:relative;padding:0 0 18px 18px}.lw-tl li:before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--g)}
.lw-tl time{font-weight:700;margin-right:8px}.lw-tl p{margin:.3em 0}
.lw-stages{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.lw-stages li{padding:4px 10px;border-radius:999px;border:1px dashed #8a7a55;font-size:.82rem}
.lw-stages li.done{background:var(--n);color:#fff;border-style:solid}.lw-stages li.now{background:var(--g);color:var(--n);font-weight:700;border-style:solid}
.lw-bill,.lw-views{padding:14px 0;border-bottom:1px solid rgba(198,161,91,.3)}
.lw-calc{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:16px;border-radius:16px;border:1px solid rgba(198,161,91,.5);background:rgba(11,31,58,.04)}
.lw-calc output{grid-column:1/-1;font-size:1.05rem;padding:12px;border-radius:12px;background:var(--n);color:#fff}
.lw-calc output b{color:var(--g2)}
.lw-calc fieldset{grid-column:1/-1;border:1px solid rgba(198,161,91,.4);border-radius:10px}
.lw-list{padding-left:1.1em}.lw-list li{margin:.6em 0}.lw-steps li{margin:.5em 0}
.lw-gl dt{font-weight:700;margin-top:10px}.lw-gl dd{margin:2px 0 0}
.lw-path details{padding:10px 0;border-bottom:1px solid rgba(198,161,91,.3)}.lw-path summary{cursor:pointer}
.lw-map{display:grid;gap:4px;margin:12px 0;max-width:640px}
.lw-map button{aspect-ratio:1;border-radius:6px;border:1px solid rgba(198,161,91,.6);background:var(--n);color:#fff;font-size:.7rem;font-weight:700;cursor:pointer;padding:0}
.lw-map button.hot{background:var(--g);color:var(--n)}.lw-map button:focus-visible{outline:3px solid var(--g);outline-offset:2px}
.lw-mc{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}
.lw-mc input{min-height:40px;border-radius:10px;border:1px solid #8a7a55;padding:6px 10px;font:inherit}
.lw-disc{margin:28px 0 8px;padding:12px 14px;border-radius:12px;border:1px solid rgba(198,161,91,.5);font-size:.86rem}
.lw-people{columns:2;padding-left:1.1em}
@media (prefers-reduced-motion:reduce){.lw-card{transition:none;transform:none!important}}
