/* The remote gallery and the Free vs Pro page */
.gallery-page .site-main{max-width:1180px}
.gallery-page .site-top{max-width:1180px}
.g-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 20px}
.g-head p{margin:4px 0 0;color:var(--muted)}
.g-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.g-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:4px}
.g-tabs a{padding:6px 14px;border-radius:8px;text-decoration:none;color:var(--muted);font-weight:500;font-size:14px}
.g-tabs a[aria-current="page"]{background:var(--accent);color:var(--accent-ink)}
.g-search{display:flex;gap:8px}.g-search input{font:inherit;padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--fg);min-width:0;width:220px}
.g-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.g-card{display:grid;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:16px;text-decoration:none;color:var(--fg);transition:transform .12s,border-color .12s}
.g-card:hover,.g-card:focus-visible{border-color:var(--muted);transform:translateY(-2px)}
.g-card .g-remote{width:100%;max-width:220px;justify-self:center;padding:12px 12px 10px;border-radius:26px;pointer-events:none}
.g-card .g-remote .grid{gap:8px}.g-card .g-remote .mark{margin-top:8px;font-size:8px}
.g-card h2{font-family:var(--body);font-size:15px;font-weight:600;letter-spacing:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px;color:var(--muted)}
.g-meta .by{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g-stars{color:#f5b301;white-space:nowrap;letter-spacing:1px}.g-stars .off{color:var(--line)}.g-stars small{color:var(--muted);letter-spacing:0;font-size:12px}
.g-badge{font-family:var(--mono);font-size:10px;border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--muted)}
.g-badge.hidden{color:var(--danger);border-color:currentColor}
.g-remote .rb.svgb,.g-remote .pzsw.rb{position:relative;display:block;width:84%;aspect-ratio:1;background:none;box-shadow:none;overflow:visible}
.g-remote .pzsw.rb.wide{aspect-ratio:2/1;width:98%}
.g-remote .pzsw svg.pzb{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.g-remote .slot{border-radius:16px}
.g-detail{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:820px){.g-detail{grid-template-columns:minmax(0,1fr)}}
.g-detail>.g-remote{width:100%;max-width:380px;justify-self:center}
.g-side{display:grid;gap:16px;min-width:0}
.g-desc{white-space:pre-wrap;margin:0}
.g-rate{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.g-rate button{font-size:26px;line-height:1;background:none;border:0;color:var(--line);cursor:pointer;padding:2px}
.g-rate button.on{color:#f5b301}
.g-rate:hover button{color:#f5b301}.g-rate button:hover~button{color:var(--line)}
.g-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.g-comments{display:grid;gap:12px;list-style:none;margin:0;padding:0}
.g-comment{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:10px 14px;display:grid;gap:4px}
.g-comment header{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted)}
.g-comment p{margin:0;white-space:pre-wrap}
.g-comment details summary,.g-more summary{cursor:pointer;color:var(--muted);font-size:12.5px}
.g-form{display:grid;gap:10px}
.g-form textarea,.g-form input[type=text],.g-form select{font:inherit;width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--fg)}
.g-form textarea{min-height:90px;resize:vertical}
.g-form label.check{display:flex;gap:8px;align-items:flex-start;font-size:14px}
.g-inline{display:inline}
.linkish{background:none;border:0;padding:0;font:inherit;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:13px}
.g-empty{text-align:center;color:var(--muted);padding:40px 10px}
.g-pager{display:flex;justify-content:center;gap:10px}
.g-flash{margin:0}

/* Free vs Pro */
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.cmp{width:100%;border-collapse:collapse;min-width:520px}
.cmp th,.cmp td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp thead th{font-family:var(--display);font-weight:400;font-size:13px;letter-spacing:.08em;background:var(--panel-2);position:sticky;top:0}
.cmp tbody tr:last-child td,.cmp tbody tr:last-child th{border-bottom:0}
.cmp th[scope=row]{font-weight:500;width:46%}
.cmp th[scope=row] small{display:block;color:var(--muted);font-weight:400;font-size:12.5px}
.cmp .group th{background:var(--panel-2);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 16px}
.cmp td.pro{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.yes{color:var(--ok);font-weight:600}.no{color:var(--muted)}
.cmp-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.cmp-cta .price{font-family:var(--display);font-size:22px}
.stack.g-stack{max-width:1180px;width:100%}
.g-meta.detail{justify-content:flex-start;flex-wrap:wrap;gap:6px 14px}
/* the comparison fits a phone without sideways scrolling */
@media (max-width:600px){
  .cmp{min-width:0;table-layout:fixed}
  .cmp th,.cmp td{padding:10px 10px;font-size:13.5px;overflow-wrap:anywhere}
  .cmp th[scope=row]{width:48%}
  .cmp .group th{padding:8px 10px}
}
@media (max-width:520px){.g-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.g-card{padding:10px;border-radius:14px}.g-card .g-remote{padding:8px 8px 6px;border-radius:18px}.g-card .g-remote .grid{gap:5px}.g-card h2{font-size:14px}.g-meta{flex-wrap:wrap;font-size:12px}.g-search input{width:100%}.g-search{flex:1}}
/* My remotes */
.r-card.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.r-open{margin:0}.r-open button{all:unset;display:block;width:100%;cursor:pointer}
.r-open button:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:20px}
.r-now{color:var(--accent)}
.r-card .g-actions{gap:6px}
.g-mode{border:1px solid var(--line,#333);border-radius:12px;padding:10px 12px;display:grid;gap:6px}
.g-mode legend{padding:0 4px;font-weight:600}
.r-empty{display:grid;place-items:center;aspect-ratio:3/4;border:2px dashed var(--line,#c9ccd3);border-radius:22px;color:var(--muted,#777);font-size:.9rem}
.g-remote .slot.full{grid-column:1/-1;aspect-ratio:auto}
.g-remote .pzsw.rb.row{width:96%;aspect-ratio:3.9}
