@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#151412;--panel:#22201b;--panel2:#29251e;--line:#4c4131;--txt:#f6efdf;--muted:#baaF9d;--gold:#daba78;--red:#aa6e58}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;background:radial-gradient(ellipse at 50% -30%,#403423 0%,#171613 48%,#11100e 100%);color:var(--txt)}
button,select{font:inherit}button{cursor:pointer;transition:transform .15s,background .15s,border .15s}button:active{transform:translateY(1px)}button:focus-visible,select:focus-visible{outline:2px solid #edcf91;outline-offset:2px}
.app-shell{max-width:1590px;margin:0 auto;padding:23px clamp(13px,3vw,42px) 12px}.masthead{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:15px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-size:10px;font-weight:700}.masthead h1{font:700 clamp(34px,5vw,56px)/1.06 Cinzel,Georgia,serif;margin:6px 0 4px;letter-spacing:.05em}.masthead h1 em{font-style:normal;color:var(--gold)}.masthead p{margin:7px 0 0;color:#bcae93;font:italic 15px Georgia,serif}.seal{text-align:center;line-height:1.45;color:var(--gold);font:600 11px Cinzel,serif;letter-spacing:.15em;border:1px solid #9d7e4b;border-radius:50%;width:100px;height:100px;display:grid;place-content:center;transform:rotate(8deg)}
.disclaimer{padding:10px 13px;border-left:3px solid #b48b4d;background:#29251d;color:#cabb9f;font-size:12px;margin-bottom:18px;line-height:1.55}.disclaimer strong{color:#efd8a3}
.layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,.83fr);gap:20px;align-items:start}.left-pane{min-width:0}.stage-controls{background:var(--panel);border:1px solid var(--line);padding:16px 16px 12px;margin-bottom:13px}.field-label{display:block;color:#d3b57f;letter-spacing:.16em;font-size:10px;font-weight:700;margin-bottom:7px}select{appearance:auto;background:#151412;color:#f4e7cf;border:1px solid #645238;border-radius:4px;padding:10px 12px;max-width:100%;min-width:0}#preset{width:100%;font-family:Georgia,serif;font-size:17px}.small{font-size:12px}.muted{color:#b7a994}#bout-description{margin:8px 0 13px;line-height:1.5}.control-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}button{border:1px solid #6a583d;background:#373027;color:#e9d9bb;border-radius:4px;padding:10px 13px;font-size:12px;font-weight:700}button:hover{background:#4c3f2d}button.primary{background:#bc9858;color:#1d1710;border:1px solid #e0bc77}button.primary:hover{background:#d7b373}.speed-label{margin-left:auto;font-size:12px;color:#d1bea0;white-space:nowrap}.speed-label select{padding:7px;margin-left:5px}.readout{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:11px;margin-top:14px;color:#dec99e;font-size:12px;font-weight:600}.readout #clock{font-variant-numeric:tabular-nums}
.arena-frame{background:#171510;border:7px solid #584935;box-shadow:inset 0 0 0 2px #2f261b,0 15px 35px #0007;position:relative}.arena-frame canvas{display:block;width:100%;height:auto;aspect-ratio:1.68;touch-action:manipulation}.arena-caption{display:flex;justify-content:space-between;font:600 10px Cinzel,Georgia,serif;letter-spacing:.12em;padding:10px 12px;color:#d6ba85;background:#211b15;border-top:2px solid #68533a}.arena-caption #winner-label{color:#ecddbd}.terrain-note{margin:12px 2px 16px;font-size:11px;color:#b4a48d;line-height:1.5}
.fighter-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fighter-card{background:#23201b;border:1px solid #564735;padding:15px;min-width:0}.fighter-card h3{font:600 clamp(15px,1.6vw,21px) Cinzel,Georgia,serif;margin:3px 0 4px;overflow-wrap:anywhere}.fighter-card .sub{color:#bbac92;font-size:11px}.fighter-card .line-head{display:flex;justify-content:space-between;margin-bottom:4px;font-size:11px;color:#ded0b8}.fighter-card .bars{display:grid;gap:8px;margin:14px 0}.bar{background:#130f0c;height:9px;border:1px solid #4c3e2f;overflow:hidden}.bar>div{height:100%;background:linear-gradient(90deg,#8d4839,#d66e55);transition:width .1s}.bar.stam>div{background:linear-gradient(90deg,#657a63,#a2b887)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:10px 0}.stat-grid>span{padding:5px;text-align:center;background:#30291e;color:#d9c5a0;font-size:10px}.stat-grid b{display:block;color:#f1ddac;font-size:16px;margin-top:3px}.gear{font-size:11px;line-height:1.5;color:#c3b59c}.fighter-card .action{font-size:11px;margin-top:9px;color:#dcbf84}.fighter-card .blurb{font-size:11px;line-height:1.6;color:#a99e8b;margin:10px 0 0}
.log-pane{background:#201d18;border:1px solid var(--line);min-height:735px;display:flex;flex-direction:column}.log-head{padding:19px 17px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.log-head h2{font:600 20px Cinzel,Georgia,serif;margin:5px 0 0}.count{border:1px solid #5d4b31;padding:7px 10px;color:var(--gold);font-size:12px;border-radius:3px}.events{overflow-y:auto;max-height:690px;min-height:390px;list-style:none;margin:0;padding:5px 0 0;flex:1}.events li{padding:11px 16px;border-bottom:1px solid #393125;font-size:12px;color:#ded2bc;line-height:1.5}.events time{font-size:10px;color:#b79661;margin-right:10px;font-variant-numeric:tabular-nums}.events li.hit{border-left:2px solid #bb6251}.events li.tactic{border-left:2px solid #d2a55c}.events li.end{border-left:2px solid #80a481;color:#f1d9a0;background:#2e291f}.events li.miss,.events li.dodge{color:#a9a093}.events li:first-child{background:#30281e}.log-foot{margin-top:auto;padding:15px 17px;border-top:1px solid var(--line);background:#262118}.log-foot strong{color:#dfc89b;text-transform:uppercase;letter-spacing:.10em;font-size:11px}.log-foot p{font-size:11px;line-height:1.65;color:#b1a592;margin:6px 0 0}
footer{display:flex;justify-content:space-between;gap:20px;margin-top:20px;padding:16px 0 8px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.06em;color:#897b67}
@media(max-width:1030px){.layout{grid-template-columns:1fr}.log-pane{min-height:0}.events{max-height:330px;min-height:120px}.seal{width:80px;height:80px;font-size:9px}}@media(max-width:560px){.app-shell{padding:12px}.masthead h1{font-size:34px}.seal{display:none}.fighter-grid{grid-template-columns:1fr}.speed-label{margin-left:0}footer{display:block;line-height:2}}

/* Roster and tournament features · v0.2 */
.view[hidden],.custom-controls[hidden]{display:none!important}
.page-tabs{display:flex;align-items:stretch;flex-wrap:wrap;gap:5px;margin:0 0 17px;border-bottom:1px solid var(--line)}
.page-tab{position:relative;border:1px solid transparent;border-bottom:0;border-radius:5px 5px 0 0;background:transparent;color:#b8aa94;padding:13px 19px;font:700 12px Inter,system-ui,sans-serif;letter-spacing:.02em}
.page-tab:hover{color:var(--txt);background:#2b261f}.page-tab.active{background:#2b251c;color:var(--gold);border-color:var(--line)}
.page-tab span{font-size:10px;color:#bea77f;margin-left:4px}
.custom-controls{border:1px solid #62533d;padding:12px;background:#30291e;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:9px;margin-bottom:13px}
.custom-controls label{font-size:10px;letter-spacing:.12em;color:#d5b678;font-weight:700;display:block;margin-bottom:6px}
.custom-controls select{width:100%;font-size:12px}.versus{font:700 13px Cinzel,Georgia,serif;color:#d7bb87;padding-bottom:12px}
.section-banner{padding:19px 21px 22px;border:1px solid var(--line);background:linear-gradient(105deg,#2b251c,#1e1b16);display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}
.section-banner h2{font:700 clamp(22px,3vw,32px) Cinzel,Georgia,serif;margin:7px 0 5px;color:#eee0bc}
.section-banner p{color:#b9aa91;max-width:720px;font-size:12px;line-height:1.6;margin:5px 0 0}
.section-banner .count{white-space:nowrap}
.roster-workspace{display:grid;grid-template-columns:minmax(255px,.74fr) minmax(0,1.55fr);gap:16px;align-items:start}
.roster-sidebar{background:#221e18;border:1px solid var(--line);padding:16px;min-width:0}
.roster-search,.profile-notes{width:100%;background:#15130f;color:#eee6d6;border:1px solid #685238;border-radius:3px;padding:11px;font-family:Inter,system-ui,sans-serif;resize:vertical}
.roster-search{margin-bottom:15px;font-size:13px}
.wide-select{width:100%;font-size:12px}
.filter-toggles{display:flex;gap:13px;flex-wrap:wrap;padding:13px 0}
.filter-toggles label{font-size:11px;color:#dbc7a9;display:flex;align-items:center;gap:6px;cursor:pointer}
.filter-toggles input{accent-color:#b68b4f}
.roster-count{font-size:11px;color:#cfb78b;border-top:1px solid var(--line);padding:11px 0}
.roster-list{display:flex;flex-direction:column;gap:4px;max-height:730px;overflow-y:auto}
.roster-person{display:flex;position:relative;flex-direction:column;text-align:left;gap:7px;background:#30291f;padding:11px;border:1px solid transparent;border-radius:2px;color:#eadfcb;width:100%;font-weight:400}
.roster-person:hover,.roster-person.chosen{background:#443526;border-color:#a27d48}
.roster-person-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.roster-person-head strong{font:600 14px Cinzel,Georgia,serif;line-height:1.25}
.roster-person-tag{font-size:9px;color:#c8ae81;text-transform:uppercase;letter-spacing:.06em;text-align:right;white-space:nowrap}
.roster-person small{color:#b5a48e;font-size:11px}.roster-star{position:absolute;right:11px;bottom:9px;color:#d8b678}
.roster-empty{font-size:12px;color:#bba991;line-height:1.6}
.roster-detail{min-height:580px;min-width:0;border:1px solid var(--line);padding:clamp(16px,3vw,28px);background:#242018}
.profile-heading{display:flex;align-items:start;justify-content:space-between;gap:13px;border-bottom:1px solid #544531;padding-bottom:16px}
.profile-heading h2{font:700 clamp(22px,2.4vw,31px) Cinzel,Georgia,serif;margin:9px 0 0;line-height:1.28}
.outline-action{background:transparent;border:1px solid #8c7147;color:#e2ca98;font-size:11px;padding:9px 12px;white-space:nowrap}
.outline-action:hover{background:#443526}
.profile-summary{font:italic 15px/1.65 Georgia,serif;color:#ddc7a4;margin:18px 0}
.profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:19px 0}
.profile-stat{background:#352b20;border:1px solid #584733;padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:4px}
.profile-stat small{font:700 10px Inter,sans-serif;color:#cbb083;letter-spacing:.12em}
.profile-stat strong{font:700 24px Cinzel,Georgia,serif;color:#f4dab0}
.profile-meta-block{padding:4px 0 10px}.profile-meta{color:#d6cbb7;font-size:12px;line-height:1.65;margin:8px 0}.profile-meta b{color:#dbc18f}
.inline-warning{font-size:11px;line-height:1.6;background:#3a2f21;padding:10px 12px;border-left:2px solid #c09c5a;color:#e5cdaa}
.profile-actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 23px}
.profile-actions button{font-size:12px;padding:11px 16px}
.profile-actions .primary{background:#bb955a;color:#24160b;border-color:#dabc81}
.profile-actions .secondary{background:#483925;color:#f4d7a2}
.profile-section-title{font:600 17px Cinzel,Georgia,serif;color:#d8c39a;margin:23px 0 12px}
.canon-text{border-top:1px solid #584633;padding-top:7px}
.canon-text p{color:#d6caba;font-size:12px;line-height:1.7;margin:12px 0;white-space:pre-line}
.source-link{display:inline-block;margin-top:6px;color:#eac687;font-size:12px;text-decoration:underline}
.private-explainer{font-size:11px;color:#bcae98;line-height:1.6}.profile-notes{min-height:98px}
.saved-note{display:block;color:#8eae85;font-size:10px;margin-top:5px;min-height:14px}
.tournament-explainer{padding:15px 18px;border-left:3px solid #ba9253;background:#31291c;color:#d1c3a9;line-height:1.65;font-size:12px;margin:15px 0}
.tournament-explainer strong{color:#f3ddaf}.tournament-stats{color:#ddc59d;margin:18px 0;font:700 13px Inter,sans-serif}
.bracket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bracket-pair{background:#262119;border:1px solid #514330;padding:16px;min-width:0}
.bracket-pair h3{font:600 17px Cinzel,Georgia,serif;line-height:1.4;margin:8px 0;color:#f0dfbe}
.bracket-pair p{font-size:12px;color:#c6b8a1;line-height:1.5}
.bracket-controls{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}
.recorded-flag,.scheduled-flag{color:#9bb48d;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.09em}.scheduled-flag{color:#d7b473}
.future-panel{border:1px dashed #8e734d;background:#2c251b;padding:19px 21px;margin:22px 0}.future-panel h3{font:600 18px Cinzel,Georgia,serif;color:#ead3a7;margin:0 0 8px}.future-panel p{font-size:12px;line-height:1.6;color:#bcad93;margin:0}
.tournament-notes{font-size:11px;color:#c4b18e;line-height:1.6}
@media(max-width:900px){.roster-workspace{grid-template-columns:1fr}.roster-list{max-height:310px}.roster-sidebar{position:static}.roster-person-head{align-items:center}.section-banner .count{display:none}}
@media(max-width:650px){.bracket-grid{grid-template-columns:1fr}.page-tab{padding:11px 12px;font-size:11px}.profile-heading{flex-direction:column}.custom-controls{grid-template-columns:1fr}.custom-controls .versus{padding:0;text-align:center}.profile-stats{gap:5px}.roster-detail{padding:16px}}

/* v0.3: physical reach, short animated combat, and tournament progression */
.volume-control{display:flex;align-items:center;gap:8px;color:#d2c0a4;font-size:11px;padding:3px 6px}
.volume-control input{width:90px;accent-color:#d7b674;cursor:pointer}
#audio-toggle{background:#29251f;border:1px solid #6b583b;color:#dec7a0}
.combat-summary{margin-top:9px;border-top:1px solid #4e4231;padding-top:9px;color:#e2cda6}
.session-panel{border:1px solid #6b583a;background:#211c16;padding:19px;margin:20px 0 23px}
.session-header{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}
.session-header h3{font:600 clamp(19px,2vw,25px) Cinzel,Georgia,serif;color:#eed9ad;margin:6px 0}
.session-header p{line-height:1.6;max-width:900px}
.session-status{font-size:11px;color:#f5daa7;border:1px solid #6f5836;border-radius:3px;padding:10px 12px;background:#382b1a}
.session-actions{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin:15px 0 11px;padding-top:14px;border-top:1px solid #453b2d}
.session-actions>label{display:flex;flex-direction:column;gap:5px;color:#d6bb8b;font-size:10px;letter-spacing:.06em;min-width:220px;flex:1}
.session-actions select{width:100%;font-size:11px;min-height:41px}
.session-actions button:disabled{opacity:.43;cursor:not-allowed}
.session-feedback{font-size:11px;line-height:1.6;color:#c6dfb2;min-height:19px}
.session-feedback.problem{color:#edb6a3}
.bracket-view-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:11px 0 10px;padding:9px 10px;background:#29231b;border:1px solid #574630;border-radius:4px}
.bracket-view-caption{font:700 10px Cinzel,Georgia,serif;color:#d4b989;letter-spacing:.10em;margin-right:7px}
.bracket-view-controls button{padding:6px 11px;min-height:31px;line-height:1.15}
.bracket-view-controls button:disabled{opacity:.4;cursor:not-allowed}
.bracket-view-controls output{min-width:49px;text-align:center;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:#f0d6a6}
.bracket-view-help{margin-left:auto;font-size:11px;color:#b7a78f}
.bracket-scroll{overflow-x:auto;overflow-y:auto;border:1px solid #574630;border-radius:4px;background:#16130f;max-height:980px;min-height:180px;scrollbar-color:#796344 #201a14;overscroll-behavior:contain}
.bracket-stage{display:flex;align-items:stretch;gap:0;padding:14px 18px 24px;min-width:max-content;transform-origin:top left}
.bracket-stage-round{display:grid;flex:0 0 223px;width:223px;position:relative}
.bracket-round-title{margin:0;text-align:center;padding:9px 4px;color:#e5c58d;font:700 12px Cinzel,Georgia,serif;border-bottom:1px solid #54452c}
.bracket-slot{display:flex;align-items:center;justify-content:center;min-height:0;position:relative}
/* Each connector lane contains one elbow per pair of matches.
   The upper/lower horizontal strokes begin at the source cards' borders.
   The vertical bridge joins them, and the center stroke enters the parent.
   This works for story brackets and 2/4/8/16/32-entry custom brackets. */
.bracket-connector-column{position:relative;flex:0 0 20px;width:20px;min-width:20px;align-self:stretch;pointer-events:none}
.bracket-connector-elbow{position:absolute;left:0;width:50%;box-sizing:border-box;
  border-top:2px solid #92764e;border-right:2px solid #92764e;
  border-bottom:2px solid #92764e}
.bracket-connector-elbow::after{content:"";position:absolute;left:100%;top:50%;
  width:calc(100% + 4px);height:2px;background:#92764e;transform:translateY(-50%)}
.bracket-match{background:#2d271e;border:1px solid #6e5738;border-left:3px solid #6e5738;width:100%;min-height:68px;padding:8px 10px;position:relative;z-index:1}
.bracket-match.historical{border-left-color:#7da182}
.bracket-match.simulated{border-left-color:#d3a861}
.bracket-match.playable-match{border-left-color:#d0bc8b}
.bracket-meta{display:block;letter-spacing:.11em;font-size:9px;color:#a99a80;margin-bottom:5px;font-weight:700}
.bracket-contender{font-size:11px;padding:4px 5px;color:#c3b39b;line-height:1.4;overflow-wrap:anywhere}
.bracket-contender+ .bracket-contender{border-top:1px solid #4a3e2e}
.bracket-contender.victor{background:#384332;color:#daf1cc;font-weight:700}
.bracket-contender.unknown{color:#786f62;font-style:italic}
.bracket-simulate,.bracket-report-link{font-size:10px;padding:5px 9px;margin-top:5px;background:#4b3924;color:#eed6a8;border-color:#957547}
.bracket-report-link{background:#29271f;color:#ddc7a3}
.session-report{padding:15px 0 0;color:#cbbba0}
.session-report:empty{display:none}
.session-report h3{margin:3px 0 8px;font:600 17px Cinzel,serif;color:#eed5ac}
.session-report p{font-size:12px;line-height:1.7}
.report-stat{background:#322a1e;padding:5px 9px}
.report-highlights{font-size:11px;line-height:1.7;max-height:220px;overflow-y:auto}
.report-highlights li{margin-bottom:5px}
.custom-creator{border:1px solid #534533;padding:18px;background:#252019;margin-bottom:25px}
.custom-creator h3,.archive-heading{font:600 19px Cinzel,Georgia,serif;color:#f1d5a0;margin:0 0 9px}
.custom-creator>p{font-size:12px;line-height:1.6;color:#baae99}
.custom-creator>label{display:flex;gap:10px;align-items:center;font-size:12px;color:#dfc69b;margin:15px 0}
.custom-creator>label input{padding:9px;color:#eadcc7;background:#17140f;border:1px solid #79603b;width:min(350px,100%);max-width:100%}
.custom-selector-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:15px 0 9px}
.custom-selector-head span{color:#e1c99c;font-size:11px;margin-right:auto}
.custom-selector-head button{padding:6px 10px;font-size:10px}
.custom-tournament-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;max-height:270px;overflow-y:auto;padding:9px;border:1px solid #584630;background:#1b1814;margin-bottom:13px}
.entrant-choice{display:flex;align-items:flex-start;gap:7px;padding:6px 4px;color:#cfbaa0;font-size:11px;line-height:1.5;cursor:pointer}
.entrant-choice input{accent-color:#ba975a;margin-top:2px}
.entrant-choice:hover{background:#372d22}
.archive-heading{margin-top:26px}
@media(max-width:740px){.custom-tournament-list{grid-template-columns:repeat(2,minmax(0,1fr))}.session-panel{padding:12px}.session-header{align-items:start}.session-actions button{flex:1}.bracket-stage-round{width:195px;flex-basis:195px}.custom-creator>label{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.custom-tournament-list{grid-template-columns:1fr}.custom-creator>label input{width:100%}}

.reach-toggle{display:flex;align-items:center;gap:6px;color:#dac5a5;font-size:11px;padding:5px 6px;white-space:nowrap;cursor:pointer}
.reach-toggle input{accent-color:#d8b26d;cursor:pointer}
.historical-hint{font-size:9px;color:#958970;display:block;margin:1px 0 4px;line-height:1.2}
.bracket-simulate+.bracket-simulate{margin-left:5px}

/* v0.3.1 — keep bracket cards fully within their assigned grid tracks. */
.bracket-slot{min-width:0;min-height:0}
.bracket-match{box-sizing:border-box;min-width:0;overflow-wrap:anywhere}
.bracket-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}
.bracket-actions .bracket-simulate{margin:0;min-width:0;flex:1 1 86px;padding:7px 6px;white-space:nowrap}
.bracket-stage-round{min-width:0}
/* Tournament continuation is visible only when the arena is running a watched bracket bout. */
.arena-tournament-controls{margin-top:13px;padding:14px;border:1px solid #937547;border-left:3px solid #d4af6b;background:#302719}
.arena-tournament-controls[hidden]{display:none!important}
.arena-tournament-heading{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.arena-tournament-heading strong{color:#ead6af;font:600 14px Cinzel,Georgia,serif}
.arena-tournament-message{font-size:12px;line-height:1.6;margin:9px 0 12px;color:#d4c4a8}
.arena-tournament-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.arena-tournament-actions button{font-size:11px}
.arena-tournament-actions button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:560px){.arena-tournament-actions button{flex:1 1 150px}}

/* v0.4 — combatant judgment and nonlethal victory status */
.conduct-toggle,.tournament-conduct{display:flex;align-items:center;gap:7px;font-size:11px;color:#dfc9a2;line-height:1.4;cursor:pointer}
.conduct-toggle input,.tournament-conduct input{accent-color:#be9a5e;flex:0 0 auto}
.conduct-toggle input:disabled{cursor:not-allowed}
.conduct-toggle:has(input:disabled){opacity:.65;cursor:default}
.custom-creator>.tournament-conduct{flex-direction:row;align-items:center;margin:10px 0 17px}
.behavior-note{color:#bcae95;font-size:10px;line-height:1.55;margin-top:7px}
.events li.yield,.events li.withdraw{border-left:3px solid #bad397;background:#2e3327;color:#e1edc9}
.yield-report{color:#c6d6a8;font-style:italic}
@media(max-width:560px){.conduct-toggle{width:100%;padding:4px 2px}}

.bout-summary{border:1px solid #7c6440;border-left:3px solid #d2b078;background:#2a251b;padding:16px;margin:14px 0 17px}
.bout-summary[hidden]{display:none!important}
.bout-summary h2{font:600 clamp(17px,2.1vw,23px) Cinzel,Georgia,serif;color:#e8d2a8;margin:7px 0}
.bout-summary p{font-size:12px;color:#d6c6a8;line-height:1.65;margin:7px 0 13px}
.bout-summary-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bout-summary-entrant{display:flex;flex-direction:column;gap:5px;background:#352e23;padding:10px 12px;font-size:11px;color:#bfae92;line-height:1.5}
.bout-summary-entrant strong{font-size:12px;color:#f2dbb2}
@media(max-width:560px){.bout-summary-stats{grid-template-columns:1fr}}

/* v0.9 — visible temporary movement impairments and precision counters */
.movement-impairment{
  margin-top:6px;padding:7px 9px;color:#f5c69b!important;
  border-left:3px solid #d99755;background:#3a281e;
}
.precision-counter{color:#e1cda4}
.fencing-status{margin-top:6px;padding:8px 9px;border-left:3px solid #b4b9dc;background:#272a31;color:#dbd6ee!important}
.fencing-status b{color:#f3e2b8}
.events li.fencing,.events li.parry,.events li.riposte{border-left:3px solid #9b91c6;background:#282431}

/* Searchable arena fighter selectors and compact log names */
.fighter-search-row{grid-column:1 / -1;display:flex;flex-direction:column;gap:7px;padding-bottom:7px}
.fighter-search-row input{width:100%;min-width:0;background:#151411;color:#f2e9d7;border:1px solid #85704c;border-radius:5px;padding:10px 12px;font:inherit}
.fighter-search-row input:focus{outline:2px solid #c8a76d;outline-offset:1px}
.fighter-search-row span{font-size:11px}

@media(max-width:650px){.bracket-view-help{width:100%;margin-left:0}.bracket-view-caption{width:100%}}
