:root{color-scheme:dark;--bg:#101014;--panel:#211c23;--panel2:#2d2530;--maroon:#692d42;--gold:#ffce67;--gold-soft:#fff0ca;--text:#f8f5f7;--muted:#aaa3ae;--stroke:#453b48;--red:#f08a92;--green:#90dbb0;--radius:14px}
*{box-sizing:border-box}html{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}body{margin:0;padding-bottom:env(safe-area-inset-bottom,0)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,.rink:focus-visible{outline:3px solid var(--gold);outline-offset:2px}#app{max-width:720px;margin:auto;min-height:100dvh}.sticky-header{position:sticky;top:0;z-index:20;background:#171318;border-bottom:1px solid #534251;box-shadow:0 3px 12px #0008;padding:10px 14px 9px}.brand-line,.brand,.score-row,.section-row,.footer-row{display:flex;align-items:center;justify-content:space-between}.brand{justify-content:flex-start;gap:9px}.brand-icon{width:33px;height:33px;display:grid;place-items:center;border:2px solid var(--gold);border-radius:9px;font-weight:900;color:var(--gold);font-size:21px}.brand-main{font-weight:900;font-size:15px;letter-spacing:.07em}.brand-main span{color:var(--gold)}.brand-sub{color:var(--muted);font-size:11px;margin-top:1px;max-width:235px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{width:38px;height:34px;font-size:22px;color:var(--gold);border:1px solid var(--stroke);border-radius:9px;background:#292129}.score-row{justify-content:center;gap:18px;margin:5px auto 8px;max-width:385px}.score-side{display:flex;align-items:center;gap:9px;min-width:0}.score-side span{font-size:11px;font-weight:800;color:var(--gold);max-width:115px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.score-side strong{font-size:29px;line-height:1;min-width:22px;font-variant-numeric:tabular-nums}.score-side.away span{color:#dfd5de}.score-center{font-size:27px;color:#8e798a}.period-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.period-bar button{border-radius:9px;background:var(--panel);border:1px solid var(--stroke);color:#ddd0da;min-height:38px;font-weight:800;letter-spacing:.04em}.period-bar button.active{color:#201417;background:var(--gold);border-color:var(--gold)}main{padding:12px 12px 20px}.tab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.tab-grid button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:52px;padding:8px 4px;background:#252029;border:1px solid var(--stroke);color:#eee4ec;border-radius:12px;font-size:11px;letter-spacing:.025em;font-weight:850}.tab-grid button.active{border:1.5px solid var(--gold);background:#392b32;color:var(--gold)}.tab-ico{font-size:20px;font-weight:800}.tab-count{font-size:10px;background:#443844;border-radius:7px;padding:2px 6px;color:#f6dca6}.event-form,.activity-section{background:var(--panel);border:1px solid #3e3441;border-radius:var(--radius);padding:14px;margin-bottom:12px}.event-form h2,.activity-section h2{font-size:18px;letter-spacing:.01em;margin:0}.subtitle{font-size:12px;color:var(--muted);margin:5px 0 14px;line-height:1.4}.subheading{font-size:13px;letter-spacing:.035em;color:#f0dcb8;margin:15px 0 8px;font-weight:850;display:flex;justify-content:space-between}.subheading small{font-size:11px;font-weight:500;color:var(--muted)}.player-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.player-chip{border:1px solid #5b4a55;background:#302831;min-width:0;border-radius:9px;color:#fff;height:46px;padding:3px 2px;text-align:center;font-size:15px;font-weight:850;font-variant-numeric:tabular-nums;overflow:hidden}.player-chip small{display:block;font-size:9px;color:#c9bfca;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.player-chip.selected{background:var(--gold);color:#261b20;border-color:var(--gold)}.player-chip.selected small{color:#503a34}.empty-roster{background:#3b2b31;border:1px dashed #866d75;padding:15px;border-radius:10px;text-align:center;font-size:13px;color:#e8d1d8}.link-button{border:0;background:transparent;color:var(--gold);text-decoration:underline;font-weight:750}.rink-wrap{position:relative;background:#e8edef;border-radius:12px;overflow:hidden;margin:8px 0 9px;border:2px solid #787f86;user-select:none;touch-action:manipulation}.rink{display:block;width:100%;height:auto;outline:none;touch-action:manipulation}.rink [data-faceoff]{cursor:pointer;outline:none}.rink-caption{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.rink-caption span{display:block}.selection-line{border:1px solid #554756;padding:10px;border-radius:10px;color:#e4d9e2;font-size:13px;margin:9px 0}.selection-line strong{color:var(--gold)}.decision-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.decision-row button,.primary-btn{border:0;border-radius:10px;min-height:54px;font-weight:900;letter-spacing:.025em}.win-btn{background:#35895d;color:white}.loss-btn{background:#a24b58;color:white}.primary-btn{display:block;width:100%;background:var(--gold);color:#271b20;margin-top:13px}.primary-btn:disabled{background:#6a5b61;color:#d0bfc6}.event-form .hint{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.4}.type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.type-grid button{min-height:41px;background:#302831;border:1px solid var(--stroke);border-radius:8px;color:#f8f4f6;font-size:12px;font-weight:900}.type-grid button.selected{background:var(--gold);color:#281b20;border-color:var(--gold)}.select-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.select-row label, .setup-modal label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#e5d7e0;font-weight:750}.select-row select,.setup-modal input,.setup-modal select,.setup-modal textarea{min-width:0;width:100%;background:#322a33;color:white;border:1px solid #635261;border-radius:8px;padding:11px 9px;font-size:14px}.select-row select{min-height:44px}.setup-modal textarea{resize:vertical;line-height:1.55}.setup-modal label small{font-weight:500;color:var(--muted)}.selection-summary{font-size:12px;color:var(--gold-soft);line-height:1.5;min-height:20px}.activity-section{padding:12px}.section-row{gap:10px;margin-bottom:9px}.section-row h2{font-size:15px}.small-btn{background:#3b303e;border:1px solid #695569;color:#f4e6ef;padding:7px 10px;border-radius:8px;font-size:12px;font-weight:800}.event-log{max-height:310px;overflow:auto}.log-row{display:flex;align-items:center;gap:8px;min-height:39px;padding:9px 2px;border-bottom:1px solid #3e3441;font-size:12px}.log-row:last-child{border-bottom:0}.log-period{background:#3d3440;color:var(--gold);padding:4px 6px;border-radius:6px;font-size:10px;font-weight:900;flex-shrink:0}.log-body{flex:1;min-width:0;line-height:1.35}.log-body strong{font-weight:850}.log-body span{color:#bdb3bf}.log-remove{background:transparent;border:1px solid transparent;border-radius:7px;color:#bfacbd;min-width:30px;min-height:32px;font-size:19px}.empty-log{color:var(--muted);font-size:12px;text-align:center;padding:17px}.tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.secondary-btn{padding:10px 3px;background:var(--panel);border:1px solid var(--stroke);border-radius:9px;color:var(--gold-soft);font-size:12px;font-weight:750}.footer-row{margin:17px 2px 4px;font-size:11px;color:var(--muted)}.danger-link{background:none;border:0;color:#e9a2ab;font-size:11px;text-decoration:underline}.toast{position:fixed;z-index:100;left:50%;bottom:30px;max-width:calc(100vw - 30px);transform:translate(-50%,10px);background:#f7d794;color:#1d161a;padding:12px 18px;border-radius:12px;font-size:13px;font-weight:800;opacity:0;pointer-events:none;box-shadow:0 8px 20px #0008;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.setup-modal{width:min(100vw - 22px,640px);max-height:min(90dvh,820px);overflow-y:auto;color:var(--text);background:#211c23;border:1px solid #7a6270;border-radius:16px;padding:17px}.setup-modal::backdrop{background:#000a}.setup-modal form{display:flex;flex-direction:column;gap:14px}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{margin:0;font-size:22px}.modal-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.modal-head button{background:#382d3a;border:0;border-radius:9px;color:#fff;padding:8px 11px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.helper{margin:-3px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.helper b{color:var(--gold-soft)}
@media(min-width:590px){main{padding:15px}.tab-grid{grid-template-columns:repeat(4,1fr)}.player-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.event-form{padding:17px}}
@media(max-width:355px){.player-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.player-chip{font-size:14px}.tab-grid button{font-size:10px}.score-side span{font-size:10px}.brand-main{font-size:14px}}

/* V2: a compact period selector and four event tabs on one row even on narrow phones. */
.period-bar {gap:5px}
.period-bar button {min-height:29px; padding:3px 2px; border-radius:7px; font-size:11px; letter-spacing:0}
.tab-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:10px}
.tab-grid button {min-height:39px; font-size:11px; padding:5px 2px; gap:4px; border-radius:9px; white-space:nowrap; letter-spacing:0}
.tab-count {font-size:10px; padding:1px 4px; border-radius:6px}
.form-title-row {display:flex;align-items:center;gap:9px;min-width:0}
.form-title-row h2 {flex:0 0 auto}
.inline-instructions {font-size:11px;line-height:1.15;color:var(--muted);text-align:right;flex:1 1 auto;min-width:0}
.attack-direction {display:flex;align-items:center;justify-content:center;gap:9px;color:var(--gold);font-size:12px;font-weight:850;letter-spacing:.05em;margin:7px 0 -3px}
.attack-arrow {font-size:30px;line-height:0.85;font-weight:600;letter-spacing:0}
@media(max-width:355px) {
  .tab-grid button {font-size:10px;gap:3px}
  .tab-count {font-size:9px;padding:1px 3px}
  .inline-instructions {font-size:10px}
}

/* V3 compact fixed top controls and five event buttons */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sticky-header{padding:8px 10px 8px}
.brand-line{gap:8px;min-width:0}
.brand{min-width:0;flex:1 1 auto;gap:7px}
.brand-icon{flex:0 0 28px;width:28px;height:28px;font-size:18px;border-radius:7px}
.brand-label{min-width:0}
.brand-main{font-size:13px;white-space:nowrap}
.brand-sub{font-size:9px;max-width:180px}
.header-controls{display:flex;align-items:center;gap:6px;flex:0 0 auto}
#periodSelect{height:31px;min-width:57px;padding:3px 5px;background:#3e303b;color:var(--gold);border:1px solid #806777;border-radius:8px;font-size:12px;font-weight:850}
.header-controls .icon-btn{width:32px;height:31px;font-size:19px}
.score-and-undo{display:flex;align-items:center;gap:5px;justify-content:space-between;margin:5px 0 8px}
.score-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:5px;align-items:center;flex:1;max-width:none;margin:0}
.score-side{gap:5px;min-width:0}.score-side.away{justify-content:flex-end}
.score-side strong{font-size:26px;min-width:14px}
.score-side span{font-size:9px;max-width:70px}
.score-center{display:flex;align-items:center;gap:4px;font-size:20px}
.score-dash{font-size:20px;color:#c3b3bf}
.sog-count{min-width:26px;min-height:33px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:#342a34;border:1px solid #5c4e5a;border-radius:7px;color:var(--text);font-variant-numeric:tabular-nums}
.sog-count small{font-size:8px;line-height:1;color:#c0b1be;font-weight:700}
.sog-count b{font-size:14px;line-height:1.1;font-weight:900}
.undo-header{flex:0 0 auto;background:#ac374a;color:white;border:1px solid #d16e79;border-radius:8px;padding:6px 7px;font-weight:850;font-size:11px;min-height:32px;white-space:nowrap}
.tab-grid{display:grid;grid-template-columns:1.12fr 1fr .68fr .68fr 1.19fr;gap:4px;margin:0}
.tab-grid button{font-size:10px;padding:6px 2px;min-height:34px;letter-spacing:0;white-space:nowrap;border-radius:7px}
.tab-grid button.opp-shot-btn{background:#483036;border-color:#b65d6b;color:#fff2f2}
.tab-grid button.opp-shot-btn:active{background:#b64d60}
main{padding:10px 10px 20px}
.activity-section{display:block;padding:10px 12px}
.activity-section > summary{list-style:none;cursor:pointer;margin:0;min-height:25px}
.activity-section > summary::-webkit-details-marker{display:none}
.activity-section[open] > summary{margin-bottom:9px}
.log-disclosure{font-size:15px;color:var(--gold);transition:transform .1s}
.activity-section[open] .log-disclosure{transform:rotate(180deg)}
.recall-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;margin:9px 0}
.recall-row label{font-size:11px;font-weight:800;color:var(--gold-soft);white-space:nowrap}
.recall-row select,.select-row select{min-width:0;width:100%;background:#322a33;color:#fff;border:1px solid #635261;border-radius:8px;padding:9px 7px;font-size:13px;min-height:41px}
.select-row.triple-select{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}
.select-row.triple-select label{font-size:11px}
.select-row.one-select{grid-template-columns:minmax(0,1fr);margin-top:10px}
.edit-alert{background:#534028;border:1px solid #b99250;border-radius:8px;padding:8px;color:#ffeac0;font-size:12px}
.cancel-edit{margin-left:auto;background:#433240;border:1px solid #745b69;border-radius:6px;color:#eee1e9;padding:7px;font-size:11px}
.log-recall{border:1px solid #81654d;background:#4b382e;border-radius:7px;color:var(--gold);padding:6px 7px;font-size:11px;font-weight:850}
@media(max-width:355px){.brand-main{font-size:11px}.brand-sub{max-width:145px}.brand-icon{width:25px;height:25px;flex-basis:25px}.header-controls{gap:4px}.score-side span{font-size:8px;max-width:56px}.score-side strong{font-size:24px}.score-center{gap:3px}.sog-count{min-width:22px}.tab-grid{gap:3px}.tab-grid button{font-size:9px;padding:5px 1px}.undo-header{font-size:10px;padding:5px}.select-row.triple-select{gap:4px}.select-row.triple-select select{padding:7px 2px;font-size:11px}}

/* V4: compact frozen faceoff team percentage and collapsible ranked player stats */
.faceoff-banner{display:flex;align-items:center;justify-content:center;gap:9px;min-height:24px;margin:-2px 0 7px;font-size:11px;font-weight:750;color:#cfc2cd}
.faceoff-banner strong{font-size:15px;font-weight:900;color:var(--gold);font-variant-numeric:tabular-nums}
.faceoff-banner span{color:#bcb0ba;font-size:10px}
.fo-player-count{font-size:11px;color:var(--muted);font-weight:550}
.fo-table{border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums}
.fo-table th{color:#c7b7c6;text-align:right;border-bottom:1px solid #625262;padding:8px 6px}
.fo-table th:first-child,.fo-table td:first-child{text-align:left}
.fo-table td{text-align:right;padding:9px 6px;border-bottom:1px solid #413541}
.fo-table tr:last-child td{border-bottom:0}
.fo-table strong{color:var(--gold)}
.tools{grid-template-columns:1fr}

/* V5: Undo in top line, each team's FO% outside score totals */
.brand{flex:1 1 auto;min-width:0}
.header-controls{gap:5px}
.header-controls .undo-header{min-height:30px;padding:5px 6px;font-size:10px}
.score-and-undo{margin:6px 0 8px}
.score-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:3px}
.score-side{gap:4px}
.score-side > span.fo-score{display:flex;flex:0 0 auto;flex-direction:column;justify-content:center;align-items:center;max-width:none;width:43px;gap:1px;background:#342a34;border:1px solid #625363;border-radius:7px;padding:3px 2px;color:var(--gold)}
.fo-score small{color:#c7b4c4;font-size:8px;line-height:1}
.fo-score b{font-size:11px;font-weight:900;line-height:1.2;font-variant-numeric:tabular-nums}
.score-side.away > span.away-fo{color:#e4d6df}
.score-side > span:not(.fo-score){max-width:55px}
@media(max-width:390px){.score-side > span:not(.fo-score){max-width:45px;font-size:8px}.score-side > span.fo-score{width:39px}.fo-score b{font-size:10px}.score-side strong{font-size:24px}.score-center{gap:2px}.sog-count{min-width:23px}.header-controls .undo-header{font-size:9px;padding:4px 5px}}
@media(max-width:350px){.brand-icon{display:none}.brand-main{font-size:11px}.brand-sub{max-width:115px}.header-controls{gap:3px}.header-controls .undo-header{padding:4px}.score-side > span:not(.fo-score){max-width:37px;font-size:7px}.score-side > span.fo-score{width:36px}.fo-score b{font-size:9px}.score-side strong{font-size:21px}.score-center .sog-count{min-width:21px}.score-center .sog-count b{font-size:12px}}

/* V7 — increase readability of frozen match data line while retaining mobile fit. */
.score-row{gap:2px}
.score-side{gap:3px}
.score-side > span:not(.fo-score){font-size:clamp(10px,2.8vw,13px);max-width:76px;letter-spacing:-.025em}
.score-side strong{font-size:clamp(29px,7.5vw,38px);min-width:0}
.score-side > span.fo-score{width:49px;min-width:0;padding:4px 2px}
.fo-score small{font-size:10px}
.fo-score b{font-size:clamp(13px,3.6vw,17px)}
.sog-count{min-width:29px;min-height:39px}
.sog-count small{font-size:10px}
.sog-count b{font-size:clamp(17px,4.5vw,21px)}
.score-center{gap:3px}
.score-dash{font-size:24px}
@media(max-width:390px){
 .score-side > span:not(.fo-score){font-size:clamp(9px,2.65vw,11px);max-width:47px}
 .score-side > span.fo-score{width:43px}
 .fo-score b{font-size:13px}
 .score-side strong{font-size:30px}
 .sog-count{min-width:27px}
 .sog-count b{font-size:17px}
}
@media(max-width:350px){
 .score-side > span:not(.fo-score){max-width:34px;font-size:9px}
 .score-side > span.fo-score{width:38px}
 .fo-score small{font-size:9px}
 .fo-score b{font-size:12px}
 .score-side strong{font-size:28px}
 .score-center{gap:2px}
 .score-center .sog-count{min-width:24px}
 .score-center .sog-count b{font-size:16px}
 .score-center .sog-count small{font-size:9px}
 .score-dash{font-size:20px}
}

/* V8 shot plotting and heatmap */
.heatmap-key{display:flex;align-items:center;gap:6px;color:#e9dce5;font-size:12px;margin:8px 0}.heat-swatch{display:inline-block;width:17px;height:13px;background:radial-gradient(circle,#ce254c 10%,#ffb750 46%,#f5e5aa 75%,transparent 100%)}.goal-swatch{color:#9e2436;font-size:23px;font-weight:900;text-shadow:0 0 1px white}.heatmap-board{border:2px solid #65727f;border-radius:11px;overflow:hidden;background:#e9eff2}.heatmap-board svg{display:block;width:100%;height:auto}.heatmap-board .goal-map-star{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}.heatmap-board .map-legend{font-weight:850}.activity-section .hint{color:#a9a0aa;font-size:12px}.shot-player-selected{color:var(--gold);font-weight:800}.shot-setup{margin-bottom:8px}.shot-record-button{width:100%;margin-top:13px;min-height:51px}.heatmap-key .heat-swatch{flex-shrink:0}

/* V12: faceoffs by rink zone and attacking left/right */
.fo-zone-stats{padding-top:3px}
.fo-zones-note{color:var(--muted);font-size:11px;line-height:1.4;margin:4px 0 9px}
.fo-zone-scroll{width:100%;overflow-x:auto}
.fo-zones-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:12px}
.fo-zones-table th,.fo-zones-table td{padding:8px 5px;text-align:center;border-bottom:1px solid #473a48;white-space:nowrap}
.fo-zones-table th:first-child,.fo-zones-table th:nth-child(2),.fo-zones-table td:first-child,.fo-zones-table td:nth-child(2){text-align:left}
.fo-zones-table thead{color:var(--gold);background:#342a34}
.fo-zones-table tbody tr:nth-child(even){background:#2b242e}
.fo-zones-table .fo-zone-total{background:#493243!important;color:var(--gold-soft);font-weight:850}

/* V13: player-by-zone faceoff breakdown */
.fo-player-zone-table{font-size:12px;min-width:340px}
.fo-player-zone-table th:first-child,.fo-player-zone-table td:first-child{text-align:left;min-width:95px}
.fo-player-zone-table .fo-zone-stat{min-width:68px;text-align:center;white-space:normal}
.fo-zone-stat span,.fo-zone-stat strong{display:block;white-space:nowrap}
.fo-zone-stat strong{color:var(--gold);margin-top:3px}

/* V14: combined collapsible faceoff analysis */
.faceoff-analysis-heading{font-size:0.94rem;font-weight:800;letter-spacing:.02em;color:#e8c66b;margin:16px 0 8px;}
#faceoffStatsDetails .fo-zone-stats{margin-bottom:10px;}

/* V15: tap-to-sort player faceoff zones */
.fo-zones-table .fo-sort-btn{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;min-height:35px;padding:4px 2px;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-weight:800;white-space:nowrap;cursor:pointer}
.fo-zones-table .fo-sort-btn.is-active{background:#5a394f;color:#ffe49b}
.fo-zones-table .fo-sort-btn:focus-visible{outline:2px solid #ffe49b;outline-offset:1px}
.fo-zones-table .fo-sort-btn span{font-size:10px}

.map-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;color:#eee;font-weight:700}.map-filter select{min-width:0;max-width:75%;padding:8px;border-radius:8px;font-size:16px;background:#fff;color:#222}.sog-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.sog-controls button{min-height:44px;border:1px solid #dab75b;border-radius:9px;color:white;background:#653344;font-weight:700}.sog-controls button:nth-child(even){background:#592b37}.tools{display:flex;flex-wrap:wrap;gap:10px}.tools button{flex:1 1 180px}#faceoffMap .rink{width:100%;height:auto}#faceoffMap [data-map-dot]{cursor:pointer}#faceoffMapSelection{padding:4px 12px 14px}

/* V17: editable period for every recorded event */
.log-period-select{width:54px;min-width:54px;flex-shrink:0;min-height:38px;border:1px solid #7a6270;background:#3d3440;color:var(--gold);border-radius:7px;padding:5px 2px;font-size:12px;font-weight:850;text-align:center}.log-period-select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
