[hidden] { display: none !important; }
.render-actions { display: flex; gap: 10px; }
.secondary { border: 1px solid #14221e; background: white; color: #14221e; border-radius: 10px; padding: 14px 18px; font: 700 14px "DM Sans", sans-serif; cursor: pointer; }
.secondary:disabled { opacity: .4; cursor: not-allowed; }
.render-help { margin: -6px 0 0; color: #66726d; font-size: 12px; text-align: right; }
.progress-track { width: min(360px, 70vw); height: 5px; background: rgba(255,255,255,.16); border-radius: 5px; overflow: hidden; margin-top: 8px; }
.progress-track span { display: block !important; width: 8%; height: 100%; background: #d7ee82; border-radius: 5px; transition: width 1s linear; }
#progress-time { font-variant-numeric: tabular-nums; }
@media (max-width: 720px) { .render-actions { flex-direction: column; } .render-help { text-align: left; } }
.smart-filter { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; gap: 12px; align-items: end; margin: 22px 0 8px; padding: 16px; background: #f3f5ef; border-radius: 12px; }
.smart-filter select { margin-top: 6px; background: white; }
.room-match { align-self: center; }
.room-match span, .room-match strong { display: block; }
.room-match span { color: #66726d; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; }
.room-match strong { margin-top: 5px; font-size: 17px; }
@media (max-width: 850px) { .smart-filter { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .smart-filter { grid-template-columns: 1fr; } }
