@import url("https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--brand:#1a1a2e;--brand-mid:#16213e;--accent:#0f4c75;--accent-bright:#1b6ca8;--accent-glow:#4a9fd4;--gold:#c9a84c;--gold-light:#e8c97a;--surface:#fff;--surface-2:#f8f9fc;--surface-3:#f0f2f8;--border:rgba(15,76,117,.12);--border-med:rgba(15,76,117,.22);--text-primary:#0d1b2a;--text-secondary:#4a5568;--text-tertiary:#8a96a8;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--font-display:"Syne",sans-serif;--font-body:"DM Sans",sans-serif;--status-force-bg:#e8f5e9;--status-force-text:#1b5e20;--status-proposed-bg:#fff8e1;--status-proposed-text:#e65100;--status-enacted-bg:#e3f2fd;--status-enacted-text:#0d47a1;--status-amended-bg:#fce4ec;--status-amended-text:#880e4f;--status-phased-bg:#f3e5f5;--status-phased-text:#4a148c;--status-draft-bg:#fafafa;--status-draft-text:#424242;--penalty-low-bg:#e8f5e9;--penalty-low-text:#2e7d32;--penalty-medium-bg:#fff8e1;--penalty-medium-text:#f57f17;--penalty-high-bg:#fbe9e7;--penalty-high-text:#bf360c;--penalty-criminal-bg:#fce4ec;--penalty-criminal-text:#880e4f}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);background:var(--surface-2);color:var(--text-primary);line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:var(--font-body)}.nav{background:var(--brand);padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:60px;position:-webkit-sticky;position:sticky;top:0;z-index:100;border-bottom:1px solid hsla(0,0%,100%,.06)}.nav-logo{font-family:var(--font-display);font-size:18px;font-weight:700;color:#fff;letter-spacing:-.02em}.nav-logo span{color:var(--gold)}.nav-links{display:flex;gap:1.5rem;align-items:center}.nav-links a{font-size:13px;color:hsla(0,0%,100%,.6);transition:color .15s;font-weight:400}.nav-links a.active,.nav-links a:hover{color:#fff}.nav-cta{background:var(--gold);color:var(--brand);border:none;border-radius:var(--radius-sm);padding:7px 16px;font-size:13px;font-weight:600;font-family:var(--font-display);transition:background .15s}.nav-cta:hover{background:var(--gold-light)}.tag{display:inline-block;font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;white-space:nowrap}.tag-juris{background:#e8eaf6;color:#283593}.tag-category{background:#e0f2f1;color:#00695c}.tag-biz{background:#e3f2fd;color:#0d47a1}.tag-regulator{background:#f3e5f5;color:#6a1b9a}.tag-asset{background:#fff8e1;color:#e65100}.tag-obligation{background:#fce4ec;color:#880e4f}.status-badge{display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;white-space:nowrap;font-family:var(--font-display);letter-spacing:.02em}.status-in-force{background:var(--status-force-bg);color:var(--status-force-text)}.status-proposed{background:var(--status-proposed-bg);color:var(--status-proposed-text)}.status-enacted{background:var(--status-enacted-bg);color:var(--status-enacted-text)}.status-amended{background:var(--status-amended-bg);color:var(--status-amended-text)}.status-phased{background:var(--status-phased-bg);color:var(--status-phased-text)}.status-draft{background:var(--status-draft-bg);color:var(--status-draft-text)}.penalty-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;font-family:var(--font-display)}.penalty-low{background:var(--penalty-low-bg);color:var(--penalty-low-text)}.penalty-medium{background:var(--penalty-medium-bg);color:var(--penalty-medium-text)}.penalty-high{background:var(--penalty-high-bg);color:var(--penalty-high-text)}.penalty-criminal{background:var(--penalty-criminal-bg);color:var(--penalty-criminal-text)}.filter-section-title{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-family:var(--font-display)}.filter-pill{display:inline-block;font-size:12px;padding:4px 10px;border-radius:20px;border:1px solid var(--border);cursor:pointer;margin:3px 3px 0 0;background:var(--surface);color:var(--text-secondary);transition:all .15s;font-family:var(--font-body)}.filter-pill:hover{border-color:var(--accent-bright);color:var(--accent-bright)}.filter-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.reg-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:10px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.reg-card:hover{border-color:var(--accent-bright);box-shadow:0 2px 12px rgba(15,76,117,.08)}.reg-card.expanded{border-color:var(--accent)}.btn-primary{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);padding:10px 22px;font-size:14px;font-weight:500;font-family:var(--font-display);transition:background .15s}.btn-primary:hover{background:var(--accent-bright)}.btn-outline{background:transparent;color:var(--text-secondary);border:1px solid var(--border-med);border-radius:var(--radius-md);padding:9px 20px;font-size:13px;font-family:var(--font-display);transition:all .15s}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.page-with-sidebar{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 60px)}.sidebar{background:var(--surface);border-right:1px solid var(--border);padding:1.5rem;overflow-y:auto}.main-content{padding:1.5rem 2rem}.search-wrap{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border-med);border-radius:var(--radius-lg);padding:11px 16px;margin-bottom:1.25rem;transition:border-color .15s}.search-wrap:focus-within{border-color:var(--accent-bright)}.search-wrap input{border:none;outline:none;background:transparent;font-size:14px;color:var(--text-primary);width:100%}.search-wrap input::placeholder{color:var(--text-tertiary)}.divider{height:1px;background:var(--border);margin:1.25rem 0}.empty-state,.loading-state{text-align:center;padding:3rem 1rem;color:var(--text-tertiary);font-size:14px}.loading-dots span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent-glow);margin:0 2px;animation:bounce 1.2s infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@media (max-width:768px){.page-with-sidebar{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border)}.nav-links{display:none}.main-content{padding:1rem}}