.pr-entry { margin: 8px 0 16px; }
.pr-overlay { position: fixed; inset: 0; z-index: 9000; background: #0f172a80; display: flex; align-items: center; justify-content: center; padding: 16px; }
.pr-dialog { background: #fff; color: #1e293b; width: 960px; max-width: 100%; max-height: calc(var(--os-viewport-height, 100dvh) - 32px); border-radius: 16px; display: flex; flex-direction: column; box-shadow: 0 20px 60px #0f172a40; font-size: var(--fs-body, 14px); }
.pr-header { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 16px 20px; border-bottom: 1px solid #e2e8f0; flex-shrink: 0; }
.pr-header h2 { font-size: var(--fs-h2, 20px); font-weight: 800; }
.pr-body { overflow-y: auto; min-height: 0; padding: 20px; overscroll-behavior: contain; }
.pr-note { color: #64748b; margin: 5px 0 10px; }
.pr-controls, .pr-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.pr-controls { grid-template-columns: 1fr 1fr auto; align-items: end; }
.pr-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; font-weight: 600; }
.pr-field input, .pr-field select, .pr-field textarea { width: 100%; min-height: 44px; border: 1px solid #cbd5e1; border-radius: 8px; padding: 9px 10px; background: white; color: #0f172a; font-size: 16px; font-weight: 400; }
.pr-field textarea { resize: vertical; }
.pr-status { padding: 12px; border-radius: 8px; background: #eff6ff; color: #1e40af; overflow-wrap: anywhere; }
.pr-project h3 { font-size: var(--fs-h3, 18px); font-weight: 800; margin: 24px 0 12px; }
.pr-card { border: 1px solid #e2e8f0; padding: 18px; border-radius: 12px; margin-bottom: 14px; overflow-wrap: anywhere; }
.pr-card h4 { font-weight: 800; font-size: var(--fs-h3, 18px); }
.pr-badge { color: #92400e; margin: 8px 0; font-weight: 700; }
.pr-preview { padding: 12px; background: #f8fafc; border-radius: 8px; margin: 12px 0; }
.pr-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0; }
.pr-dialog .btn { min-height: 44px; white-space: normal; }
.pr-dialog :disabled { opacity: .55; cursor: wait; }
.pr-empty { padding: 32px 0; color: #64748b; }
@media (max-width: 600px) {
 .pr-overlay { padding: 8px; }
 .pr-dialog { max-height: calc(var(--os-viewport-height, 100dvh) - 16px); }
 .pr-header, .pr-body { padding: 14px; }
 .pr-controls, .pr-form { grid-template-columns: minmax(0, 1fr); }
 .pr-card { padding: 12px; }
 .pr-actions .btn { flex: 1 1 100%; }
}

.pr-field select { height: 44px; }

.pr-evidence { background: #f4f7fc; border: 1px solid #dbe4f1; border-radius: 10px; padding: 12px; margin: 12px 0; overflow-wrap: anywhere; }
.pr-evidence h5 { font-size: 15px; margin: 0 0 8px; }
.pr-warning { color: #854d0e; font-weight: 600; }
.pr-bank { white-space: pre-line; border-top: 1px solid #dbe4f1; padding: 10px 0; }
.pr-evidence summary { cursor: pointer; min-height: 44px; display: list-item; padding: 10px 0; }
.pr-field input[type="checkbox"] { width: 24px; min-height: 24px; height: 24px; }

.pr-guide { border: 1px solid #dbe4f1; border-radius: 10px; padding: 0 12px; margin: 12px 0; background: #f8fafc; overflow-wrap: anywhere; }
.pr-guide summary { cursor: pointer; min-height: 44px; padding: 12px 0; font-weight: 700; }
.pr-guide ol, .pr-guide ul { padding-left: 22px; margin: 8px 0 14px; }
.pr-guide ol { list-style: decimal; }
.pr-guide ul { list-style: disc; }
.pr-guide li { margin: 8px 0; line-height: 1.6; }
.pr-guide-item { padding: 12px 0; border-top: 1px solid #dbe4f1; }
.pr-guide-item .btn { max-width: 100%; text-align: left; color: #1d4ed8; }
.pr-card:focus { outline: 2px solid #2563eb; outline-offset: 2px; }
