.rv{--rv-brilliant:#1baca6;--rv-great:#5c8bb0;--rv-best:#81b64c;--rv-excellent:#81b64c;--rv-good:#96af8b;--rv-inaccuracy:#e6a700;--rv-mistake:#e58f2a;--rv-blunder:#ca3431;--rv-eval-dark:#2b2f36;--rv-eval-light:#f2f2ee;--rv-eval-mid:#8a8f99;--rv-brilliant-soft:#1baca680;--rv-great-soft:#5c8bb080;--rv-best-soft:#81b64c73;--rv-excellent-soft:#81b64c66;--rv-good-soft:#96af8b73;--rv-inaccuracy-soft:#e6a70073;--rv-mistake-soft:#e58f2a80;--rv-blunder-soft:#ca343180;max-width:var(--page-wide,1120px);padding:var(--s-5,24px) var(--page-gutter,16px) var(--s-8,64px);flex-direction:column;gap:20px;margin:0 auto;display:flex}.rv [data-grade=brilliant]{--g:var(--rv-brilliant)}.rv [data-grade=great]{--g:var(--rv-great)}.rv [data-grade=best],.rv [data-grade=excellent]{--g:var(--rv-best)}.rv [data-grade=good]{--g:var(--rv-good)}.rv [data-grade=inaccuracy]{--g:var(--rv-inaccuracy)}.rv [data-grade=mistake]{--g:var(--rv-mistake)}.rv [data-grade=blunder]{--g:var(--rv-blunder)}.rv-head{flex-direction:column;gap:4px;display:flex}.rv-over{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px;font-weight:500}.rv-title{font-family:var(--font-display-stack);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:clamp(24px,4vw,36px);font-weight:500;line-height:1.15}.rv-vs{color:var(--muted);font-size:.7em;font-weight:500}.rv-sub{color:var(--muted);margin:0;font-size:14px}.rv-sub a{color:inherit;text-decoration:underline}.rv-progress{border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);padding:10px 14px;font-size:14px;position:relative;overflow:hidden}.rv-progress span{z-index:1;position:relative}.rv-progress i{background:var(--panel-2);transition:width .3s;position:absolute;inset:0 auto 0 0}.rv-error{color:var(--bad);margin:0}.rv-scores{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rv-player{border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);grid-template-columns:1fr auto;align-items:baseline;gap:2px 12px;min-width:0;padding:14px;display:grid}.rv-player[data-side=b]{background:var(--piece-black);color:var(--text);box-shadow:inset 0 0 0 1px var(--border-strong)}.rv-player[data-side=b] .rv-acc-label,.rv-player[data-side=b] small{color:color-mix(in srgb, var(--bg) 70%, transparent)}.rv-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.rv-name small{color:var(--muted);font-weight:400}.rv-acc{font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;grid-row:span 2;font-size:34px;line-height:1}.rv-acc-label{color:var(--muted);font-size:12px}.rv-counts{flex-wrap:wrap;grid-column:1/-1;gap:4px 12px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.rv-counts li{align-items:center;gap:4px;display:flex}.rv-counts i,.rv-moves i,.rv-moments i,.rv-verdict i{font-style:normal;font-weight:500;font-family:var(--font-mono-stack);color:var(--text);background:var(--g,var(--muted));border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;font-size:11px;display:inline-flex}.rv-main{grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:start;gap:24px;display:grid}.rv-boardcol{flex-direction:column;gap:10px;min-width:0;display:flex}.rv-boardwrap{grid-template-columns:22px minmax(0,1fr);gap:8px;display:grid}.rv-board{border-radius:var(--r);border:1px solid var(--border-strong);overflow:hidden}.rv-bar{background:var(--rv-eval-dark);border-radius:6px;position:relative;overflow:hidden}.rv-bar i{background:var(--rv-eval-light);transition:height .35s cubic-bezier(.4,0,.2,1);position:absolute;inset:auto 0 0}.rv-bar[data-flipped]{transform:rotate(180deg)}.rv-bar span{text-align:center;font-family:var(--font-mono-stack);color:var(--rv-eval-dark);z-index:1;writing-mode:vertical-rl;font-size:9px;font-weight:500;position:absolute;bottom:6px;left:0;right:0;transform:rotate(180deg)}.rv-bar[data-flipped] span{top:6px;bottom:auto;transform:none}.rv-verdict{border:1px solid var(--g,var(--border-strong));border-radius:var(--r);background:var(--surface);border-left-width:5px;flex-direction:column;gap:2px;min-height:48px;padding:8px 12px;display:flex}.rv-verdict span{color:var(--muted);font-size:14px}.rv-nav{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.rv-graph{border-radius:var(--r);border:1px solid var(--border-strong);cursor:pointer;width:100%;height:96px;display:block}.rv-graph-black{fill:var(--rv-eval-dark)}.rv-graph-white{fill:var(--rv-eval-light)}.rv-graph-mid{stroke:var(--rv-eval-mid);stroke-width:1px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.rv-graph-cursor{stroke:var(--pen,#e0482e);stroke-width:2px;vector-effect:non-scaling-stroke}.rv-graph-dot{fill:var(--g);stroke:var(--text);stroke-width:1.5px;vector-effect:non-scaling-stroke}.rv-side{flex-direction:column;gap:12px;min-width:0;display:flex}.rv-box{border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);padding:12px}.rv-box h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:500}.rv-moments{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.rv-moments button{text-align:left;border:1px solid var(--border);border-radius:var(--r-sm);width:100%;font-family:var(--font-mono-stack);color:var(--text);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:6px 8px;font-size:14px;display:flex}.rv-moments button small{color:var(--g);font-family:var(--font-sans-stack);margin-left:auto;font-weight:500}.rv-moves{max-height:340px;font-family:var(--font-mono-stack);gap:2px;margin:0;padding:0;font-size:13.5px;list-style:none;display:grid;overflow-y:auto}.rv-moves li{grid-template-columns:36px 1fr 1fr;align-items:center;display:grid}.rv-num{color:var(--muted);font-variant-numeric:tabular-nums}.rv-moves button{text-align:left;border-radius:var(--r-sm);color:var(--text);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:3px 6px;display:flex}.rv-moves button:hover{border-color:var(--border-strong)}.rv-moves button[data-on]{background:var(--panel-2);border-color:var(--border-strong);font-weight:500}.rv-moves i{min-width:18px;height:18px;font-size:10px}.rv-trick p{margin:0 0 6px;font-size:14px}.rv-urls{font-family:var(--font-mono-stack);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.rv-urls s{color:var(--muted)}.rv-urls b{color:var(--pen,#e0482e)}.rv-daily{border-color:var(--text);flex-direction:column;align-items:flex-start;gap:10px;display:flex}.rv-daily h2{margin:0}.rv-daily p{color:var(--muted);margin:0;font-size:14px}@media (max-width:860px){.rv-main{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.rv-scores{grid-template-columns:minmax(0,1fr)}.rv-boardwrap{grid-template-columns:14px minmax(0,1fr);gap:6px}.rv-bar span{display:none}}.rv-recent{flex-direction:column;gap:10px;display:flex}.rv-recent h2{margin:0;font-size:18px}.rv-recent p{margin:0}.rv-recent-form{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.rv-recent-form>div{gap:8px;width:100%;display:flex}.rv-recent-form input{flex:1;min-width:0}.rv-recent-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rv-recent-list a{border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);color:inherit;grid-template-columns:64px 1fr auto;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:grid}.rv-recent-list a:hover{background:var(--panel-2)}.rv-recent-res{text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.rv-recent-res[data-outcome=win]{color:var(--rv-best)}.rv-recent-res[data-outcome=loss]{color:var(--rv-blunder)}.rv-recent-res[data-outcome=draw]{color:var(--muted)}.rv-recent-who{flex-direction:column;min-width:0;display:flex}.rv-recent-who b,.rv-recent-who small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rv-recent-who small{color:var(--muted)}.rv-recent-go{white-space:nowrap;font-size:13px;font-weight:500}.rv-link{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;align-self:flex-start;padding:0;font-size:13px;text-decoration:underline}.rv-again{text-align:center;margin:-40px 0 40px}.rv-land{--plate-max:min(clamp(320px, 32vw, 440px), 56vh);gap:var(--s-8);padding-top:var(--s-7);max-width:var(--page-max,1100px)}:has(>.rv-land){overflow-x:clip}.rv-land>.xr-sprite{width:0;height:0;position:absolute;overflow:hidden}.rv-hero{isolation:isolate;grid-template-columns:minmax(0, 1fr) minmax(0, var(--plate-max));gap:var(--s-7);align-items:start;display:grid;position:relative}.rv-hero-copy{align-items:flex-start;gap:var(--s-4);min-width:0;padding-top:var(--s-3);flex-direction:column;display:flex}.rv-land .rv-over{color:var(--pen);letter-spacing:var(--ls-overline,.08em)}.rv-hero-title{max-width:13ch;font-family:var(--font-display-stack);font-size:clamp(calc(var(--fs-display) * 1.2), 4.4vw, calc(var(--fs-display) * 1.75));line-height:var(--lh-display);font-weight:var(--fw-display);letter-spacing:var(--ls-display);text-wrap:balance;margin:0}.rv-hero-lede{max-width:54ch;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted);text-wrap:pretty;margin:0}.rv-hero-form{gap:var(--s-2);width:100%;max-width:520px;margin-top:var(--s-2);flex-direction:column;display:flex}.rv-hero-form label{font-weight:500;font-size:var(--fs-body-sm)}.rv-hero-row{gap:var(--s-2);display:flex}.rv-hero-row .ui-input{min-width:0;min-height:var(--control-h-lg,48px);background:var(--surface);flex:1 1 0}.rv-hero-row .ui-input:focus{border-color:var(--text)}.rv-hero-row .ui-btn{flex:none}.rv-pgn-link{font-size:var(--fs-body-sm);color:var(--muted)}.rv-pgn-link:hover{color:var(--text)}.rv-plate{gap:var(--s-3);min-width:0;padding:var(--s-4);border:1px solid var(--text);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-2);flex-direction:column;margin:0;display:flex}.rv-plate-label{font-family:var(--font-mono-stack);font-size:var(--fs-caption,12px);color:var(--muted);padding:0 var(--s-1)}.rv-plate-board{border-radius:var(--r-sm);position:relative;overflow:hidden}.rv-plate-board .xr-static{aspect-ratio:1;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;display:grid}.rv-plate-board .xr-sq{aspect-ratio:1;background:var(--sq-light);position:relative}.rv-plate-board .xr-sq[data-dark="1"]{background:var(--sq-dark)}.rv-plate-board .xr-sq>svg{width:100%;height:100%;display:block}.rv-plate-badge{background:var(--g);width:24px;height:24px;color:var(--text);border:2px solid var(--text);font:500 11px/20px var(--font-mono-stack);text-align:center;border-radius:999px;font-style:normal;position:absolute;top:calc(25% - 9px);left:calc(75% - 15px);box-shadow:0 2px 6px #00000040}.rv-plate-moves{font-family:var(--font-mono-stack);font-size:var(--fs-body-sm);color:var(--muted);margin:0}.rv-plate-moves b{color:var(--g)}.rv-plate .rv-verdict b{align-items:center;gap:6px;display:flex}.rv-verdict i{font-style:normal;font-weight:500;font-family:var(--font-mono-stack);color:var(--on-brand);background:var(--g);border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:20px;padding:0 4px;font-size:11px;display:inline-flex}.rv-scale{gap:var(--s-2);padding-top:var(--s-1);border-top:1px dashed var(--border);flex-direction:column;display:flex}.rv-scale>span{font-size:var(--fs-caption,12px);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:var(--s-2);font-weight:500}.rv-scale ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rv-scale li{background:color-mix(in srgb, var(--g) 14%, var(--surface));border-radius:999px;align-items:center;gap:5px;padding:2px 9px 2px 6px;font-size:12.5px;font-weight:500;display:inline-flex}.rv-scale li:before{content:"";background:var(--g);border-radius:50%;width:9px;height:9px}.rv-land .rv-pgn{gap:var(--s-3);flex-direction:column;display:flex}.rv-pgn textarea{width:100%;min-height:180px;font-family:var(--font-mono-stack);padding:var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);color:var(--text);resize:vertical;font-size:13px;line-height:1.6}.rv-pgn textarea:focus{border-color:var(--text);outline:none}.rv-h2{margin:0 0 var(--s-4);font-family:var(--font-display-stack);font-size:calc(var(--fs-title) * 1.35);font-weight:var(--fw-display);letter-spacing:var(--ls-display);text-wrap:balance;line-height:1.1}.rv-step-list{gap:var(--s-5);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.rv-step-list li{gap:var(--s-1);flex-direction:column;min-width:0;display:flex}.rv-step-n{font-family:var(--font-hand-stack);color:var(--pen);font-size:40px;font-weight:500;line-height:1}.rv-step-list b{font-size:var(--fs-body)}.rv-step-list li>span:last-child{color:var(--muted);font-size:var(--fs-body-sm);line-height:var(--lh-body)}.rv-hero-copy .rv-step-list{gap:var(--s-3);margin-top:var(--s-2);grid-template-columns:minmax(0,1fr);max-width:54ch}.rv-hero-copy .rv-step-list li{column-gap:var(--s-2);grid-template-columns:36px minmax(0,1fr);display:grid}.rv-hero-copy .rv-step-n{grid-row:span 2;font-size:32px}.rv-duo{gap:var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.rv-land .rv-recent,.rv-card{border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface);padding:var(--s-5)}.rv-land .rv-recent h2,.rv-land .rv-trick h2,.rv-land .rv-link-card h2,.rv-land .rv-pgn h2{font-family:var(--font-display-stack);font-size:var(--fs-title);text-transform:none;letter-spacing:-.01em;color:var(--text);margin:0;font-weight:500}.rv-land .rv-recent p{color:var(--muted)}.rv-land .rv-trick{gap:var(--s-3);background:var(--panel);border-color:var(--panel);flex-direction:column;display:flex}.rv-land .rv-trick p{font-size:var(--fs-body);margin:0}.rv-land .rv-recent.rv-recent-hero{width:100%;max-width:560px;margin-top:var(--s-2);background:0 0;border:0;padding:0}.rv-land .rv-recent-hero h2{font-size:var(--fs-title-sm,20px)}.rv-recent-hero .rv-recent-form{gap:var(--s-2)}.rv-recent-hero .rv-recent-form label{font-weight:500;font-size:var(--fs-body-sm)}.rv-link-card{gap:var(--s-3);flex-direction:column;display:flex}.rv-link-card .rv-hero-form{max-width:none;margin-top:0}.rv-land .rv-urls{align-items:flex-start;gap:var(--s-1);flex-direction:column;font-size:15px}.rv-land .rv-urls b{font-size:17px}.rv-about ul{margin:0 0 var(--s-4);gap:var(--s-3);counter-reset:about;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.rv-about li{counter-increment:about;padding:var(--s-4) var(--s-4) var(--s-4) calc(var(--s-4) + 28px);border:1px solid var(--border);border-radius:var(--r);background:var(--surface);line-height:var(--lh-body);position:relative}.rv-about li:before{content:"✓";left:var(--s-4);top:var(--s-4);color:var(--good);font-weight:500;position:absolute}.rv-about>p{max-width:var(--measure);color:var(--muted);line-height:var(--lh-body);margin:0}.rv-faq{max-width:760px}.rv-faq>div{border-top:1px solid var(--text)}.rv-faq details{border-bottom:1px solid var(--border-strong)}.rv-faq summary{justify-content:space-between;gap:var(--s-3);padding:var(--s-4) 0;cursor:pointer;font-weight:500;list-style:none;display:flex}.rv-faq summary::-webkit-details-marker{display:none}.rv-faq summary:after{content:"+";font-family:var(--font-mono-stack);color:var(--pen);font-size:20px;line-height:1;transition:transform .2s}.rv-faq details[open] summary:after{transform:rotate(45deg)}.rv-faq details p{margin:0 0 var(--s-4);color:var(--muted);line-height:var(--lh-body);max-width:var(--measure)}@media (max-width:860px){.rv-land{gap:var(--s-7);padding-top:var(--s-5)}.rv-hero{gap:var(--s-5);grid-template-columns:minmax(0,1fr)}.rv-hero-copy{align-items:stretch;padding-top:0}.rv-hero-title{max-width:none;font-size:calc(var(--fs-display) * 1.15)}.rv-plate{width:100%;max-width:480px;margin-inline:auto}.rv-hero-form{max-width:none}.rv-step-list,.rv-duo,.rv-about ul{grid-template-columns:minmax(0,1fr)}.rv-step-list{gap:var(--s-4)}.rv-step-list li{column-gap:var(--s-2);grid-template-columns:36px minmax(0,1fr);display:grid}.rv-step-n{grid-row:span 2;font-size:32px}}@media (max-width:520px){.rv-hero-row{flex-direction:column}.rv-hero-row .ui-btn{width:100%}.rv-land .rv-recent:not(.rv-recent-hero),.rv-card{padding:var(--s-4)}}
