.modal-backdrop { position:fixed; z-index:120; inset:0; display:grid; place-items:center; padding:20px; background:rgba(15,23,42,.46); backdrop-filter:blur(3px); }
.modal-card { width:min(620px,100%); max-height:min(760px,calc(100vh - 40px)); overflow:auto; border:1px solid var(--line); border-radius:14px; background:var(--surface); box-shadow:0 24px 70px rgba(15,23,42,.28); }
.modal-head { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; border-bottom:1px solid var(--line); }
.modal-head h2,.modal-head p { margin:0; }.modal-head h2 { font-size:18px; }.modal-head p { max-width:480px; margin-top:6px; overflow:hidden; color:var(--muted); text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.modal-head > button { width:34px; height:34px; border:0; border-radius:8px; background:transparent; color:var(--muted); font-size:24px; }.modal-head > button:hover { color:var(--text); background:var(--hover); }
.review-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:20px; }.review-form > label { display:grid; gap:7px; color:var(--muted); font-size:12px; }.review-form .input { width:100%; }
.check-field { grid-column:1/-1; grid-template-columns:auto 1fr !important; align-items:flex-start; padding:13px 14px; border:1px solid var(--line); border-radius:9px; color:var(--text) !important; }.check-field input { margin:3px 0 0; }.check-field strong,.check-field small { display:block; }.check-field small { margin-top:4px; color:var(--muted); font-size:11px; }
.modal-actions { grid-column:1/-1; display:flex; justify-content:flex-end; gap:8px; padding-top:4px; }
@media (max-width:620px) { .review-form { grid-template-columns:1fr; }.check-field,.modal-actions { grid-column:auto; } }
