.pwatch-wrap { max-width: 1100px; margin: 0 auto; }
.pwatch-wrap [hidden] { display: none !important; }
.pwatch-form { display: grid; gap: 14px; max-width: 720px; }
.pwatch-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 600px) { .pwatch-grid { grid-template-columns: 1fr; } }
.pwatch-field label, .pwatch-choice legend { display: block; font-weight: 600; margin-bottom: 4px; }
.pwatch-field input[type=text], .pwatch-field input[type=email], .pwatch-field input[type=tel], .pwatch-field input[type=url],
.pwatch-field input[type=file], .pwatch-field textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; }
.pwatch-field small { display: block; color: #666; margin-top: 4px; }
.pwatch-choice { border: 0; padding: 0; margin: 0; display: grid; gap: 6px; }
.pwatch-choice label { font-weight: 400; }
.pwatch-error { color: #b32d2e; font-size: 0.9em; }
.pwatch-error:empty { display: none; }
.pwatch-error-general { padding: 10px; border: 1px solid #b32d2e; background: #fcf0f1; }
.pwatch-error-general:empty { display: none; }
.pwatch-hp { position: absolute; left: -9999px; }
.pwatch-button { cursor: pointer; padding: 10px 20px; border: 0; background: #1d4ed8; color: #fff; border-radius: 4px; font-size: 1em; justify-self: start; }
.pwatch-button[disabled] { opacity: .6; cursor: wait; }
.pwatch-verified { background: #edfaef; border: 1px solid #00a32a; padding: 8px 12px; }
.pwatch-notice { padding: 12px; background: #f6f7f7; border: 1px solid #ddd; }

.pwatch-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; align-items: center; }
.pwatch-filters input[type=search] { flex: 1 1 240px; padding: 8px 10px; }
.pwatch-filters select { padding: 8px; }

.pwatch-cards { display: grid; grid-template-columns: repeat(var(--pwatch-cols, 3), 1fr); gap: 20px; }
@media (max-width: 900px) { .pwatch-cards { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .pwatch-cards { grid-template-columns: 1fr; } }
.pwatch-card { border: 1px solid #e2e4e7; border-radius: 6px; overflow: hidden; background: #fff; display: flex; flex-direction: column; }
.pwatch-main { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.pwatch-thumbs { display: flex; gap: 4px; padding: 4px; overflow-x: auto; }
.pwatch-thumb { padding: 0; border: 2px solid transparent; background: none; cursor: pointer; flex: 0 0 52px; }
.pwatch-thumb.is-active { border-color: #1d4ed8; }
.pwatch-thumb img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.pwatch-card-body { padding: 14px; }
.pwatch-card-body h3 { margin: 0 0 4px; }
.pwatch-company { margin: 0 0 8px; color: #555; font-weight: 600; }
.pwatch-meta { margin: 8px 0; display: grid; grid-template-columns: auto 1fr; gap: 2px 10px; }
.pwatch-meta dt { font-weight: 600; }
.pwatch-meta dd { margin: 0; }
.pwatch-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.pwatch-tag { font-size: .8em; padding: 2px 8px; border-radius: 999px; background: #eef2ff; text-decoration: none; }
.pwatch-tag-cat { background: #1d4ed8; color: #fff; }
.pwatch-pagination { margin-top: 24px; }
.pwatch-pagination .page-numbers { display: inline-block; padding: 6px 12px; border: 1px solid #ddd; margin-right: 4px; text-decoration: none; }
.pwatch-pagination .current { background: #1d4ed8; color: #fff; border-color: #1d4ed8; }

.pwatch-head { margin-bottom: 16px; }
.pwatch-flash { padding: 10px 14px; background: #edfaef; border: 1px solid #00a32a; margin-top: 8px; }
.pwatch-mine { display: grid; gap: 10px; margin-bottom: 16px; }
.pwatch-mine-row { display: flex; gap: 14px; align-items: center; border: 1px solid #e2e4e7; padding: 10px; border-radius: 6px; }
.pwatch-mine-row img, .pwatch-noimg { width: 64px; height: 64px; object-fit: cover; flex: 0 0 64px; background: #f0f0f1; }
.pwatch-mine-info { flex: 1 1 auto; display: grid; gap: 2px; }
.pwatch-mine-actions { display: flex; gap: 6px; }
.pwatch-badge { display: inline-block; justify-self: start; padding: 1px 8px; border-radius: 999px; font-size: .8em; background: #e5e7eb; }
.pwatch-badge-approved { background: #dcfce7; color: #166534; }
.pwatch-badge-pending { background: #fef9c3; color: #854d0e; }
.pwatch-badge-rejected { background: #fee2e2; color: #991b1b; }
.pwatch-button-secondary { background: #e5e7eb; color: #111; }
.pwatch-button-danger { background: #b32d2e; }
.pwatch-actions { display: flex; gap: 8px; }
.pwatch-existing-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.pwatch-existing { display: block; position: relative; font-weight: 400; }
.pwatch-existing img { display: block; width: 90px; height: 90px; object-fit: cover; }
.pwatch-existing span { display: block; text-align: center; font-size: .85em; }
@media (max-width: 600px) { .pwatch-mine-row { flex-wrap: wrap; } }
