:root{--page:#fff;--surface:#f5f7f8;--ink:#283943;--line:#d6dfe3;--cyan:#00afd0}html[data-ipba-theme=dark],html[data-theme=dark],body[data-theme=dark]{--page:#19262d;--surface:#243640;--ink:#edf4f7;--line:#4a626e}body{margin:0;background:var(--page);color:var(--ink);font:14px Arial,sans-serif}main{margin:0;padding:24px}.intro{display:flex;justify-content:space-between;gap:20px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.08em;font-weight:bold;color:#00738a}h2{font-size:25px;margin:8px 0}p{line-height:1.5}.notice{background:var(--surface);border-left:3px solid var(--cyan);padding:12px 14px}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:22px 0 10px}label{display:grid;gap:6px;font-size:12px;font-weight:bold}input,select,button,.button{font:inherit;border:1px solid var(--line);border-radius:3px;padding:10px 12px;background:var(--page);color:var(--ink)}input{min-width:240px}.button{text-decoration:none;display:inline-block}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.card{border:1px solid var(--line);border-top:3px solid var(--cyan);background:var(--page);padding:14px;display:flex;flex-direction:column;gap:10px}.card h3,.card p{margin:0}.card canvas{width:100%;aspect-ratio:45/36;display:block;background:#f8fafb}.meta{font-size:12px;color:var(--ink)}.card .actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap;align-items:center}.choose{background:var(--cyan);border-color:var(--cyan);color:#072630;font-weight:bold}.choose[aria-pressed=true]{background:#263a44;border-color:var(--cyan);color:#fff}.votes{font-size:13px;font-weight:bold}.badge{font-size:11px;font-weight:bold;text-transform:uppercase;color:#00738a}.empty{padding:30px;border:1px dashed var(--line)}#status a{color:inherit;font-weight:bold}@media(max-width:650px){main{padding:14px}.intro{display:block}.intro .button{margin:8px 0}.filters>label{width:100%}input{min-width:0}h2{font-size:21px}.ipba-layout-header{flex-wrap:wrap}.cards{grid-template-columns:1fr}}

html[data-ipba-theme=dark] .badge,html[data-ipba-theme=dark] .eyebrow{color:#6adbef}body.ipba-layout-tool{font-family:Arial,sans-serif}html[data-ipba-theme=light] body.ipba-layout-tool{background:#fff}@media(max-width:900px){button,.button,input,select{min-height:44px;box-sizing:border-box}}
