*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:#fff;color:#111827;font-family:'Plus Jakarta Sans',sans-serif;}
a{color:inherit;}
::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#f9fafb}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}
.pc{cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s;}
.pc:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(220,38,38,.12)!important;border-color:#fca5a5!important;}
.ci{cursor:pointer;transition:background .12s;border:none;background:transparent;width:100%;text-align:left;font-family:inherit;}
.ci:hover{background:#fff1f1!important;}
.bp{cursor:pointer;transition:all .12s;border:none;font-family:inherit;}.bp:hover{opacity:.82;}
.bb{cursor:pointer;transition:all .12s;border:none;background:none;font-family:inherit;color:#6b7280;}.bb:hover{color:#dc2626!important;}
.si:focus{outline:none;border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.1);}
.si{transition:all .2s;}
.step-card{transition:box-shadow .12s,background .12s;cursor:pointer;user-select:none;}
.step-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.07);}
.step-done{background:#f0fdf4!important;border-color:#bbf7d0!important;}
.vote-btn,.rel-btn{cursor:pointer;font-family:inherit;transition:all .12s;}
.vote-btn:hover{border-color:#dc2626!important;color:#dc2626!important;}
.rel-btn:hover{background:#fee2e2!important;border-color:#fca5a5!important;color:#dc2626!important;}
.filter-sel{font-family:inherit;cursor:pointer;}.filter-sel:focus{outline:none;border-color:#dc2626;}
.mob-filter-btn{display:none;}
@media(max-width:900px){.mob-filter-btn{display:flex!important;}}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.fadeIn{animation:fadeIn .3s ease forwards}
@media print{
  nav,aside,.share-bar,footer,.mob-filter-btn,.vote-btn,.rel-btn,button{display:none!important;}
  main{padding:8px!important;}
  body{font-size:12px!important;color:#000!important;}
  h1{font-size:18px!important;margin-bottom:8px!important;}
  .step-card{border:1px solid #ccc!important;margin-bottom:6px!important;page-break-inside:avoid;}
  .fadeIn{animation:none!important;}
  a{color:#000!important;text-decoration:none!important;}
  .three-col{display:block!important;}
  .instr-main{padding:0!important;}
  @page{margin:1.5cm;}
}
@media(max-width:900px){
  .desk-only{display:none!important;}
  .browse-aside{display:none!important;}
  .three-col{flex-direction:column!important;}
  .left-sb{position:static!important;height:auto!important;width:100%!important;border-right:none!important;border-bottom:1px solid #e5e7eb!important;overflow-x:auto!important;display:flex!important;flex-direction:row!important;padding:6px 4px!important;gap:2px!important;white-space:nowrap!important;}
  .left-sb .sb-hdr,.left-sb .grp-lbl{display:none!important;}
  .right-pnl{position:static!important;height:auto!important;width:100%!important;border-left:none!important;border-top:1px solid #e5e7eb!important;}
  .instr-main{padding:16px 14px 40px!important;}
  .home-hero{padding:36px 14px 46px!important;}
  .phone-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important;}
}
