.showdown-overlay{position:fixed;left:0;top:0;right:0;bottom:0;z-index:100;display:flex;justify-content:center;align-items:center;background-color:rgba(255,255,255,.7);opacity:1;transition:opacity .5s ease-in-out}.showdown-overlay .loader{width:50px;height:50px;border-radius:50%;display:inline-block;border-top:5px solid #c70039;border-right:5px solid rgba(0,0,0,0);box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.avatar img{--bg-color: #fff;--color: #c70039;--border: 8px;--offset: 15px;--gap: 5px;padding:calc(var(--border) + var(--gap));border-width:var(--offset);border-style:solid;border-color:var(--bg-color);--_m: radial-gradient(50% 50%, var(--bg-color) calc(100% - var(--offset)),var(--bg-color) calc(100% - var(--border)));-webkit-mask:var(--_m);mask:var(--_m);--_g: var(--bg-color) calc(99% - var(--border)), var(--color) calc(100% - var(--border)) 99%,var(--bg-color);--_s: var(--offset);--_r: 100% 100% at;background:radial-gradient(var(--_r) 0 0, var(--_g)) calc(100% + var(--_s)) calc(100% + var(--_s)),radial-gradient(var(--_r) 100% 0, var(--_g)) calc(0% - var(--_s)) calc(100% + var(--_s)),radial-gradient(var(--_r) 0 100%, var(--_g)) calc(100% + var(--_s)) calc(0% - var(--_s)),radial-gradient(var(--_r) 100% 100%, var(--_g)) calc(0% - var(--_s)) calc(0% - var(--_s));background-size:50% 50%;background-repeat:no-repeat;transition:.4s}.avatar img:hover{--_s: 0px }.showdown-summary{display:grid;grid-template-columns:1fr auto 1fr;grid-auto-flow:row dense;padding:5px 20px;background-color:#fff;border:1px solid #e3e2df;border-radius:8px;box-shadow:0 1px 2px 0 rgba(15,23,42,.05)}.showdown-summary>div{display:flex;align-items:center;padding:12px 0;border-top:1px solid #efeeeb}.showdown-summary>div:nth-child(-n+3){border-top:0}.showdown-summary .row-label{grid-column:2;justify-content:center;padding-left:20px;padding-right:20px;text-align:center;font-size:1.3rem;letter-spacing:.04em;text-transform:uppercase;color:#888}.showdown-summary .value{font-size:2.2rem;font-weight:bold;color:#333;font-variant-numeric:tabular-nums}.showdown-summary .value.user{grid-column:1;justify-content:flex-end;text-align:right}.showdown-summary .value.opponent{grid-column:3;justify-content:flex-start;text-align:left}.showdown-summary .value small{font-size:.6em;font-weight:normal;color:#888}.showdown-summary .tally{display:inline-flex;justify-content:center;align-items:center;min-width:56px;height:56px;padding:0 10px;font-size:3rem;border:1px solid;border-radius:8px}.showdown-summary .tally.success{background-color:#f3f6ee;border-color:#bcd2a6;color:#46632d}.showdown-summary .tally.warning{background-color:#fbf8f1;border-color:#e3cfa0;color:#6b5126}.showdown-summary .tally.danger{background-color:#fbf5f2;border-color:#e0b8a8;color:#6b3829}.alert-card.meeting{margin:0;padding:0}.alert-card.meeting .meeting-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 15px;border-bottom:1px solid var(--alert-border);font-size:1.4rem}.alert-card.meeting .meeting-header .date{font-weight:bold;color:var(--alert-title)}.alert-card.meeting .meeting-header .title{flex:1;min-width:0;color:var(--alert-text)}.alert-card.meeting .meeting-header .round{color:#888}.alert-card.meeting .meeting-header .outcome{padding:1px 8px;font-size:1.2rem;font-weight:bold;letter-spacing:.04em;text-transform:uppercase;color:var(--alert-accent);border:1px solid var(--alert-border);border-radius:10px}.alert-card.meeting .meeting-body{display:flex;flex-direction:column;gap:8px;padding:12px 15px}.alert-card.meeting .player-row{display:flex;align-items:center;gap:12px}.alert-card.meeting .player{flex:1;min-width:0;display:flex;align-items:center;gap:8px;color:#333;text-decoration:none}.alert-card.meeting .player.women{color:#b7086e}.alert-card.meeting .player span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-card.meeting .games{display:flex;gap:6px}.alert-card.meeting .game,.alert-card.meeting .sets{display:inline-flex;justify-content:center;align-items:center;width:36px;height:36px;font-variant-numeric:tabular-nums;background-color:#fff;border:1px solid var(--alert-border);border-radius:6px}.alert-card.meeting .game.win{font-weight:bold;color:#333}.alert-card.meeting .game.loss{color:#999}.alert-card.meeting .sets{margin-left:6px;font-weight:bold}.alert-card.meeting .sets.win{background-color:#444;border-color:#444;color:#fff}.alert-card.meeting .sets.loss{color:#999}