.lcm-public-shell{--navy:#001c33;--gold:#fcc31e;--cyan:#8cecff;--line:rgba(140,236,255,.78);background:radial-gradient(circle at 50% 20%,#0d4b71 0,#062b49 35%,#001c33 72%,#001425 100%);color:#fff;border-radius:28px;padding:28px;box-shadow:0 30px 70px rgba(0,0,0,.28);overflow:hidden;position:relative}.lcm-public-shell:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(140,236,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(140,236,255,.05) 1px,transparent 1px);background-size:42px 42px;pointer-events:none}.lcm-public-shell>*{position:relative;z-index:1}.lcm-public-hero{text-align:center;padding:10px 0 18px}.lcm-kicker{font-size:12px;letter-spacing:.18em;color:var(--cyan);font-weight:800}.lcm-public-hero h2{color:#fff;margin:8px 0;font-size:clamp(26px,4vw,44px)}.lcm-meta{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.lcm-meta span{background:rgba(140,236,255,.12);border:1px solid rgba(140,236,255,.35);border-radius:999px;padding:6px 12px}.lcm-category-switcher{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:2px 0 16px}.lcm-category-chip{color:#dffaff;text-decoration:none;padding:7px 11px;border-radius:999px;border:1px solid rgba(140,236,255,.3);background:rgba(0,0,0,.12);font-size:13px;font-weight:700}.lcm-category-chip:hover,.lcm-category-chip.is-active{color:#001c33;background:var(--cyan);box-shadow:0 0 18px rgba(140,236,255,.22)}.lcm-public-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:6px 0 20px}.lcm-public-tabs a{color:#fff;text-decoration:none;background:rgba(0,0,0,.18);border:1px solid rgba(140,236,255,.25);padding:8px 12px;border-radius:10px}.lcm-bracket-wrap{overflow:auto;padding:10px 0 25px}.lcm-bracket-title{width:max-content;min-width:220px;margin:0 auto 20px;background:var(--cyan);color:#001c33;font-weight:900;font-size:18px;padding:11px 28px;border-radius:999px;box-shadow:0 0 30px rgba(140,236,255,.35)}.lcm-bracket{display:flex;gap:86px;min-width:max-content;padding:10px 18px 18px}.lcm-round{min-width:275px;display:flex;flex-direction:column;position:relative}.lcm-round__title{text-align:center;font-size:13px;font-weight:900;color:#d6f8ff;letter-spacing:.06em;margin-bottom:12px}.lcm-round__heats{display:flex;flex:1;flex-direction:column;justify-content:space-around;gap:32px}.lcm-match{position:relative;background:rgba(0,15,30,.76);border:1px solid rgba(140,236,255,.48);border-radius:10px;padding:4px;box-shadow:0 0 18px rgba(71,193,255,.12)}.lcm-match:after{content:"";position:absolute;right:-86px;top:50%;width:86px;height:1px;background:linear-gradient(90deg,var(--line),rgba(140,236,255,.32))}.lcm-round:not(:last-child) .lcm-match:nth-child(odd):before{content:"";position:absolute;right:-86px;top:50%;width:1px;height:calc(50% + 32px);background:rgba(140,236,255,.38)}.lcm-round:last-child .lcm-match:after,.lcm-round:last-child .lcm-match:before{display:none}.lcm-match__code{font-size:10px;color:#74cce3;padding:2px 7px}.lcm-team{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border-top:1px solid rgba(255,255,255,.08)}.lcm-team__name{display:block;min-width:0}.lcm-team__name b{color:#fff}.lcm-team__name small{display:block;color:#8fb4c7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.lcm-team__score{min-width:27px;text-align:center;font-weight:900;border-left:1px solid rgba(140,236,255,.25);padding-left:7px}.lcm-team.is-winner{background:linear-gradient(90deg,rgba(252,195,30,.18),transparent)}.lcm-team.is-winner .lcm-team__score{color:var(--gold)}.lcm-team.is-advanced:not(.is-winner){background:linear-gradient(90deg,rgba(140,236,255,.1),transparent)}.lcm-section{margin:26px 0;background:rgba(0,13,27,.55);border:1px solid rgba(140,236,255,.18);border-radius:18px;padding:18px}.lcm-section h3{color:#fff;margin-top:0}.lcm-table-wrap{overflow:auto}.lcm-table{width:100%;border-collapse:collapse;min-width:700px}.lcm-table th,.lcm-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.1);text-align:left}.lcm-table th{color:var(--cyan)}.lcm-judge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.lcm-judge{background:rgba(140,236,255,.08);border:1px solid rgba(140,236,255,.18);padding:14px;border-radius:12px}.lcm-judge strong,.lcm-judge span,.lcm-judge small{display:block}.lcm-judge span{color:var(--cyan)}.lcm-judge small{color:#9bb8c7}.lcm-scoreboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lcm-live-card{background:linear-gradient(145deg,rgba(140,236,255,.1),rgba(0,0,0,.14));border:1px solid rgba(140,236,255,.22);border-radius:15px;padding:16px}.lcm-live-label{display:block;color:var(--cyan);font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:8px}.lcm-live-card>strong{display:block;font-size:18px;margin-bottom:10px}.lcm-live-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid rgba(255,255,255,.08)}.lcm-public-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lcm-public-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#dff8ff}.lcm-public-form input,.lcm-public-form select{width:100%;box-sizing:border-box;border:1px solid rgba(140,236,255,.3);border-radius:10px;background:#fff;color:#102436;padding:10px 11px;min-height:42px}.lcm-public-form .lcm-check{grid-column:1/-1;display:flex;flex-direction:row;align-items:flex-start;font-weight:500}.lcm-public-form .lcm-check input{width:auto;min-height:0;margin-top:3px}.lcm-public-button{grid-column:1/-1;border:0;border-radius:12px;padding:12px 18px;background:var(--gold);color:#001c33;font-weight:900;cursor:pointer}.lcm-alert{margin:0 0 14px;padding:11px 13px;border-radius:10px}.lcm-alert.success{background:rgba(67,211,144,.15);border:1px solid rgba(67,211,144,.4)}.lcm-alert.error{background:rgba(255,104,104,.13);border:1px solid rgba(255,104,104,.35)}.lcm-empty{padding:25px;text-align:center;border:1px dashed rgba(140,236,255,.4);border-radius:12px;color:#bfefff}@media(max-width:700px){.lcm-public-shell{padding:16px;border-radius:18px}.lcm-bracket{gap:52px}.lcm-match:after{right:-52px;width:52px}.lcm-round:not(:last-child) .lcm-match:nth-child(odd):before{right:-52px}.lcm-scoreboard-grid,.lcm-public-form{grid-template-columns:1fr}}
.lcm-bye-badge{display:inline-block;margin-left:6px;padding:2px 7px;border-radius:999px;background:var(--gold);color:#001c33;font-size:9px;font-weight:900;vertical-align:middle}.lcm-bye-note{padding:5px 7px 7px;color:#ffd95a;font-size:10px;font-weight:800;text-align:center;border-top:1px solid rgba(255,255,255,.08)}

/* v0.3.5 — dynamic SVG tournament connectors */
.lcm-bracket{position:relative;isolation:isolate;align-items:stretch}
.lcm-round{position:relative;z-index:2}
.lcm-bracket__lines{position:absolute;left:0;top:0;pointer-events:none;z-index:1;overflow:visible}
.lcm-bracket__lines path{fill:none;stroke:var(--line);stroke-width:1.35;vector-effect:non-scaling-stroke;shape-rendering:geometricPrecision;filter:drop-shadow(0 0 2px rgba(140,236,255,.22))}
.lcm-match:after,.lcm-round:not(:last-child) .lcm-match:nth-child(odd):before{display:none!important;content:none!important}
.lcm-match{z-index:2}

/* v0.4.0 — LIVE refresh + Check-in */
.lcm-live-fragment{transition:opacity .2s ease}.lcm-live-fragment.is-live-updated{opacity:.82}.lcm-live-pill{position:relative}.lcm-live-pill:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#41d88a;margin-right:6px;box-shadow:0 0 0 4px rgba(65,216,138,.12)}.lcm-live-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.lcm-live-heading h3{margin:0}.lcm-live-heading span{font-size:11px;color:#8cecff}.lcm-checkin .lcm-public-form{max-width:760px}.lcm-field-note{grid-column:1/-1;margin:0;color:#9fc4d5;font-size:13px}

/* v0.5.0 — OBS overlay and winners */
.lcm-obs-page{margin:0!important;padding:0!important;background:transparent!important;overflow:hidden;color:#fff;font-family:Arial,Helvetica,sans-serif}.lcm-obs-page .lcm-obs-live{width:100vw;height:100vh;box-sizing:border-box}.lcm-obs-overlay{--navy:#001c33;--gold:#fcc31e;--cyan:#8cecff;--line:rgba(140,236,255,.86);box-sizing:border-box;width:100%;min-height:100%;color:#fff;padding:44px 56px;display:flex;flex-direction:column;gap:22px;background:transparent}.lcm-obs-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 20px;border:1px solid rgba(140,236,255,.4);background:linear-gradient(90deg,rgba(0,28,51,.94),rgba(6,54,84,.86));border-radius:16px}.lcm-obs-top span{font-weight:800;letter-spacing:.08em;font-size:18px;color:#dffaff}.lcm-obs-top b{font-size:22px;color:var(--cyan)}.lcm-obs-main{width:min(1100px,100%);margin:auto;background:linear-gradient(145deg,rgba(0,28,51,.96),rgba(2,51,80,.9));border:1px solid rgba(140,236,255,.55);border-radius:24px;padding:28px;box-shadow:0 18px 70px rgba(0,0,0,.36)}.lcm-obs-heat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.lcm-obs-heat-head small{display:block;color:var(--cyan);font-weight:900;letter-spacing:.1em}.lcm-obs-heat-head strong{display:block;font-size:36px;line-height:1.05}.lcm-obs-heat-head>span{color:#c2deea;font-size:18px;text-align:right}.lcm-countdown{font-variant-numeric:tabular-nums;text-align:center;font-size:clamp(72px,10vw,150px);line-height:1;font-weight:900;letter-spacing:.04em;color:#fff;text-shadow:0 0 26px rgba(140,236,255,.34);padding:16px 0 24px}.lcm-countdown.is-expired{color:var(--gold)}.lcm-obs-pilots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lcm-obs-pilot{display:flex;justify-content:space-between;align-items:center;gap:18px;background:rgba(0,10,22,.72);border:1px solid rgba(140,236,255,.24);border-radius:12px;padding:14px 16px;font-size:20px}.lcm-obs-pilot span{min-width:0}.lcm-obs-pilot b{color:var(--cyan)}.lcm-obs-pilot small{display:block;color:#9fc4d5;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lcm-obs-pilot>strong{font-size:30px;color:var(--gold)}.lcm-obs-pilot.is-place-1{border-color:rgba(252,195,30,.78);background:linear-gradient(90deg,rgba(252,195,30,.18),rgba(0,10,22,.72))}.lcm-obs-next{margin-left:auto;min-width:360px;padding:13px 18px;border-radius:14px;background:rgba(0,28,51,.9);border:1px solid rgba(140,236,255,.35)}.lcm-obs-next span{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;color:var(--cyan)}.lcm-obs-next strong{display:block;font-size:20px}.lcm-obs-message{align-self:center;background:rgba(252,195,30,.95);color:#001c33;font-weight:900;border-radius:999px;padding:11px 26px;font-size:18px}.lcm-obs-empty{margin:auto;padding:36px 48px;border-radius:18px;background:rgba(0,28,51,.9);border:1px dashed rgba(140,236,255,.55);font-size:28px;font-weight:800}.lcm-obs-overlay.is-results .lcm-obs-pilots{width:min(1000px,100%);margin:auto}.lcm-obs-overlay.is-results .lcm-obs-heat-head{width:min(1000px,100%);margin:30px auto 18px}.lcm-obs-overlay.is-bracket{overflow:auto;background:rgba(0,28,51,.12)}.lcm-obs-overlay.is-bracket .lcm-bracket-wrap{flex:1}.lcm-obs-overlay.is-bracket .lcm-bracket-title{display:none}.lcm-obs-overlay.is-winners{justify-content:center}.lcm-winners-heading{text-align:center;margin-bottom:18px}.lcm-winners-heading span{display:block;color:var(--cyan);font-size:12px;font-weight:900;letter-spacing:.16em}.lcm-winners-heading strong{font-size:26px}.lcm-podium{display:flex;align-items:flex-end;justify-content:center;gap:16px;flex-wrap:wrap}.lcm-podium-place{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:220px;padding:20px 16px;border:1px solid rgba(140,236,255,.28);border-radius:16px;background:rgba(0,28,51,.86)}.lcm-podium-place.place-1{order:2;min-height:220px;border-color:rgba(252,195,30,.7);background:linear-gradient(180deg,rgba(252,195,30,.18),rgba(0,28,51,.9))}.lcm-podium-place.place-2{order:1;min-height:185px}.lcm-podium-place.place-3{order:3;min-height:165px}.lcm-podium-medal{font-size:44px}.lcm-podium-place b{color:var(--cyan);font-size:15px}.lcm-podium-place strong{font-size:20px;margin-top:5px}.lcm-podium-place small{color:#9fc4d5;margin-top:4px}.lcm-podium-place em{font-style:normal;font-weight:900;color:var(--gold);margin-top:12px}.lcm-winners-section .lcm-podium-place{background:rgba(140,236,255,.08)}
@media(max-width:900px){.lcm-obs-overlay{padding:22px}.lcm-obs-top{align-items:flex-start;flex-direction:column}.lcm-obs-main{padding:18px}.lcm-obs-pilots{grid-template-columns:1fr}.lcm-obs-next{min-width:0;width:100%;box-sizing:border-box}.lcm-obs-heat-head{align-items:flex-start;flex-direction:column}.lcm-obs-heat-head>span{text-align:left}.lcm-podium{align-items:stretch}.lcm-podium-place,.lcm-podium-place.place-1,.lcm-podium-place.place-2,.lcm-podium-place.place-3{order:initial;min-height:0;min-width:170px}}

.lcm-bracket-wrap,.lcm-section,.lcm-obs-overlay{--navy:#001c33;--gold:#fcc31e;--cyan:#8cecff;--line:rgba(140,236,255,.78)}

/* v0.6.0 — public schedule */
.lcm-live-time{display:block;color:#8cecff;margin:-4px 0 9px;font-size:12px}.lcm-section .lcm-table td:first-child{white-space:nowrap}
.lcm-public-preliminary{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:rgba(252,195,30,.18);border:1px solid rgba(252,195,30,.45);color:#ffe083;font-size:8px;font-weight:900}

/* v0.8.0 — Double Elimination lanes */
.lcm-double-bracket{display:grid;gap:24px}.lcm-double-lane{padding:16px;border:1px solid rgba(140,236,255,.2);border-radius:18px;background:rgba(0,18,35,.28)}.lcm-double-lane__title{font-size:12px;font-weight:900;letter-spacing:.16em;color:var(--cyan);margin:0 0 8px}.lcm-double-lane:nth-of-type(3){border-color:rgba(252,195,30,.28)}.lcm-double-lane:nth-of-type(3) .lcm-double-lane__title{color:var(--gold)}.lcm-double-champion{margin:4px auto 12px;width:min(560px,100%);padding:16px 20px;border:1px solid rgba(252,195,30,.5);border-radius:16px;background:linear-gradient(135deg,rgba(252,195,30,.18),rgba(0,28,51,.78));text-align:center}.lcm-double-champion span,.lcm-double-champion strong,.lcm-double-champion small{display:block}.lcm-double-champion span{font-size:11px;letter-spacing:.18em;color:var(--gold);font-weight:900}.lcm-double-champion strong{font-size:22px;margin:5px 0}.lcm-double-champion small{color:#b9d8e7}

/* v0.9.2 — keep the tournament title legible when a WordPress theme styles headings. */
.lcm-public-shell .lcm-public-hero h2{color:#f4fbff!important;-webkit-text-fill-color:#f4fbff!important}

/* v0.9.3 — paired rails with rounded turns and separate connection ports. */
.lcm-bracket[data-lcm-bracket="1"]{gap:104px}
.lcm-bracket__lines .lcm-connector-rail{fill:none;stroke:rgba(140,236,255,.95);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px rgba(140,236,255,.18))}
@media(max-width:700px){.lcm-bracket[data-lcm-bracket="1"]{gap:76px}}

/* v0.10.0 — custom appearance, accessible tabs and bracket navigation */
.lcm-public-shell{background:radial-gradient(circle at 50% 20%,var(--lcm-bg-start,#0d4b71),var(--lcm-bg-end,#001425) 85%);color:var(--lcm-text,#f4fbff);font-family:var(--lcm-font,system-ui,Arial,sans-serif)}
.lcm-public-shell h2,.lcm-public-shell h3,.lcm-public-shell h4,.lcm-public-shell .lcm-public-hero h2{color:var(--lcm-text,#f4fbff)!important;-webkit-text-fill-color:var(--lcm-text,#f4fbff)!important}
.lcm-public-shell .lcm-team__name b,.lcm-public-shell .lcm-public-tabs a{color:var(--lcm-text,#f4fbff)}
.lcm-public-shell .lcm-section{--cyan:inherit}.lcm-bracket-wrap{color:var(--lcm-text,#f4fbff)}
.lcm-tournament-logo{max-width:180px;max-height:110px;object-fit:contain;display:block;margin:0 auto 16px}
.lcm-public-tabs a[aria-selected=true]{background:var(--cyan,#8cecff);color:#001c33!important;border-color:var(--cyan,#8cecff);font-weight:800}
.lcm-public-tabs a:focus-visible,.lcm-tool-button:focus-visible,.lcm-tab-panel:focus-visible{outline:3px solid var(--cyan,#8cecff);outline-offset:3px}
.lcm-tab-panel[hidden]{display:none!important}.lcm-tab-panel{min-width:0}
.lcm-bracket-wrap[data-lcm-bracket-tools]{overflow:visible;font-family:var(--lcm-font,system-ui,Arial,sans-serif)}
.lcm-bracket-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin:12px 0 18px;color:var(--lcm-text,#f4fbff)}
.lcm-bracket-tools label{display:grid;gap:5px;font-size:13px;font-weight:700}.lcm-bracket-tools input[type=search]{min-width:210px;border:1px solid rgba(140,236,255,.4);border-radius:8px;background:#fff;color:#102436;padding:9px 12px;min-height:40px}
.lcm-bracket-tools input[type=range]{width:150px;min-height:40px;accent-color:var(--cyan,#8cecff)}
.lcm-tool-button{border:1px solid rgba(140,236,255,.4);border-radius:8px;padding:9px 12px;background:#082b40;color:var(--lcm-text,#f4fbff);cursor:pointer;font:inherit;font-size:13px;min-height:40px}
.lcm-tool-button:hover{background:#124662}.lcm-search-status{font-size:13px;padding-bottom:10px;color:var(--cyan,#8cecff)}
.lcm-bracket-viewport{overflow:auto;max-width:100%;padding-bottom:18px}.lcm-bracket-canvas{position:relative;min-height:1px}.lcm-bracket[data-lcm-bracket="1"]{width:max-content;min-width:max-content;gap:var(--lcm-round-gap,104px);transform-origin:top left}
.lcm-bracket__lines .lcm-connector-rail{stroke:var(--lcm-line-color,#8cecff);stroke-width:var(--lcm-line-width,1.6);opacity:.95}
.lcm-match.is-search-match{border-color:var(--gold,#fcc31e);box-shadow:0 0 0 2px rgba(252,195,30,.25)}.lcm-team.is-pilot-highlight{background:rgba(252,195,30,.2)}
.lcm-has-search .lcm-connector-rail{opacity:.2}.lcm-has-search .is-route-highlight .lcm-connector-rail{opacity:1;stroke:var(--gold,#fcc31e)}
.lcm-live-fragment:fullscreen,.lcm-bracket-wrap:fullscreen{box-sizing:border-box;background:var(--lcm-bg-end,#001425);padding:20px;overflow:auto;color:var(--lcm-text,#f4fbff)}
@media(max-width:700px){.lcm-bracket[data-lcm-bracket="1"]{gap:var(--lcm-mobile-gap,76px)}.lcm-bracket-tools input[type=search]{min-width:0;width:100%}.lcm-bracket-tools label:first-child{width:100%}}
