.trading-hours p { color:var(--text-dim); font-size:.82rem; line-height:1.5; margin:8px 0 14px; }
.trading-hours form { display:grid; gap:8px; }
.trading-hours label,.trading-hours legend { font-size:.84rem; font-weight:600; }
.trading-hours input:not([type=checkbox]),.trading-hours select { width:100%; min-height:44px; padding:9px 11px; box-sizing:border-box; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--bg); font:inherit; }
.trading-hours input:focus-visible,.trading-hours select:focus-visible,.trading-hours button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.trading-hours input[aria-invalid=true] { border-color:#b3261e; }
.trading-hours fieldset { border:0; padding:0; margin:14px 0; }
.hours-times { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; }
.hours-times label { display:block; margin-bottom:6px; }
.hours-days { display:flex; flex-wrap:wrap; gap:4px 12px; }
.hours-days label { display:flex; align-items:center; min-height:44px; gap:5px; }
.hours-days input { width:18px; height:18px; accent-color:var(--accent); }
.trading-hours button { min-height:44px; justify-self:start; }
.hours-error { padding:12px; border:1px solid #b3261e; border-radius:8px; background:var(--bg); }
.hours-error a { color:inherit; text-decoration:underline; }
@media (max-width:400px) { .hours-times { grid-template-columns:1fr; } }
