.front-desk-broadcast { margin: 0 0 24px; padding: 24px; border: 1px solid #dce5dc; border-radius: 20px; background: #fffdf7; color: #234b3b; }
.front-desk-broadcast[hidden] { display: none; }
.front-desk-broadcast header { display: flex; justify-content: space-between; align-items: start; gap: 16px; }
.front-desk-broadcast h3 { margin: 4px 0 8px; font-size: 22px; }
.front-desk-broadcast p { margin: 8px 0; line-height: 1.7; }
.front-desk-broadcast .broadcast-store { font-size: 14px; color: #63756a; }
.front-desk-broadcast .broadcast-count { white-space: nowrap; background: #eef3e7; padding: 10px 14px; border-radius: 12px; }
.broadcast-controls { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0; }
.broadcast-controls button { min-height: 44px; padding: 10px 18px; border: 1px solid #b7cbbf; border-radius: 10px; cursor: pointer; color: #234b3b; background: white; font: inherit; }
.broadcast-controls button:first-child { background: #234b3b; color: white; }
.broadcast-controls button:disabled { opacity: .5; cursor: default; }
.broadcast-status { padding: 12px; border-radius: 10px; background: #f3eee3; }
[data-broadcast-state="live"] .broadcast-status { background: #e6f1e7; color: #205c39; }
.broadcast-records { max-height: 200px; overflow: auto; padding-left: 24px; }
.broadcast-records li { padding: 8px; border-bottom: 1px solid #eee9df; }
.broadcast-hint { color: #6d786d; font-size: 13px; }
@media (max-width: 600px) { .front-desk-broadcast { padding: 18px; } .front-desk-broadcast header { flex-direction: column; } }
