/* Scoped, asset-free reference cards for the existing midnight kitchen dialog. */
.skill-timing{display:inline-flex;align-items:center;max-width:100%;padding:3px 7px;border:1px solid #d8bf8255;border-radius:6px;color:#dcc998;background:#d8bf820c;font:600 11px/1.4 system-ui,sans-serif;vertical-align:middle;overflow-wrap:anywhere}
.skill-timing-description{color:#b9c7cf!important;font-size:11px!important;line-height:1.55!important}
.character-skill-detail summary,.entry-skill-details summary{flex-wrap:wrap;gap:6px}
.kitchen-rules-guide {
  --rules-paper: #fff6dd;
  --rules-ink: #233447;
  --rules-red: #aa3e35;
  --rules-gold: #e6bc74;
  --rules-line: #bea47142;
  --rules-muted: #c2c8c8;
  width: 100%;
  min-width: 0;
  color: #f7ecd3;
  font-size: 13px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.kitchen-rules-guide *, .kitchen-rules-guide *::before, .kitchen-rules-guide *::after { box-sizing: border-box; }
.kitchen-rules-guide h3, .kitchen-rules-guide h4, .kitchen-rules-guide p { margin: 0; }
.kitchen-rules-guide .rules-intro { padding: 2px 0 18px; }
.kitchen-rules-guide .rules-mode { display: inline-block; color: var(--rules-gold); font-size: 10px; font-weight: 800; letter-spacing: .1em; margin-bottom: 7px; }
.kitchen-rules-guide .rules-intro h3 { color: #ffebbe; font-size: 20px; font-weight: 900; line-height: 1.35; margin: 0 0 8px; }
.kitchen-rules-guide .rules-intro p { color: #d6dcdc; font-size: 12px; }
.kitchen-rules-guide .rules-quick-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 12px 0 0; margin: 0; list-style: none; }
.kitchen-rules-guide .rules-quick-steps li { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; font-size: 11px; line-height: 1.4; color: #e7dcc4; }
.kitchen-rules-guide .rules-quick-steps b { display: grid; place-items: center; width: 20px; height: 20px; color: #f8daa1; font-size: 11px; border: 1px solid var(--rules-line); border-radius: 50%; background: #b8974e16; }
.kitchen-rules-guide .rules-section { border: 1px solid var(--rules-line); border-radius: 12px; background: #111b29ab; margin: 0 0 10px; overflow: hidden; }
.kitchen-rules-guide .rules-section summary { display: flex; align-items: center; gap: 10px; min-height: 60px; padding: 11px 12px; cursor: pointer; list-style: none; -webkit-tap-highlight-color: transparent; }
.kitchen-rules-guide .rules-section summary::-webkit-details-marker { display: none; }
.kitchen-rules-guide .rules-section summary::marker { content: ''; }
.kitchen-rules-guide .rules-section summary:focus-visible { outline: 2px solid #ffe0a0; outline-offset: -4px; border-radius: 12px; }
.kitchen-rules-guide .rules-section summary > span:nth-child(2) { flex: 1; min-width: 0; }
.kitchen-rules-guide .rules-section summary strong { display: block; font-size: 14px; font-weight: 850; color: #fbe4b6; line-height: 1.4; }
.kitchen-rules-guide .rules-section summary small { display: block; margin-top: 2px; color: var(--rules-muted); font-size: 10px; line-height: 1.5; }
.kitchen-rules-guide .rules-section-index { font: 600 15px Georgia,serif; color: #b39c76; flex: 0 0 auto; }
.kitchen-rules-guide .rules-section-toggle { font-size: 18px; color: var(--rules-gold); flex: 0 0 auto; }
.kitchen-rules-guide .rules-section[open] .rules-section-toggle { transform: rotate(45deg); }
.kitchen-rules-guide .rules-section[open] summary { border-bottom: 1px solid var(--rules-line); background: #d3ac6110; }
.kitchen-rules-guide .rules-section-body { padding: 12px; min-width: 0; }
.kitchen-rules-guide .rules-section-body > p { margin: 10px 0; color: #dbe0dd; font-size: 12px; }
.kitchen-rules-guide .rules-section-body > p:first-child { margin-top: 0; }
.kitchen-rules-guide .rules-note { color: var(--rules-muted); font-size: 11px; line-height: 1.65; }
.kitchen-rules-guide .rules-pattern-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.kitchen-rules-guide .rules-pattern { min-width: 0; padding: 10px; border: 1px solid #d6ba7e25; border-radius: 9px; background: linear-gradient(145deg,#3441546b,#26314135); }
.kitchen-rules-guide .rules-pattern-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 2px 5px; margin-bottom: 9px; }
.kitchen-rules-guide h4 { font-size: 13px; line-height: 1.5; color: #f4e1ba; font-weight: 850; }
.kitchen-rules-guide .rules-pattern-heading > span { color: #bcc7cc; font-size: 9px; }
.kitchen-rules-guide .rules-cards { display: grid; grid-template-columns: repeat(var(--rules-card-count),minmax(0,32px)); align-items: start; gap: 3px; min-width: 0; max-width: 100%; padding-bottom: 4px; }
.kitchen-rules-guide .rules-card { display: block; position: relative; min-width: 0; width: 100%; aspect-ratio: 3/4; border: 1px solid #d6b778; border-radius: 4px; background: linear-gradient(132deg,#fffdf4,var(--rules-paper) 65%,#eadcb8); color: var(--rules-ink); box-shadow: 0 2px 0 #887a5a,0 3px 5px #080d193d; font-family: Georgia,'Times New Roman',serif; user-select: none; }
.kitchen-rules-guide .rules-card.is-red { color: var(--rules-red); }
.kitchen-rules-guide .rules-card-corner { position: absolute; inset: 3px auto auto 3px; display: flex; flex-direction: column; align-items: center; line-height: 1; }
.kitchen-rules-guide .rules-card-corner b { font-size: 14px; font-weight: 800; }
.kitchen-rules-guide .rules-card-corner i { font-size: 9px; font-style: normal; margin-top: 1px; }
.kitchen-rules-guide .rules-card-pip { position: absolute; bottom: 3px; right: 3px; font-size: 14px; line-height: 1; }
.kitchen-rules-guide .rules-example-metrics { display: flex; flex-wrap: wrap; gap: 3px 9px; margin-top: 7px; color: #cdd5d7; font-size: 10px; line-height: 1.6; }
.kitchen-rules-guide .rules-example-metrics b { font-size: 13px; color: #ffe2a6; margin-left: 2px; font-variant-numeric: tabular-nums; }
.kitchen-rules-guide .rules-pattern > p { color: var(--rules-muted); font-size: 10px; line-height: 1.55; margin-top: 5px; }
.kitchen-rules-guide .rules-pattern.is-flush { border-color: #d6b56a68; background: linear-gradient(140deg,#72553330,#2c34451f); }
.kitchen-rules-guide .rules-special-row { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 11px; align-items: start; margin-bottom: 15px; }
.kitchen-rules-guide .rules-special-row p { color: #d8dcda; font-size: 12px; line-height: 1.65; margin-top: 4px; }
.kitchen-rules-guide .rules-special-row small { display: block; color: var(--rules-muted); font-size: 10px; margin-top: 5px; }
.kitchen-rules-guide .rules-block-example { display: grid; grid-template-columns: minmax(0,1fr) 18px minmax(0,1fr); gap: 5px; padding: 10px 0 12px; align-items: center; }
.kitchen-rules-guide .rules-example-label { display: block; color: #e4d8bd; font-size: 11px; margin-bottom: 5px; }
.kitchen-rules-guide .rules-block-example b { display: block; color: #e9d3a1; font-size: 10px; margin-top: 5px; line-height: 1.5; }
.kitchen-rules-guide .rules-block-divider { transform: rotate(-90deg); font-size: 21px; color: #a7c5b9; }
.kitchen-rules-guide .rules-rescue-note { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--rules-line); }
.kitchen-rules-guide .rules-rescue-note .rules-cards { margin: 9px 0; }
.kitchen-rules-guide .rules-rescue-note p { font-size: 12px; margin-top: 7px; color: #d5ded9; }
.kitchen-rules-guide .rules-rescue-note .rules-note { font-size: 11px; color: var(--rules-muted); }
.kitchen-rules-guide .rules-flow { margin: 0; padding: 0; list-style: none; counter-reset: kitchen-rule-step; }
.kitchen-rules-guide .rules-flow li { display: grid; grid-template-columns: 20px minmax(0,1fr); gap: 0 8px; padding: 0 0 13px; counter-increment: kitchen-rule-step; }
.kitchen-rules-guide .rules-flow li::before { content: counter(kitchen-rule-step); grid-row: 1/3; color: #cab086; font: 600 14px/22px Georgia,serif; }
.kitchen-rules-guide .rules-flow b { color: #f2d8a4; font-size: 12px; }
.kitchen-rules-guide .rules-flow span { color: #cbd6d8; font-size: 12px; line-height: 1.6; }
@media (max-width:420px) {
  .kitchen-rules-guide .rules-pattern-grid { grid-template-columns: minmax(0,1fr); }
  .kitchen-rules-guide .rules-pattern { padding: 10px; }
  .kitchen-rules-guide .rules-pattern-heading > span { font-size: 10px; }
  .kitchen-rules-guide .rules-pattern > p { font-size: 11px; }
  .kitchen-rules-guide .rules-example-metrics { font-size: 11px; }
  .kitchen-rules-guide .rules-section-body { padding: 10px; }
  .kitchen-rules-guide .rules-intro h3 { font-size: 18px; }
  .kitchen-rules-guide .rules-section summary { gap: 8px; padding: 10px; }
}
@media (prefers-reduced-motion:reduce) {
  .kitchen-rules-guide * { scroll-behavior: auto; transition: none; animation: none; }
}
/* A three-step practice table, isolated from every live match action. */
.training-progress{display:flex;gap:5px;align-items:center}.training-progress i{height:3px;flex:1;background:#59708455;border-radius:4px}.training-progress i.active{background:#e1c58c}.training-progress>span{margin-left:6px;font-size:11px;color:#b9c8d0}.training-mode{font-size:11px;color:#aebec9;margin:14px 0 8px!important}.training h3{font-size:19px;margin:8px 0!important;color:#ffe5b4}.training-field{min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;margin:14px 0 25px;padding:14px;background:#0c192538;border-radius:16px}.training-target{display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid #a8915b77;border-radius:14px;padding:10px 24px;background:#26394c;color:#e7d5af;transition:transform .2s,border-color .2s}.training-target>img,.training-target>svg{width:65px;height:65px;object-fit:contain}.training-target.selected{border-color:#e8c987;box-shadow:0 0 0 2px #e8c98735}.training-health{display:flex;gap:10px;align-items:center;font-size:38px;color:#e8a68b}.training-health span{font-size:15px;color:#d6d6cf}.training-incoming>span{display:block;text-align:center;margin-bottom:10px;color:#c3cbd2;font-size:12px}.training-hand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:22px}.training-card{padding:0;background:none;border:0;border-radius:9px;transition:transform .18s;cursor:pointer;min-width:46px}.training-card .rules-card{width:clamp(42px,12vw,62px);height:clamp(60px,17vw,86px);margin:0}.training-card.selected{transform:translateY(-12px);outline:2px solid #e4c586;outline-offset:3px}.training-card:focus-visible,.training-target:focus-visible{outline:3px solid #bbe4e7;outline-offset:3px}.training-success{font-size:14px;color:#bde5bb;animation:training-confirm .25s ease-out}.training-actions .gold-btn{min-height:48px}.training-actions .link-btn{min-height:44px}.hall-training{min-height:44px;width:100%;font-size:12px;color:#c7bb9f}
@keyframes training-confirm{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.training-card,.training-target{transition:none}.training-success{animation:none}}

.training-mode-boundary{font-size:12px;line-height:1.5;color:#c2cdd0;margin:8px 0}
