:root{
  color-scheme:light dark;
  --paper:light-dark(#EFF1EC,#15181A);
  --panel:light-dark(#FFFFFF,#1C2023);
  --ink:light-dark(#14171A,#E6E9E4);
  --muted:light-dark(#6A736D,#98A099);
  --muted-s:light-dark(#555D57,#B4BCB5);
  --line:light-dark(#D9DDD4,#2F3438);
  --line-ui:light-dark(#848C7F,#6E777D);
  --end:light-dark(#B4123F,#FF6B8A);
  --alt:light-dark(#965900,#E0A44A);
  --ui:light-dark(#14171A,#E6E9E4);
  --tip:light-dark(#FBF7E8,#26221A);
  --mark:light-dark(#FBE9A7,#5C4A16);
  --hover:light-dark(#F4F6F1,#252A2D);
  --shadow:light-dark(rgba(20,23,26,.13),rgba(0,0,0,.5));
  --on-ink:light-dark(#B9BFB6,#4A524C);
  --paper-0:light-dark(rgba(239,241,236,0),rgba(21,24,26,0));
  --panel-0:light-dark(rgba(255,255,255,0),rgba(28,32,35,0));
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  --serif:Georgia,"Iowan Old Style","Noto Serif","Times New Roman",serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  --w:1120px;
  --fs-micro:11.5px;
  --fs-note:13px; 
  --fs-base:14px;
  --fs-lead:16px;
  --fs-h2:18px;
  --fs-h1:20px;
  --measure:70ch;
}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
*{box-sizing:border-box}
button{color:inherit}
html,body{margin:0;padding:0}
body{
  background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:var(--fs-lead);line-height:1.5;
  -webkit-text-size-adjust:100%;
}
.wrap{max-width:var(--w);margin:0 auto;padding:0 16px 28px}

header{border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}
.head-in{max-width:var(--w);margin:0 auto;padding:14px 16px 0}
.brand{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.brand h1{
  font-family:var(--serif);font-size:var(--fs-h1);font-weight:600;letter-spacing:-.01em;margin:0;
}
.brand h1 .tail{color:var(--end)}
.brand span{font-size:var(--fs-note);color:var(--muted)}
.themebar{
  display:inline-flex;margin-left:auto;background:var(--panel);
  border:1px solid var(--line-ui);border-radius:2px;overflow:hidden;
}
.themebar button{
  font:inherit;font-size:var(--fs-note);color:var(--muted-s);background:none;border:0;
  padding:4px 9px;cursor:pointer;white-space:nowrap;
}
.themebar button:hover{color:var(--ink)}
.themebar button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.themebar button:focus-visible{outline:2px solid var(--ui);outline-offset:-2px}
#navwrap{position:relative;margin-top:12px;display:flex;align-items:flex-end;gap:8px}
#navscroll{position:relative;flex:1 1 auto;min-width:0}
nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
nav::-webkit-scrollbar{display:none}

.navarr{
  position:absolute;top:0;bottom:2px;width:36px;z-index:5;
  display:none;align-items:center;justify-content:center;
  border:0;padding:0;cursor:pointer;
  color:var(--muted);
}
.navarr svg{display:block}
.navarr:hover{color:var(--ui)}
#navl{left:0;background:linear-gradient(to right,var(--paper) 55%,var(--paper-0))}
#navr{right:0;background:linear-gradient(to left,var(--paper) 55%,var(--paper-0))}
#navwrap.can-l #navl{display:flex}
#navwrap.can-r #navr{display:flex}
nav button{
  font:inherit;font-size:var(--fs-note);color:var(--muted);background:none;border:0;
  padding:8px 12px;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;
}
nav button:hover{color:var(--ink)}
nav button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ui);font-weight:600}
nav button:focus-visible,.chip:focus-visible,.tog button:focus-visible{outline:2px solid var(--ui);outline-offset:2px}

#navall{
  font:inherit;font-size:var(--fs-note);color:var(--muted-s);background:var(--panel);
  border:1px solid var(--line-ui);border-bottom:0;border-radius:2px 2px 0 0;
  padding:7px 10px;margin-bottom:2px;cursor:pointer;white-space:nowrap;flex:0 0 auto;
}
#navall:hover{color:var(--ink)}
#navall[aria-expanded="true"]{color:var(--ink);border-color:var(--ink)}
#navall:focus-visible{outline:2px solid var(--ui);outline-offset:2px}
#navmenu{
  display:none;position:absolute;right:0;top:calc(100% + 2px);z-index:40;
  width:min(760px,92vw);max-height:min(70vh,520px);overflow-y:auto;
  background:var(--panel);border:1px solid var(--line);border-radius:2px;
  box-shadow:0 6px 24px var(--shadow);padding:16px;
  columns:3 210px;column-gap:26px;
}
#navmenu.on{display:block}
#navmenu section{break-inside:avoid;margin:0 0 14px}
#navmenu h4{
  font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-s);
  font-weight:600;margin:0 0 4px;
}
#navmenu button{
  display:block;width:100%;text-align:left;font:inherit;font-family:var(--serif);font-size:var(--fs-lead);
  background:none;border:0;padding:4px 0;cursor:pointer;color:var(--ink);
}
#navmenu button:hover{color:var(--ui);text-decoration:underline;text-underline-offset:3px}
#navmenu button[aria-current="true"]{color:var(--ui);font-weight:600}
#navmenu button:focus-visible{outline:2px solid var(--ui);outline-offset:2px}

.panel{background:var(--panel);border:1px solid var(--line);border-radius:2px;padding:18px;margin-top:14px}
h2{font-family:var(--serif);font-size:var(--fs-h2);font-weight:600;margin:0 0 4px}
h3{font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:22px 0 8px;font-weight:600}
h3:first-child{margin-top:0}
.alink{
  font:inherit;background:none;border:0;padding:0 0 0 6px;cursor:pointer;
  color:var(--line);opacity:0;transition:opacity .12s;vertical-align:baseline;
}
.alink::before{content:"#"}
.alink.ok::before{content:"скопировано";font-size:var(--fs-micro);letter-spacing:.06em}
h3:hover .alink,.alink:focus-visible,.alink.ok{opacity:1}
.alink:hover,.alink.ok{color:var(--ui)}
.alink:focus-visible{outline:2px solid var(--ui);outline-offset:2px}
@media (hover:none){.alink{opacity:1}}
p{margin:0 0 10px}
.lead{color:var(--muted);font-size:var(--fs-base);margin:0 0 2px}
.panel p,.panel ul,.panel ol,.tip{max-width:var(--measure)}
.idx p,.sent,.ngrid{max-width:none}
.pl{font-family:var(--serif)}
.tip{background:var(--tip);border-left:2px solid var(--alt);padding:10px 12px;font-size:var(--fs-base);margin-top:8px}
.tip b{color:var(--alt)}
ul{margin:0;padding-left:18px}
li{margin-bottom:5px}
.sec{display:none}
.sec.on{display:block}
@media (prefers-reduced-motion:no-preference){
  .sec.on{animation:in .16s ease-out}
  @keyframes in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
}

.idx{columns:3 290px;column-gap:32px;margin-top:20px}
.idx section{margin-bottom:26px;break-inside:avoid}
.idx h3{margin-top:0}
.idx-a{
  display:block;width:100%;text-align:left;font:inherit;background:none;cursor:pointer;
  border:0;border-bottom:1px solid var(--line);padding:9px 0;
}
.idx-a:last-child{border-bottom:0}
.idx-a b{font-family:var(--serif);font-size:var(--fs-lead);font-weight:600;display:block;line-height:1.3}
.idx-a span{display:block;font-size:var(--fs-note);color:var(--muted);margin-top:2px}
.idx-a:hover b{color:var(--ui);text-decoration:underline;text-underline-offset:3px}
.idx-a:focus-visible{outline:2px solid var(--ui);outline-offset:2px}

.casebar{
  position:sticky;top:var(--head-h,0px);z-index:9;background:var(--paper);
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  margin:0 -16px;padding:10px 16px 9px;border-bottom:1px solid var(--line);
}
.casebar .chips{flex:1 1 320px;padding:0}
.casebar .tog{flex:0 0 auto}
.chips{display:flex;gap:6px;overflow-x:auto;padding:14px 0 2px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{
  font:inherit;text-align:left;background:var(--panel);border:1px solid var(--line-ui);
  border-radius:2px;padding:7px 11px;cursor:pointer;white-space:nowrap;line-height:1.25;
}
.chip .cp{font-family:var(--serif);font-size:var(--fs-base);display:block}
.chip .cr{font-size:var(--fs-micro);color:var(--muted);display:block}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.chip[aria-pressed="true"] .cr{color:var(--on-ink)}

.tog{display:inline-flex;border:1px solid var(--line-ui);border-radius:2px;overflow:hidden;background:var(--panel)}
.tog button{font:inherit;font-size:var(--fs-note);background:none;border:0;padding:6px 14px;cursor:pointer;color:var(--muted)}
.tog button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}

.board{margin-top:6px}
.brow{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:11px 0;border-top:1px solid var(--line)}
.brow:first-child{border-top:0}
.blabel{font-size:var(--fs-note);color:var(--muted);padding-top:3px}
.forms{
  display:grid;grid-template-columns:max-content max-content max-content;
  justify-content:start;column-gap:8px;row-gap:4px;align-items:baseline;
}
.form{display:contents;font-family:var(--mono);font-size:var(--fs-base)}
.from{text-align:right;color:var(--muted)}
.arr{color:var(--line)}
.to{text-align:left;white-space:nowrap}
.to .stem{color:var(--ink)}
.to .swap{color:var(--alt);text-decoration:underline dotted;text-underline-offset:2px}
.to .fin{color:var(--end);font-weight:700}
.bnote{font-size:var(--fs-note);color:var(--muted-s);margin-top:4px;font-family:var(--sans)}
@media (max-width:620px){
  .brow{grid-template-columns:1fr;gap:6px}
  .form{font-size:var(--fs-note)}
}
@media (min-width:1000px){
  .forms{grid-template-columns:repeat(2,max-content max-content max-content)}
  .form:nth-child(odd) .to{padding-right:44px}
}
.legend{display:flex;gap:16px;font-size:var(--fs-micro);color:var(--muted-s);margin-top:14px;flex-wrap:wrap}
.legend i{font-style:normal;font-weight:700}
.legend .l1{color:var(--end)}
.legend .l2{color:var(--alt)}

table{width:100%;border-collapse:collapse;font-size:var(--fs-base)}
th,td{text-align:left;padding:7px 10px 7px 0;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
td.w{font-family:var(--serif);white-space:nowrap}
td.c{color:var(--end);font-family:var(--mono);font-size:var(--fs-note);white-space:nowrap}

.scroll{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  background:
    linear-gradient(to right,var(--panel) 30%,var(--panel-0)) left center,
    linear-gradient(to left,var(--panel) 30%,var(--panel-0)) right center,
    radial-gradient(farthest-side at 0 50%,var(--shadow),transparent) left center,
    radial-gradient(farthest-side at 100% 50%,var(--shadow),transparent) right center;
  background-repeat:no-repeat;
  background-size:32px 100%,32px 100%,13px 100%,13px 100%;
  background-attachment:local,local,scroll,scroll;
}
.scroll table{min-width:520px}
ol.pit{margin:0;padding-left:20px;font-size:var(--fs-base)}
ol.pit li{margin-bottom:8px}
ol.pit b{color:var(--end)}
.bad{color:var(--muted-s);text-decoration:line-through;text-decoration-color:var(--end)}
.sent{list-style:none;padding:0;margin:0}
.sent li{margin-bottom:9px;border-left:2px solid var(--line);padding-left:11px}
.sent .p{font-family:var(--serif);font-size:var(--fs-lead);display:block}
.sent .r{font-size:var(--fs-note);color:var(--muted)}
td.g{font-family:var(--serif);color:var(--end)}

table.vt{min-width:640px}
table.vt th{white-space:nowrap}
table.vt th:first-child,table.vt td:first-child{
  position:sticky;left:0;z-index:1;background:var(--panel);padding-right:14px;
}
.hit td:first-child{background:var(--tip)}
.tr{display:block;font-size:var(--fs-micro);letter-spacing:0;text-transform:none;color:var(--muted-s);font-weight:400;font-family:var(--sans)}
td.f{font-family:var(--mono);font-size:var(--fs-base);white-space:nowrap}
td.f .stem{color:var(--ink)}
td.f .fin{color:var(--end);font-weight:700}
td.f .from{color:var(--muted)}
td.note{font-size:var(--fs-note);color:var(--muted-s);min-width:140px;max-width:200px;white-space:normal}
td.cq{font-family:var(--mono);font-size:var(--fs-note);white-space:nowrap;color:var(--muted)}
.kbadge{
  display:inline-block;min-width:26px;text-align:center;font-family:var(--mono);font-size:var(--fs-note);
  background:var(--ink);color:var(--paper);padding:1px 5px;border-radius:2px;margin-right:6px;
}
.src{
  font:inherit;font-size:var(--fs-lead);width:100%;max-width:300px;padding:8px 10px;margin-bottom:4px;
  background:var(--paper);border:1px solid var(--line-ui);border-radius:2px;color:var(--ink);
}
.src:focus{outline:2px solid var(--ui);outline-offset:1px}

#sbox{position:relative;flex:0 1 300px;min-width:200px}
#gsearch{
  font:inherit;font-size:var(--fs-note);width:100%;padding:6px 10px;
  background:var(--panel);border:1px solid var(--line-ui);border-radius:2px;color:var(--ink);
}
#gsearch::placeholder{color:var(--muted)}
#gsearch:focus{outline:none;border-color:var(--ink)}
#sres{
  display:none;position:absolute;top:calc(100% + 4px);right:0;width:min(560px,92vw);
  max-height:min(60vh,460px);overflow-y:auto;z-index:30;
  background:var(--panel);border:1px solid var(--line);border-radius:2px;
  box-shadow:0 6px 24px var(--shadow);
}
#sres.on{display:block}
.sr{
  display:block;width:100%;text-align:left;font:inherit;background:none;cursor:pointer;
  border:0;border-bottom:1px solid var(--line);padding:8px 12px;
}
.sr:hover,.sr:focus{background:var(--hover);outline:none}
.sr[aria-selected="true"]{background:var(--hover);box-shadow:inset 2px 0 0 var(--ui)}
.scount{padding:8px 12px;font-size:var(--fs-note);color:var(--muted-s)}
.sr-w{display:block;font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-s);margin-bottom:2px}
.sr-t{display:block;font-family:var(--serif);font-size:var(--fs-base);line-height:1.4}
.sr mark{background:var(--mark);color:inherit;padding:0 1px}
.snone{padding:12px;font-size:var(--fs-note);color:var(--muted)}
.hit{background:var(--tip) !important;box-shadow:inset 3px 0 0 var(--alt)}
.hit td:first-child{padding-left:8px}
@media (max-width:700px){
  .brand{align-items:center}
  .brand h1{order:1;flex:1 1 auto}
  #theme{order:2}
  .brand span{order:3;flex:1 1 100%}
  #sbox{order:4;flex:1 1 100%;margin:8px 0 0}
  #sres{right:auto;left:0;width:100%}
  #gsearch,.src{font-size:var(--fs-lead)}
  header{top:calc(-1 * var(--brand-h,0px))}
  #navwrap{margin-top:8px}
  #navmenu{columns:2 150px;padding:14px;width:92vw}
  #navwrap.can-l #navl,#navwrap.can-r #navr{display:none}
  .casebar{gap:8px;padding:8px 16px}
  .casebar .chips{flex:1 1 100%}
  .chip{padding:6px 10px}
  .chip .cr{display:none}
  .tog button{padding:5px 12px}
}

.ngrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:0 20px}
.ngrid div{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line)}
.ngrid b{font-family:var(--mono);font-size:var(--fs-note);font-weight:400;color:var(--muted);min-width:38px;text-align:right}
.ngrid span{font-family:var(--serif);font-size:var(--fs-lead)}
@media (max-width:620px){
  table.vt{min-width:560px}
  td.note{min-width:110px}
}
footer{font-size:var(--fs-note);color:var(--muted);margin-top:28px;text-align:center;line-height:1.7}
footer a{color:var(--muted)}
footer a:hover{color:var(--ui)}

@media print{
  :root{color-scheme:light}
  html,body{background:#fff;color:#000}
  header,#navwrap,#sres,#navmenu,.alink,.tog,.chips{display:none !important}
  .wrap{max-width:none;padding:0}
  .sec{display:none}
  .sec.on{display:block}
  .casebar{position:static;border:0;margin:0;padding:0}
  .panel{border:0;border-radius:0;padding:0;margin:0;background:#fff}
  .scroll{overflow:visible;background:none}
  .scroll table,table.vt{min-width:0}
  table.vt th:first-child,table.vt td:first-child{position:static;background:none}
  h2,h3,tr,li{break-inside:avoid}
  .tip{border-left:2px solid #999;background:none}
  a{color:#000}
  footer{margin-top:16px}
}
