/* Participant page, shared parts: period controls, night strip, footer, tooltip, section labels, chart basics. */

/* participant page: controls */
.cg{display:flex;align-items:center;gap:8px}
.btn[aria-pressed="true"],.seg button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:500}
.sel{font-family:var(--mono);font-size:11px;background:transparent;border:1px solid var(--line2);color:var(--ink);padding:5px 6px;cursor:pointer}
.sel option{color:var(--ink);background:var(--panel)}
.seg{display:inline-flex;border:1px solid var(--line2)}
.seg button{background:transparent;border:0;padding:6px 11px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);cursor:pointer;white-space:nowrap}
.seg button+button{border-left:1px solid var(--line2)}
.seg button:not([aria-pressed="true"]):hover{color:var(--ink);background:var(--panel-hi)}
.strip{display:flex;flex-wrap:wrap;gap:2px;min-width:0}
.tile{all:unset;box-sizing:border-box;cursor:pointer;width:22px;height:34px;border:1px solid var(--line2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;position:relative;flex:none}
.tile .d{font-family:var(--mono);font-size:7.5px;color:var(--ink3);line-height:1}
.tile .n{font-family:var(--cond);font-weight:600;font-size:13.5px;line-height:1}
.tile:hover,.tile.hl{background:var(--panel-hi);border-color:var(--ink3)}
.tile:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.tile.sel{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.tile.sel .d{color:inherit}
.tile.out{opacity:.38}
.tile.nr{border-style:dashed;border-color:var(--none);cursor:default}
.tile.nr .n,.tile.ex .n,.tile.inv .n{color:var(--ink3)}
.tile.sel .n{color:inherit}
.tile.ex::after,.tile.inv::after{position:absolute;top:0;right:2px;font-family:var(--mono);font-size:8px;line-height:1.1;color:var(--ink2)}
.tile.sel::after{color:inherit}
.tile.ex::after{content:"×"}
.tile.inv::after{content:"!"}
.cr .end{margin-left:auto}
.pfoot{flex:none;border-top:1px solid var(--line);background:var(--ground)}
.pfoot .ro{display:flex;gap:24px;padding:9px 0 11px;font-size:12.5px;color:var(--ink2)}
.pfoot .ro b{color:var(--ink);font-weight:500}
.pfoot .ro .rt{margin-left:auto;font-family:var(--mono);font-size:10.5px;color:var(--ink3)}
.tip{position:fixed;pointer-events:none;background:var(--tip-bg);border:1px solid var(--line2);box-shadow:var(--shadow);padding:6px 9px;font-family:var(--mono);font-size:11px;color:var(--ink);z-index:40;white-space:nowrap}
.tip span{color:var(--ink2)}
.dh{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border-left:2px solid var(--accent);padding-left:9px;line-height:1.2}
.u{font-family:var(--mono);font-weight:400;font-size:12px;color:var(--ink2);margin-left:4px}
.chart{position:relative;min-height:0}
.chart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.tx{fill:var(--ink3);font-family:var(--mono);font-size:9.5px}
.dot{cursor:pointer}
