.poster-main { display: grid; gap: 24px; }
.poster-workspace,.poster-round-section { display: grid; gap: 20px; }
.poster-round-section { padding-top: 24px; border-top: 1px solid var(--portal-line); }
.poster-round-section > header h2 { margin: 4px 0 8px; color: var(--portal-deep); font-size: 22px; }
.poster-round-section > header p:last-child { margin: 0; color: var(--portal-muted); font-size: 13px; }
.poster-slot-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.poster-slot { min-width: 0; display: grid; gap: 14px; align-content: start; padding: 20px; border: 1px solid var(--portal-line); border-radius: 10px; background: var(--portal-paper); }
.poster-slot > header { display: grid; gap: 5px; }
.poster-slot h2,.poster-slot h3 { margin: 0; color: var(--portal-deep); font-size: 18px; }
.poster-slot header p,.poster-guidance,.poster-status { margin: 0; color: var(--portal-muted); font-size: 12px; line-height: 1.7; }
.poster-preview { width: 100%; aspect-ratio: 16/9; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--portal-line); border-radius: 7px; background: var(--portal-mist); color: var(--portal-muted); font-size: 12px; }
.poster-preview.is-presentation { aspect-ratio: 9/16; max-height: 320px; justify-self: start; width: min(180px,100%); }
.poster-preview img { width: 100%; height: 100%; display: block; object-fit: cover; }
.poster-upload-form { display: grid; gap: 10px; }
.poster-upload-form input[type="file"] { width: 100%; }
.poster-status[data-kind="approved"] { color: #39776a; font-weight: 800; }
.poster-status[data-kind="returned"] { color: #a83b2d; font-weight: 800; }
.poster-status[data-kind="pending"] { color: #765d21; font-weight: 800; }
.poster-review-list { display: grid; gap: 24px; }
.poster-review-card { display: grid; gap: 16px; padding: 22px; border: 1px solid var(--portal-line); border-radius: 10px; background: var(--portal-paper); }
.poster-review-card > header { display: flex; justify-content: space-between; gap: 16px; align-items: start; }
.poster-review-card > img { width: min(100%,720px); max-height: 420px; object-fit: contain; border-radius: 7px; background: var(--portal-mist); }
.poster-review-form { display: grid; gap: 12px; }
.poster-review-form textarea { width: 100%; box-sizing: border-box; }
.poster-review-actions { display: flex; gap: 10px; flex-wrap: wrap; }
@media (max-width:720px){.poster-slot-list{grid-template-columns:1fr}.poster-slot{padding:16px}.poster-preview.is-presentation{max-height:260px}}
