.hub{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);padding:1rem .6rem}.sidebar ul{gap:.2rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.nav-link{border-radius:var(--radius-block);color:var(--muted);padding:.55rem .6rem;font-weight:600;display:block}.nav-link:hover,.nav-link:focus-visible{background:var(--soft);box-shadow:var(--ring);outline:none}.nav-link.active{background:var(--ink);color:#fff}.hub-main{flex-direction:column;display:flex}.topbar{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#ffffffeb;align-items:center;gap:.8rem;padding:.7rem 1.2rem;display:flex;position:sticky;top:0}.chip{border-radius:var(--radius-pill);border:1px solid var(--line);padding:.2rem .7rem;font-size:.8rem;font-weight:700}.chip-on{background:var(--accent);color:var(--ink);border-color:var(--accent)}.chip-off{background:var(--soft);color:var(--muted)}.hub-content{width:100%;max-width:1100px;padding:1.4rem}@media (max-width:820px){.hub{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--line)}.sidebar ul{grid-auto-flow:column;overflow-x:auto}.topbar{flex-wrap:wrap;gap:.5rem}}.stack{gap:1.2rem;display:grid}.req-list{gap:.7rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.req-item{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-top:.7rem;display:flex}.req-item:first-child{border-top:none;padding-top:0}.req-side{white-space:nowrap;align-items:center;gap:.7rem;display:flex}.summaries{grid-template-columns:repeat(3,1fr);gap:.8rem;display:grid}.summary strong{margin-top:.2rem;display:block}@media (max-width:820px){.summaries{grid-template-columns:1fr}.req-item{flex-direction:column;align-items:flex-start}}.rep{gap:.6rem;display:grid}.rep-overall strong{font-size:1.6rem;font-weight:800}.rep-overall-max{color:var(--muted)}.rep-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.rep-row{grid-template-columns:12rem 1fr 2rem;align-items:center;gap:.6rem;font-size:.9rem;display:grid}.rep-track{background:var(--soft-strong);border-radius:var(--radius-pill);height:.6rem;overflow:hidden}.rep-fill{background:var(--accent);height:100%;display:block}.rep-val{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.rating-panel{gap:.4rem;margin-top:.6rem;display:grid}.rating-row{grid-template-columns:12rem 1fr 1.5rem;align-items:center;gap:.6rem;font-size:.9rem;display:grid}.rating-done{color:var(--accent-deep);font-weight:700}@media (max-width:820px){.rep-row,.rating-row{grid-template-columns:1fr}}.member-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.8rem;display:grid}.member-card{gap:.3rem;display:grid}.member-card:hover{box-shadow:var(--ring)}.member-role{color:var(--muted);font-size:.85rem}.cand-list{gap:.7rem;display:grid}.cand-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.cand-card:hover{box-shadow:var(--ring)}.tracker{gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.tracker-dot{border:1px solid var(--line);width:1.7rem;height:1.7rem;color:var(--muted);border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid}.tracker-dot.current{background:var(--ink);border-color:var(--ink);color:#fff}.tracker-dot.done{background:var(--accent);border-color:var(--accent);color:var(--ink)}.group-list{gap:.8rem;display:grid}.group-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.profile-editor{gap:.5rem;display:grid}.profile-editor textarea,.profile-editor input{font:inherit;border:1px solid var(--line);border-radius:var(--radius-block);background:var(--surface);padding:.6rem .8rem}.link-row{grid-template-columns:1fr 2fr;gap:.5rem;display:grid}@media (max-width:820px){.link-row{grid-template-columns:1fr}}.debug{z-index:100;gap:.6rem;max-width:22rem;display:grid;position:fixed;bottom:1rem;right:1rem}.debug-group{flex-wrap:wrap;gap:.4rem;display:flex}.debug .button{min-height:2.2rem;padding:0 .8rem;font-size:.8rem}.gov{gap:.7rem;display:grid}.gov-qform,.gov-vform{gap:.4rem;display:grid}.gov-qform textarea,.gov-vform input{font:inherit;border:1px solid var(--line);border-radius:var(--radius-block);background:var(--surface);padding:.6rem .8rem}.gov-list ul{gap:.3rem;margin:.3rem 0 0;padding-left:1.1rem;display:grid}.gov-list li{color:var(--muted)}.gov-list li strong{color:var(--ink)}.gov-badge{background:var(--soft-strong);color:var(--ink)}.gov-note{color:var(--muted);font-size:.9rem}.radar{width:100%;height:320px}.radar-empty{color:var(--muted);padding:1rem 0}.w3ds-panel{flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.8rem;display:flex}.w3ds-note{color:var(--muted);font-size:.9rem}.mock-wallet{border:1px dashed var(--line);border-radius:var(--radius-block);width:100%;margin-top:.6rem;padding:.6rem}.mock-wallet-list{flex-direction:column;gap:.4rem;margin:.4rem 0;padding:0;list-style:none;display:flex}.mock-wallet-custom{gap:.4rem;margin-top:.4rem;display:flex}.mock-wallet-custom input{border:1px solid var(--line);border-radius:var(--radius-block);background:var(--surface);color:var(--ink);flex:1;padding:.4rem}.motion-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.motion-list li{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.motion-deadline{color:var(--muted);font-size:.9rem}.motion-verdict{font-size:1.1rem;font-weight:800}.motion-input{border:1px solid var(--line);border-radius:var(--radius-block);background:var(--surface);width:100%;color:var(--ink);font:inherit;padding:.5rem}.motion-num{border:1px solid var(--line);border-radius:var(--radius-block);background:var(--surface);width:5rem;color:var(--ink);padding:.3rem}.ballot-list{flex-direction:column;gap:.4rem;margin:.4rem 0;padding:0;list-style:none;display:flex}.ballot-option{align-items:center;gap:.4rem;display:inline-flex}.motion-fieldset{border:none;min-width:0;margin:0;padding:0}.motion-fieldset legend{padding:0}.method-diagram{border:1px solid var(--rule,#0000001f);border-radius:8px;overflow:hidden}.method-diagram svg{max-width:520px;margin:0 auto}@media (prefers-reduced-motion:no-preference){.bp-draw{stroke-dasharray:100;stroke-dashoffset:100px;animation:1.3s ease-out forwards bp-draw-in}@keyframes bp-draw-in{to{stroke-dashoffset:0}}}
