.rv72-card{border:1px solid var(--line,#ccd3df);border-radius:14px;padding:20px;margin:16px 0;background:var(--surface,#fff);overflow-wrap:anywhere}
.rv72-card header,.rv72-card footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rv72-card header time{font-size:.85em;color:var(--muted,#5b6473)}
.rv72-card footer{margin-top:14px}.rv72-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.rv72-card-admin{border-left:4px solid #3265bd}
.rv72-admin-badge{font-size:.8em;border-radius:8px;padding:4px 8px;background:#e8f0ff;color:#153f84}.rv72-form-panel{margin-top:24px}
.rv72-form-panel form,.rv72-delete form{display:grid;gap:12px}.rv72-form-panel label:not(.review-checkbox),.rv72-filters label{display:grid;gap:6px}
.rv72-public input:not([type=checkbox]),.rv72-public select,.rv72-public textarea{box-sizing:border-box;width:100%;max-width:100%;border:1px solid #9aa7bc;border-radius:8px;padding:10px;font:inherit;background:var(--surface,#fff);color:inherit}
.rv72-public button{border:0;border-radius:8px;padding:11px 18px;font:inherit;background:#2459a8;color:#fff;cursor:pointer;justify-self:start}
.rv72-public .review-checkbox{display:flex;align-items:flex-start;gap:10px}.rv72-public .review-checkbox input{flex:0 0 auto;width:18px;height:18px;min-height:18px;padding:0;margin-top:5px}
.rv72-delete{border:1px solid #cb8686;border-radius:12px;padding:14px;margin:20px 0}.rv72-delete summary{cursor:pointer;font-weight:600;color:var(--danger,#9d2525)}
.rv72-delete[open] summary{margin-bottom:16px}.rv72-delete .danger{background:#a72d2d;color:#fff}.rv72-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.rv72-pager{display:flex;gap:16px;align-items:center;margin:20px 0}.rv72-card :focus-visible,.rv72-delete :focus-visible,.rv72-form-panel :focus-visible{outline:3px solid #3d77d8;outline-offset:3px}
@media(max-width:600px){.rv72-card{padding:15px}.rv72-filters{display:grid}.rv72-card header{align-items:flex-start;flex-direction:column}}

/* v73: emoji controls stay transparent in both catalogue and account forms. */
.rv72-form-panel .review-emojis{background:transparent}
.rv72-form-panel .review-emojis button,.rv72-form-panel .review-emojis button:hover,.rv72-form-panel .review-emojis button:focus,.rv72-form-panel .review-emojis button:active{background:transparent;border-color:transparent;box-shadow:none;color:inherit}

/* v74: compact administrator rows; confirmation expands under the selected row. */
.rv74-list-scroll{overflow-x:auto;margin:18px 0;border:1px solid var(--line,#ccd3df);border-radius:12px;background:var(--surface,#fff)}
.rv74-list{min-width:960px}
.rv74-list-head,.rv74-list-row{display:grid;grid-template-columns:minmax(120px,1fr) 122px minmax(240px,2.5fr) minmax(140px,1.2fr) 130px 80px;column-gap:16px;align-items:center;padding:12px 18px}
.rv74-list-head{font-size:.8125rem;color:var(--muted,#5b6473);background:var(--bg,#f5f7fc);font-weight:600}
.rv74-list-row{border-top:1px solid var(--line,#ccd3df)}
.rv74-list-entity,.rv74-list-text,.rv74-list-author>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rv74-list-author{display:flex;align-items:center;gap:6px;min-width:0}.rv74-list-author small{flex:none;color:var(--muted,#5b6473);white-space:nowrap}
.rv74-list-edit{white-space:nowrap}.rv74-list-row .rv74-list-delete{min-width:0;border:0;padding:0;margin:0}
.rv74-list-delete>summary{display:inline-block;list-style:none;font-weight:500;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;padding:6px 0}
.rv74-list-delete>summary::-webkit-details-marker{display:none}
.rv74-list-row .rv74-list-delete[open]{grid-column:1 / -1;margin-top:8px}
.rv74-list-delete[open]>summary{margin:0}
.rv74-list-delete>form{padding:16px;margin-top:8px;border:1px solid var(--danger,#9d2525);border-radius:10px;white-space:normal}
.rv74-list-row :focus-visible,.rv74-list-scroll:focus-visible{outline:3px solid var(--lb-focus,#3d77d8);outline-offset:3px}

.rv74-list-row .badge{white-space:nowrap}
@media(max-width:700px){.rv74-list-row .rv74-list-delete[open]{position:sticky;left:0;max-width:calc(100vw - 96px)}}

/* v75: the confirmation sits in the top layer, outside the scrolling list. */
.rv72-delete[hidden],[data-rv75-cancel][hidden]{display:none!important}
.lb-macos .rv75-delete-open,.rv75-delete-open{justify-self:start;width:auto;min-width:0;min-height:40px;margin:0;padding:6px 0;border:0;border-radius:4px;background:transparent;color:var(--danger,#9d2525);box-shadow:none;font:inherit;font-weight:500;white-space:nowrap;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.lb-macos .rv75-delete-open:hover,.lb-macos .rv75-delete-open:active,.rv75-delete-open:hover,.rv75-delete-open:active{background:transparent;color:var(--danger,#9d2525);box-shadow:none}
.rv75-delete-dialog{box-sizing:border-box;width:460px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:26px;border:1px solid var(--line,#ccd3df);border-radius:16px;background:var(--lb-solid,#fff);color:var(--ink,#202631);box-shadow:var(--lb-dialog-shadow,0 24px 80px #0005);overflow:auto;font:inherit}
.rv75-delete-dialog::backdrop{background:rgba(0,0,0,.55)}
.rv75-delete-dialog form{display:grid;gap:16px;margin:0}
.rv75-delete-dialog h2,[data-rv75-confirmation]>h2{margin:0;font-size:1.25rem;line-height:1.35;color:inherit}
.rv75-delete-dialog p{margin:0;line-height:1.6;overflow-wrap:anywhere}
.rv75-delete-actions{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:8px}
.rv75-delete-actions button,.rv75-delete-actions .button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 1 116px;width:auto;min-width:96px;max-width:150px;min-height:44px;margin:0;padding:10px 18px;border:1px solid transparent;border-radius:8px;font:inherit;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer}
.rv75-delete-actions .danger{background:#a72d2d;color:#fff;border-color:#a72d2d}
.rv75-delete-actions .danger:hover{background:#902525;border-color:#902525}
.rv75-delete-actions .secondary{background:var(--lb-control,#f0f2f5);color:var(--ink,#202631);border-color:var(--line,#ccd3df)}
.rv75-delete-actions .secondary:hover{background:var(--lb-hover,#e5e9ef)}
.rv75-delete-actions button[aria-disabled=true],.rv75-delete-actions button:disabled{opacity:.65;cursor:wait}
.rv75-delete-dialog [data-rv72-status]:empty,[data-rv75-confirmation] [data-rv72-status]:empty{display:none}
.rv75-delete-dialog :focus-visible,.rv75-delete-open:focus-visible{outline:3px solid var(--lb-focus,#3d77d8);outline-offset:3px}
@media(max-width:380px){.rv75-delete-dialog{padding:20px}.rv75-delete-actions{gap:10px}.rv75-delete-actions button,.rv75-delete-actions .button{padding:10px 14px}}

/* v78: native POST voting, including narrow screens and account colour themes. */
.rv78-voting{display:grid;gap:8px;margin-top:18px;font-size:.9375rem}
.rv78-voting .rv78-vote-form,.rv78-vote-counts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0}
.rv72-card .rv78-vote-form button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:44px;margin:0;padding:8px 12px;border:1px solid var(--line,#ccd3df);border-radius:8px;background:var(--lb-control,#f0f2f5);color:var(--ink,#202631);font:inherit;line-height:1.4;cursor:pointer}
.rv72-card .rv78-vote-form button:hover{background:var(--lb-hover,#e5e9ef)}
.rv72-card .rv78-vote-form button[aria-pressed=true]{background:#2459a8;border-color:#2459a8;color:#fff}
.rv78-vote-counts span{padding:6px 0;margin-right:8px}.rv78-voting small{color:var(--muted,#5b6473);line-height:1.5}

/* v80: review sorting works with native GET forms, including without JavaScript. */
.rv80-sort{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0}
.rv80-sort label{margin:0;font-weight:600}
.rv80-sort select{width:auto;min-width:180px;max-width:100%}
.rv80-sort button{margin:0}
.rv80-sort small{flex-basis:100%}
@media(max-width:480px){.rv80-sort label,.rv80-sort select{width:100%}.rv80-sort button{min-height:44px}}
