@font-face { font-family:'Inter'; font-style:normal; font-weight:400 700; font-display:swap; src:url(/assets/inter-latin.woff2) format('woff2'); }

:root, :root[data-theme=dark] {
  --bg:#111416; --panel:#181c1f; --panel2:#1f2427; --raise:#1f3431; --line:#2a3034; --band:#15191b;
  --fg:#e6e9e7; --muted:#a2abad; --faint:#747e82; --accent:#5ec9b9; --on-accent:#05211d; --blue:#7aa7ff;
  --pos:#5bd184; --neg:#f2737e; --warn:#e5b052; --tile-s:26%; --tile-l:22%; --tile-fs:55%; --tile-fl:78%;
  color-scheme: dark; }
:root[data-theme=light] {
  --bg:#f6f7f6; --panel:#ffffff; --panel2:#f0f2f1; --raise:#ddeeea; --line:#e1e5e3; --band:#fafbfa;
  --fg:#101615; --muted:#5d6867; --faint:#8d9897; --accent:#0f6b66; --on-accent:#ffffff; --blue:#2f5bd8;
  --pos:#13804a; --neg:#c62f3f; --warn:#9a6400; --tile-s:45%; --tile-l:92%; --tile-fs:50%; --tile-fl:30%;
  color-scheme: light; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg);
  font:14px/1.5 "Inter", "SF Pro Text", "Segoe UI", system-ui, sans-serif; -webkit-font-smoothing:antialiased;
  font-feature-settings:"cv11", "ss01"; font-optical-sizing:auto; }
a { color:inherit; text-decoration:none; } a:hover { color:var(--accent); }
p a, li a { text-decoration:underline; text-decoration-color:var(--faint); text-underline-offset:3px; }
code { font:12px ui-monospace, "SF Mono", Menlo, monospace; color:var(--muted); }
pre { background:var(--panel2); padding:12px; border-radius:10px; overflow-x:auto; font-size:12px; }
svg { width:20px; height:20px; display:block; }

.app { display:grid; grid-template-columns:232px minmax(0, 1fr); min-height:100vh; }
.nav { position:sticky; top:0; height:100vh; overflow-y:auto; overflow-x:hidden; display:flex; flex-direction:column; gap:2px;
  padding:18px 12px; border-right:1px solid var(--line); background:var(--bg); }
.nav .logo { display:flex; align-items:center; gap:10px; padding:0 8px 16px; color:var(--fg); text-decoration:none;
  font-size:17px; letter-spacing:.01em; } .nav .logo img { width:28px; height:28px; display:block; }
.nav .sec { color:var(--faint); font-size:11px; text-transform:uppercase; letter-spacing:.08em; padding:16px 10px 6px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav a, .nav button { display:flex; align-items:center; gap:10px; width:100%; padding:7px 10px; border-radius:10px;
  color:var(--muted); background:none; border:0; font:inherit; font-size:14px; text-align:left; text-decoration:none;
  cursor:pointer; }
.nav [hidden] { display:none; }
.nav a svg, .nav button svg { width:17px; height:17px; flex:none; }
.nav a:hover, .nav button:hover { color:var(--fg); background:var(--panel2); }
.nav a.on { color:var(--fg); background:var(--raise); }
.nav a .n { margin-left:auto; min-width:18px; padding:0 6px; border-radius:999px; background:var(--accent);
  color:var(--on-accent); font-size:11px; font-weight:600; line-height:18px; text-align:center; }
.nav details.more summary { display:flex; align-items:center; gap:10px; padding:7px 10px; border-radius:10px;
  color:var(--faint); cursor:pointer; list-style:none; font-size:14px; }
.nav details.more summary::-webkit-details-marker { display:none; }
.nav details.more summary svg { width:17px; height:17px; flex:none; transition:transform .15s; }
.nav details.more[open] summary svg { transform:rotate(45deg); }
.nav details.more summary:hover { color:var(--fg); background:var(--panel2); }
.nav details.more summary .n { margin-left:auto; font-size:12px; }
.nav details.more .all { max-height:40vh; overflow-y:auto; }
.nav .newgroup { display:flex; align-items:center; gap:10px; padding:0 10px; border-radius:10px; color:var(--faint); }
.nav .newgroup svg { width:17px; height:17px; flex:none; }
.nav .newgroup input { flex:1; min-width:0; padding:7px 0; border:0; border-radius:0; background:none; font-size:14px; }
.nav .newgroup input::placeholder { color:var(--faint); }
.nav .newgroup:hover, .nav .newgroup:focus-within { color:var(--fg); background:var(--panel2); }
.nav > * { flex-shrink:0; } .nav .foot { margin-top:auto; padding-top:16px; } .nav form { margin:0; display:contents; }
.menu-btn, #navtoggle { display:none; }
/* The menu folded away, on a wide screen: the page takes its room, and a button at the top brings it back. */
:root.navless .app { grid-template-columns:minmax(0, 1fr); } :root.navless .nav { display:none; }
.show-nav { display:none; }
:root.navless .show-nav { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; flex:none;
  color:var(--muted); background:none; border:0; padding:0; cursor:pointer; }
:root.navless .show-nav:hover { color:var(--fg); background:var(--panel2); } .show-nav svg { width:20px; height:20px; }

.top { display:flex; align-items:center; gap:16px; padding:22px 32px 6px; }
.top .title { flex:1; min-width:0; }
.top h1 { font-size:30px; font-weight:400; letter-spacing:-.01em; margin:0;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
kbd { font:11px system-ui, sans-serif; color:var(--faint); border:1px solid var(--line); border-radius:5px;
  padding:1px 5px; white-space:nowrap; }

.body { display:grid; grid-template-columns:minmax(0, 1fr); gap:28px; padding:16px 32px 48px; }
.body.has-aside { grid-template-columns:minmax(0, 1fr) 380px; }
.main { min-width:0; }
aside.side { position:sticky; top:16px; align-self:start; max-height:calc(100vh - 32px); overflow-y:auto;
  background:var(--panel); border:1px solid var(--line); border-radius:18px; padding:22px; }

h2 { font-size:15px; font-weight:500; margin:28px 0 10px; color:var(--fg); }
h2:first-child { margin-top:4px; }
h3 { font-size:13px; font-weight:500; color:var(--muted); margin:20px 0 8px; }
section, .result, .card { background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:18px; }
.card + .card { margin-top:16px; }
.muted { color:var(--muted); } .faint { color:var(--faint); }
.ok, .pos { color:var(--pos); } .err, .neg { color:var(--neg); } .warn { color:var(--warn); }
p.ok, p.err, p.warn { margin:0 0 12px; }

table { border-collapse:collapse; width:100%; font-size:13.5px; }
th { text-align:left; font-weight:400; color:var(--muted); font-size:12.5px; padding:8px 10px;
  border-bottom:1px solid var(--line); }
td { padding:9px 10px; }
tr:nth-child(even) td { background:var(--band); }
td:first-child, th:first-child { border-radius:8px 0 0 8px; } td:last-child, th:last-child { border-radius:0 8px 8px 0; }
td.n, th.n, td.num, th.num { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
tr.total td { font-weight:500; border-top:1px solid var(--line); background:none; }
td.sub { padding-left:26px; color:var(--muted); } td.sub a { color:var(--fg); }
.scroll { overflow-x:auto; }

button, .btn { display:inline-flex; align-items:center; gap:8px; font:inherit; font-size:13px; cursor:pointer;
  color:var(--fg); background:var(--panel2); border:1px solid var(--line); border-radius:999px; padding:8px 16px; text-decoration:none; }
button:hover, .btn:hover { border-color:var(--faint); color:var(--fg); }
button.primary, .btn.primary, form button[type=submit]:not(.ghost) { background:var(--accent);
  color:var(--on-accent); border-color:var(--accent); font-weight:500; }
button.ghost { background:none; }
button svg, .btn svg { width:16px; height:16px; }
button.icon { padding:6px; border-radius:8px; background:none; border:0; color:var(--muted); }
.wide { width:100%; justify-content:center; }
input, select, textarea { font:inherit; color:var(--fg); background:var(--panel2); border:1px solid var(--line);
  border-radius:10px; padding:8px 12px; }
input:focus, select:focus, textarea:focus { outline:none; border-color:var(--accent); }
/* the open list of a select, styled like the page where the browser allows it (Chromium's
   customisable select); elsewhere the system's own list is used */
@supports (appearance: base-select) {
  select, select::picker(select) { appearance:base-select; }
  select { display:inline-flex; align-items:center; justify-content:space-between; gap:10px; cursor:pointer; }
  select::picker-icon { content:""; width:6px; height:6px; margin:0 2px 3px 0; color:var(--muted);
    border-right:1.5px solid; border-bottom:1.5px solid; rotate:45deg; transition:rotate .15s, margin .15s; }
  select:open::picker-icon { rotate:225deg; margin:3px 2px 0 0; }
  select::picker(select) { background:var(--panel); color:var(--fg); border:1px solid var(--line);
    border-radius:14px; padding:6px; margin-block:6px; max-height:min(360px, 60vh); overflow-y:auto;
    box-shadow:0 16px 40px rgb(0 0 0 / .45); scrollbar-width:thin; }
  select option { padding:7px 12px; border-radius:9px; font-size:13px; color:var(--fg); gap:10px; }
  select option:hover, select option:focus-visible { background:var(--panel2); outline:none; }
  select option:checked { background:var(--raise); }
  select option::checkmark { color:var(--accent); }
}
input[type=checkbox] { accent-color:var(--accent); width:auto; padding:0; }
input[type=file] { width:100%; padding:14px; border-style:dashed; border-radius:14px; color:var(--muted); }
input[type=file]::file-selector-button { font:inherit; font-size:13px; color:var(--fg); background:var(--raise);
  border:0; border-radius:999px; padding:6px 14px; margin-right:12px; cursor:pointer; }
textarea { width:100%; }
form { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:0; }
label { color:var(--muted); font-size:13px; } label strong { color:var(--fg); font-weight:500; }
.actions { margin-top:14px; }

.tabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.tabs a { padding:7px 15px; border-radius:999px; background:var(--panel2); color:var(--fg); font-size:13px;
  border:1px solid var(--line); text-decoration:none; }
.tabs a.on { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
.bar { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 18px; }
.bar select, .bar input:not([type=checkbox]) { border-radius:999px; padding:0 14px; font-size:13px; }
/* every control in a bar is the same height */
.bar select, .bar input:not([type=checkbox]), .bar button, .bar .btn { height:36px; padding-top:0; padding-bottom:0; }
.bar label.btn { gap:8px; }
.bar .grow { flex:1; }

.tile { --h:240; flex:none; width:38px; height:38px; border-radius:10px; display:grid; place-items:center;
  font-weight:600; font-size:15px; background:hsl(var(--h) var(--tile-s) var(--tile-l));
  color:hsl(var(--h) var(--tile-fs) var(--tile-fl)); }
.tile.big { width:64px; height:64px; border-radius:16px; font-size:26px; }
.tile.mark { background:var(--mb); color:var(--mf); letter-spacing:-.02em; box-shadow:inset 0 0 0 1px var(--line); }
.tile.mark.g2 { font-size:13px; } .tile.mark.g3 { font-size:11px; } .tile.mark.g4 { font-size:9.5px; }
.tile.big.mark.g2 { font-size:22px; } .tile.big.mark.g3 { font-size:18px; } .tile.big.mark.g4 { font-size:15px; }
.pill { display:inline-block; white-space:nowrap; padding:2px 10px; border-radius:999px; font-size:12px; font-weight:500;
  background:color-mix(in srgb, currentColor 14%, transparent); }

.month { color:var(--muted); font-size:13px; font-weight:500; margin:28px 0 8px; padding-left:12px; }
.month:first-child { margin-top:0; }
.tx { display:flex; align-items:center; gap:14px; padding:11px 12px; border-radius:12px; text-decoration:none; }
.tx:hover { background:var(--panel2); color:inherit; } .tx.on { background:var(--raise); }
.tx .what { flex:1; min-width:0; } .tx b { font-weight:500; display:block; overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap; } .tx .muted { font-size:12.5px; }
.tx .amt { font-variant-numeric:tabular-nums; white-space:nowrap; font-weight:500; }

.detail { text-align:left; } .detail .head { display:flex; flex-direction:column; gap:10px; margin-bottom:18px; }
.detail .head h2 { font-size:20px; font-weight:400; margin:6px 0 0; }
.detail h3 { margin:0 0 12px; }
/* labels take at most half the width, and values wrap between words, never letter by letter */
dl.kv { display:grid; grid-template-columns:fit-content(45%) minmax(0, 1fr); gap:12px 16px; margin:0; font-size:13.5px; }
dl.kv dt { color:var(--muted); overflow-wrap:break-word; } dl.kv dd { margin:0; text-align:right; font-variant-numeric:tabular-nums;
  display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:6px; min-width:0; overflow-wrap:break-word; }
dl.kv hr { grid-column:1 / -1; border:0; border-top:1px solid var(--line); margin:6px 0; width:100%; }

.stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(160px, 1fr)); gap:16px; margin-bottom:12px; }
.stat { background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:18px 20px;
  min-width:0; container-type:inline-size; }
.stat .k { color:var(--muted); font-size:12.5px; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
/* the figure shrinks with its tile rather than being cut off */
.stat .v { font-size:clamp(17px, 12.5cqi, 24px); font-weight:400; margin-top:8px; line-height:1.2;
  font-variant-numeric:tabular-nums; white-space:nowrap; }
.stat .note { color:var(--faint); font-size:12px; margin-top:4px; }
.stat a { text-decoration:none; }
.list { display:flex; flex-direction:column; gap:4px; }
.row { display:flex; align-items:center; gap:14px; padding:10px 12px; border-radius:12px; }
.row:hover { background:var(--panel2); } .row .what { flex:1; min-width:0; }
.row .what b { display:block; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.row .what .muted { font-size:12.5px; display:block; margin-top:2px; }
.row .pill { flex:none; }
.grid2 { display:grid; grid-template-columns:repeat(auto-fit, minmax(340px, 1fr)); gap:16px; }
.grid2 > div > h2:first-child { margin-top:4px; }
.cards { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:14px; }
.cards .card { margin:0; display:flex; flex-direction:column; gap:14px; }
.empty { color:var(--muted); text-align:center; padding:36px 12px; }
.bare { max-width:400px; margin:12vh auto 0; padding:0 16px; } .bare .logo { display:flex; align-items:center; gap:10px; font-size:22px; font-weight:600; letter-spacing:-.01em; }
.bare .logo img { width:34px; height:34px; }
.bare h1 { font-size:24px; font-weight:400; margin:18px 0; }
.setup p { margin:0 0 18px; } .setup input:not([type=checkbox]), .setup select { width:100%; margin-top:6px; }
.setup textarea { width:100%; margin-top:6px; } .setup textarea.code { font-family:ui-monospace, monospace; font-size:12.5px; }
.setup fieldset { border:0; margin:0; padding:0; min-width:0; }

.cos { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:14px; margin-bottom:16px; }
.cos form { margin:0; }
.co { display:flex; flex-direction:column; align-items:stretch; gap:6px; width:100%; height:100%; text-align:left;
  background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:16px 18px; color:var(--fg);
  overflow:hidden; min-width:0; }
.co:hover { border-color:var(--accent); background:var(--panel); }
.co .head { display:flex; align-items:center; gap:8px; font-size:13.5px; min-width:0; }
.co .head b { font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
.co .head i { width:9px; height:9px; border-radius:3px; background:var(--c); flex:none; }
.co .cash { font-size:22px; font-variant-numeric:tabular-nums; }
.co .k { color:var(--muted); font-size:12px; line-height:1.6; min-width:0; white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis; }
.co .k .amt, .co .k span { font-variant-numeric:tabular-nums; }
html.private .amt, html.private td.n, html.private .stat .v, html.private dl.kv dd.m, html.private .co .cash,
html.private .co .k span { filter:blur(7px); }

@media (max-width: 1100px) { .body.has-aside { grid-template-columns:minmax(0, 1fr); }
  aside.side { position:static; max-height:none; } }
@media (max-width: 720px) {
  .app { grid-template-columns:1fr; }
  .nav { position:fixed; left:0; top:0; bottom:0; width:272px; z-index:40; transform:translateX(-100%);
    transition:transform .18s; box-shadow:0 0 40px rgb(0 0 0 / .4); }
  #navtoggle:checked ~ .app .nav { transform:none; }
  :root.navless .nav { display:flex; } :root.navless .show-nav, .nav .foot [data-act=nav] { display:none; }
  .menu-btn { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; color:var(--muted);
    cursor:pointer; flex:none; } .menu-btn:hover { background:var(--panel2); }
  .top { padding:16px 16px 4px; flex-wrap:wrap; } .top .title { flex-basis:calc(100% - 56px); } .top h1 { font-size:24px; }
  .body { padding:12px 16px 32px; } }
.small { font-size:12px; }

.actions { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; } section .actions { margin:14px 0 0; }
.pills { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; } .pills form { display:contents; }
.pills a, .pills button { padding:3px 11px; border-radius:999px; border:1px solid var(--line); background:var(--panel2);
  color:var(--fg); font:inherit; font-size:12.5px; line-height:1.5; text-decoration:none; cursor:pointer; }
.pills a:hover, .pills button:hover { border-color:var(--faint); } .pills .star button { color:var(--accent); }
.veil { filter:blur(5px); user-select:none; pointer-events:none; }
.search { display:flex; gap:8px; margin:0 0 18px; flex-wrap:nowrap; }
.search input { flex:1; min-width:0; border-radius:999px; padding:10px 18px; font-size:15px; }
.lede { color:var(--muted); max-width:70ch; margin:0 0 18px; }
.status { color:var(--muted); font-size:12.5px; margin:0 0 18px; }
.chart { width:100%; height:auto; display:block; }
.chart rect { fill:var(--accent); } .chart rect:hover { fill:var(--blue); }
.chart text { fill:var(--muted); font-size:11px; font-variant-numeric:tabular-nums; }
.chart line { stroke:var(--line); }
section + section, section + .grid2, .grid2 + section, .stats + section { margin-top:16px; }
section > h2:first-child { margin-top:0; } .grid2 > section { margin-top:0; }
.pager { display:flex; gap:8px; align-items:center; margin-top:14px; color:var(--muted); font-size:13px; }
.ask textarea { width:100%; margin:0 0 8px; } .ask textarea.code { font-family:ui-monospace, monospace; font-size:12.5px; }
.ask form { display:block; } .ask .row { padding:0; margin:0 0 4px; } .ask .row:hover { background:none; }
.ask .row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
a.lock { display:inline-flex; align-items:center; gap:5px; color:var(--faint); font-size:12px; text-decoration:none; border:1px solid var(--line); border-radius:999px; padding:1px 9px; }
a.lock:hover { color:var(--accent); border-color:var(--accent); } a.lock svg { width:11px; height:11px; }
.locked { display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:16px; border:1px dashed var(--line); border-radius:14px; color:var(--muted); }
.locked svg { width:18px; height:18px; flex:none; color:var(--accent); } .locked span { flex:1; min-width:200px; } .locked .btn { border-radius:999px; }
main.bare.wide { max-width:820px; margin-top:8vh; }
.small { font-size:12.5px; } .plans { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:16px; margin:0 0 18px; max-width:820px; }
.plan { background:var(--panel); border:1px solid var(--line); border-radius:22px; padding:24px; display:flex; flex-direction:column; gap:12px; }
.plan.best { border-color:var(--accent); background:linear-gradient(180deg, var(--raise), var(--panel) 55%); }
.plan .name { font-size:20px; font-weight:600; display:flex; align-items:center; gap:10px; }
.plan .tag { font-size:11px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; padding:3px 10px; border-radius:999px; background:var(--accent); color:var(--on-accent); }
.plan .price { display:flex; align-items:baseline; gap:8px; } .plan .price b { font-size:40px; font-weight:500; letter-spacing:-.02em; }
.plan .price span { color:var(--muted); font-size:13px; } .plan p { margin:0; }
.plan .btn { border-radius:999px; padding:11px 16px; font-size:14px; font-weight:500; } .plan .yours { color:var(--muted); cursor:default; pointer-events:none; }
.plan ul { list-style:none; margin:6px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; font-size:13.5px; }
.plan li { display:flex; gap:10px; align-items:flex-start; } .plan li svg { width:16px; height:16px; flex:none; margin-top:2px; color:var(--accent); }
main.bare { max-width:360px; margin:12vh auto; padding:0 20px; } main.bare .logo { display:flex; gap:10px; align-items:center; margin-bottom:18px; }
td a { text-decoration:underline; text-decoration-color:var(--faint); text-underline-offset:3px; }
th a { color:inherit; text-decoration:none; white-space:nowrap; } th a:hover, th a.on { color:var(--fg); }
.find { position:relative; flex:0 1 340px; min-width:200px; }
.find input { width:100%; border-radius:999px; padding:9px 16px; font-size:13.5px; }
.found { position:absolute; left:0; right:0; top:calc(100% + 6px); z-index:30; background:var(--panel);
  border:1px solid var(--line); border-radius:14px; padding:6px; box-shadow:0 16px 40px rgb(0 0 0 / .35); }
.found:empty { display:none; }
.found a { display:flex; gap:10px; align-items:baseline; padding:7px 10px; border-radius:9px; text-decoration:none; color:var(--fg); }
.found a:hover, .found a:focus, .found a.on { background:var(--panel2); outline:none; }
/* "/" puts the cursor in the box, which says so whilst it is empty and not in use; a phone has no such key */
.find kbd { position:absolute; right:12px; top:50%; transform:translateY(-50%); pointer-events:none; }
.find:focus-within kbd, .find input:not(:placeholder-shown) ~ kbd { display:none; }
@media (max-width: 720px) { .find kbd { display:none; } }
.found a span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.found a small, .found p { color:var(--muted); font-size:12px; white-space:nowrap; } .found p { margin:6px 10px; }
.hero { max-width:760px; margin:10px auto 26px; } .hero .find { display:block; min-width:0; margin-bottom:10px; }
.hero .find input { padding:14px 22px; font-size:17px; }
.hero .search { margin:0; } .hero .lede { margin:14px 4px 0; }
.cards a.card { text-decoration:none; color:var(--fg); gap:6px; } .cards a.card:hover { border-color:var(--faint); }
.cards a.card b { font-weight:500; font-size:15px; } .cards a.card span { color:var(--muted); font-size:13px; }
.chips { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 10px; align-items:center; }
.chips a { padding:5px 13px; border-radius:999px; border:1px solid var(--line); background:var(--panel2); color:var(--fg);
  font-size:13px; text-decoration:none; } .chips a:hover { border-color:var(--faint); }
.chips a.on { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
.chips .k { color:var(--muted); font-size:12.5px; min-width:86px; }
.acc td:first-child { white-space:nowrap; } .acc tr.total td { font-weight:600; }
.acc tr.part td:first-child { padding-left:24px; color:var(--muted); }
.acc tr.rate td { color:var(--muted); font-size:12.5px; } .acc tr.rate td:first-child { padding-left:24px; }
.acc tr.head td { background:none; padding-top:18px; font-size:12.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }
section h2 .btn, section h2 a.small { float:right; font-weight:400; }
section[id], h3[id] { scroll-margin-top:12px; }
tbody tr:has(a[href^="/deal/"], a[href^="/company/"], a[href^="/firm/"], a[href^="/named/"], a[href^="/investor/"]) { cursor:pointer; }
tbody tr:has(a[href^="/deal/"], a[href^="/company/"], a[href^="/firm/"], a[href^="/named/"], a[href^="/investor/"]):hover td { background:color-mix(in srgb, var(--accent) 9%, transparent); }
.quote { border-left:2px solid var(--line); padding:2px 0 2px 12px; margin:14px 0 0; color:var(--muted); font-size:13px; }
.quote cite { display:block; margin-top:4px; font-style:normal; font-size:12px; }
.chart rect.mark { fill:var(--blue); }
.meter { display:inline-block; width:64px; height:6px; margin-left:8px; vertical-align:middle; border-radius:3px; background:var(--panel2); }
.meter i { display:block; height:100%; border-radius:3px; background:var(--accent); }
pre.lang { white-space:pre-wrap; font-size:12.5px; margin:10px 0 0; }
.bar .opts { display:contents; }
.tabbar, .scrim { display:none; }
/* a statement's lines stay in view as its years are scrolled across */
.acc td:first-child, .acc th:first-child { position:sticky; left:0; z-index:1; background:var(--panel); }
.acc tr:nth-child(even) td:first-child { background:linear-gradient(var(--band), var(--band)), var(--panel); }
/* a heading spans every year, so it is its words, not its cell, that stay in view */
.acc tr.head td:first-child { position:static; background:none; box-shadow:none; width:auto; min-width:0; max-width:none; }
.acc tr.head td span { position:sticky; left:12px; }

/* The phone. The menu is reached from a bar along the foot; a wide table becomes a card a row; a bar of filters
   is the search box with its choices in a strip beneath, swiped across; and nothing a finger is to tap is small. */
@media (max-width: 720px) {
  html { -webkit-tap-highlight-color:transparent; -webkit-text-size-adjust:100%; }
  body { padding-left:env(safe-area-inset-left); padding-right:env(safe-area-inset-right); }
  .menu-btn { display:none; }
  .top { padding-top:max(14px, env(safe-area-inset-top)); gap:10px; }
  .top .title { flex-basis:100%; }
  .top h1 { white-space:normal; font-size:22px; line-height:1.25; display:-webkit-box; -webkit-line-clamp:2;
    -webkit-box-orient:vertical; }
  .top .find { flex:1 1 100%; }
  .body { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
  .nav { padding-top:max(18px, env(safe-area-inset-top)); padding-bottom:calc(18px + env(safe-area-inset-bottom)); }
  #navtoggle:checked ~ .app .scrim { display:block; position:fixed; inset:0; z-index:39; background:rgb(0 0 0 / .45); }

  .tabbar { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); position:fixed; left:0; right:0; bottom:0;
    z-index:35; border-top:1px solid var(--line); background:color-mix(in srgb, var(--bg) 88%, transparent);
    -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
    padding:4px max(4px, env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-left)); }
  .tabbar a, .tabbar label { display:flex; flex-direction:column; align-items:center; gap:3px; padding:7px 0 5px;
    color:var(--muted); font-size:10.5px; letter-spacing:.01em; cursor:pointer; text-decoration:none; }
  .tabbar svg { width:22px; height:22px; } .tabbar .on { color:var(--accent); }

  /* iOS zooms into any field with text under 16px when it is tapped */
  input:not([type=checkbox]), select, textarea, .bar select, .bar input:not([type=checkbox]), .find input { font-size:16px; }
  .hero .find input { padding:13px 20px; }
  button, .btn, .bar select, .bar input:not([type=checkbox]), .bar button, .bar .btn { min-height:42px; }
  .chips a { padding:8px 14px; }
  .tabs, .chips { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin-left:-16px; margin-right:-16px;
    padding:0 16px; } .tabs > *, .chips > * { flex:none; }
  .tabs::-webkit-scrollbar, .chips::-webkit-scrollbar, .bar .opts::-webkit-scrollbar, table.sorts thead tr::-webkit-scrollbar { display:none; }

  .bar { flex-wrap:wrap; gap:8px; }
  .bar .opts { display:flex; gap:8px; flex:1 1 100%; order:3; overflow-x:auto; scrollbar-width:none;
    margin:0 -16px; padding:0 16px; } .bar .opts > * { flex:none; }
  section .bar .opts { margin:0 -18px; padding:0 18px; }

  section, .result, .card { padding:16px; border-radius:14px; }
  .stats { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; } .stat { padding:14px 16px; }
  .grid2 { grid-template-columns:minmax(0, 1fr); }
  .chart text { font-size:21px; } .chart text.alt { display:none; }

  table.cardy, table.cardy tbody { display:block; }
  table.cardy thead { display:none; }
  table.cardy.sorts thead { display:block; margin:0 0 6px; }
  table.cardy.sorts thead tr { display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; padding-bottom:4px; }
  table.cardy.sorts th { flex:none; padding:0; border:0; } table.cardy.sorts th:not(:has(a)) { display:none; }
  table.cardy.sorts th a { display:block; padding:6px 13px; border:1px solid var(--line); border-radius:999px;
    background:var(--panel2); color:var(--muted); font-size:12.5px; }
  table.cardy.sorts th a.on { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
  table.cardy tr { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px 12px; padding:13px 2px;
    border-bottom:1px solid var(--line); }
  table.cardy tr:last-child { border-bottom:0; }
  table.cardy td, table.cardy tr:nth-child(even) td { padding:0; background:none; border-radius:0; text-align:left;
    white-space:normal; min-width:0; overflow-wrap:anywhere; font-size:14px; }
  table.cardy td::before { content:attr(data-k); display:block; color:var(--faint); font-size:11px; line-height:1.5;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  table.cardy td.lead { grid-column:1 / -1; order:-1; font-size:15px; font-weight:500; }
  table.cardy td.lead::before { display:none; } table.cardy td.lead a { text-decoration:none; }
  table.cardy td.minor { display:none; }
  table.cardy tbody tr:hover td { background:none; }

  /* a statement: the lines' names wrap in a column of their own beside the years, and the years are what scroll */
  .acc { font-size:13px; }
  .acc th, .acc td { padding:8px 9px; }
  .acc td:first-child, .acc th:first-child { white-space:normal; width:40%; min-width:8.5em; max-width:11em;
    line-height:1.3; box-shadow:6px 0 6px -6px rgb(0 0 0 / .5); }
  .acc tr.part td:first-child, .acc tr.rate td:first-child { padding-left:14px; }
  .acc tr.rate td { font-size:12px; }
  .acc th.n { white-space:nowrap; font-size:12px; }
  .acc tr.head td { padding-top:16px; font-size:11.5px; }
}

.tablist { display:flex; flex-direction:column; gap:2px; }
.nav .tab { position:relative; display:flex; align-items:center; border-radius:10px; }
.nav .tab > a { flex:1; min-width:0; padding-right:34px; -webkit-touch-callout:none; }
.nav .tab > a span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav .tab .x { position:absolute; right:5px; top:50%; transform:translateY(-50%); width:24px; height:24px; padding:0;
  justify-content:center; border-radius:7px; color:var(--faint); font-size:17px; line-height:1; opacity:0; }
.nav .tab:hover .x, .nav .tab:focus-within .x { opacity:1; } .nav .tab .x:hover { color:var(--fg); background:var(--line); }
@media (hover:none) { .nav .tab .x { opacity:.75; } }
.nav .tab.dragging { opacity:.6; } .nav .tab.dragging > a { background:var(--panel2); outline:1px dashed var(--faint); }
:root.tabdrag, :root.tabdrag * { cursor:grabbing !important; user-select:none; -webkit-user-select:none; }
.nav .tabadd button { color:var(--faint); } .nav .tabadd button[aria-expanded=true] { color:var(--fg); background:var(--panel2); }
.tabmenu { position:fixed; z-index:60; width:270px; max-height:calc(100vh - 16px); overflow-y:auto; padding:6px;
  background:var(--panel); border:1px solid var(--line); border-radius:14px; box-shadow:0 16px 40px rgb(0 0 0 / .35); }
.tabmenu[hidden] { display:none; }

.tabmenu .tab > a { display:flex; align-items:center; gap:10px; padding:7px 10px; border-radius:9px; color:var(--fg); }
.tabmenu .tab > a:hover, .tabmenu .tab > a:focus { background:var(--panel2); outline:none; }
.tabmenu .tab > a svg { width:17px; height:17px; flex:none; color:var(--muted); }
.tabmenu .tab > a::after { content:"+"; margin-left:auto; color:var(--faint); font-size:16px; line-height:1; }
.tabmenu .tab .x { display:none; }
 
.seg.places { display:flex; gap:8px; } .seg.places svg { width:28px; height:20px; }
.seg.places button { padding:8px 10px; border:1px solid var(--line); border-radius:8px; background:var(--panel2);
  color:var(--muted); font:inherit; font-size:12.5px; cursor:pointer; }
.seg.places button:hover { color:var(--fg); border-color:var(--faint); }
.seg.places button[aria-pressed=true] { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }



@media (max-width: 720px) {
  .tabbar { grid-template-columns:repeat(var(--n, 5), minmax(0, 1fr)); }
  .tabbar span { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } }
@media (min-width: 721px) {
  :root.tabs-right .app { grid-template-columns:minmax(0, 1fr) 232px; }
  :root.tabs-right .nav { order:2; border-right:0; border-left:1px solid var(--line); }
  :root.tabs-top .app, :root.tabs-bottom .app { display:flex; flex-direction:column; }
  :root.tabs-top .app > div, :root.tabs-bottom .app > div { flex:1 0 auto; min-width:0; }
  :root.tabs-top .nav, :root.tabs-bottom .nav { position:sticky; z-index:20; height:auto; flex-direction:row;
    align-items:center; gap:2px; padding:8px 16px; overflow:hidden; border-right:0; }
  :root.tabs-top .nav .tablist, :root.tabs-bottom .nav .tablist { flex:0 1 auto; min-width:0; overflow-x:auto;
    scrollbar-width:none; } .tablist::-webkit-scrollbar { display:none; }
  :root.tabs-top .nav .tab > a, :root.tabs-bottom .nav .tab > a { padding-right:30px; }
  :root.tabs-top .nav { top:0; border-bottom:1px solid var(--line); }
  :root.tabs-bottom .nav { bottom:0; order:2; border-top:1px solid var(--line); }
  :root.tabs-top .nav .logo, :root.tabs-bottom .nav .logo { padding:0 14px 0 4px; }
  :root.tabs-top .tablist, :root.tabs-bottom .tablist { flex-direction:row; }
  :root.tabs-top .nav a, :root.tabs-top .nav button, :root.tabs-bottom .nav a, :root.tabs-bottom .nav button {
    width:auto; white-space:nowrap; }
  :root.tabs-top .nav .tab .x, :root.tabs-bottom .nav .tab .x { width:22px; }
  :root.tabs-top .nav .foot, :root.tabs-bottom .nav .foot { display:flex; margin:0 0 0 auto; padding:0 0 0 12px; gap:2px; }
  :root.tabs-top .nav .foot span, :root.tabs-bottom .nav .foot span,
  :root.tabs-top .nav .tabadd span, :root.tabs-bottom .nav .tabadd span { display:none; }
  :root.tabs-top aside.side { top:72px; max-height:calc(100vh - 88px); }
  :root.tabs-bottom aside.side { max-height:calc(100vh - 88px); }
  :root.tabs-bottom:not(.navless) #sup-btn { bottom:70px; }       /* the support button (support.py) above the bar */
}
:root.inpane .nav, :root.inpane .tabbar, :root.inpane #sup-btn, :root.inpane .legal, :root.inpane .show-nav, :root.inpane .tabmenu { display:none !important; }
:root.inpane .app { display:block; } :root.inpane .top { padding:14px 18px 4px; } :root.inpane .top h1 { font-size:22px; }
:root.inpane .body { padding:10px 18px 24px; }
:root.split .app { height:100vh; min-height:0; grid-template-rows:100%; }
.split { position:relative; height:100%; min-width:0; min-height:0; }
:root.tabs-top .split, :root.tabs-bottom .split { flex:1 1 0; height:auto; }
.pane { position:absolute; padding:4px; }
.pane-in { height:100%; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--bg); }
.pane[data-id=self] .col { flex:1; min-height:0; overflow:auto; }
.pane.on .pane-in { border-color:var(--accent); }
.pane-h { display:flex; align-items:center; gap:8px; padding:3px 4px 3px 12px; border-bottom:1px solid var(--line); background:var(--panel); color:var(--muted); font-size:12.5px; }
.pane-h span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pane-x { width:24px; height:24px; min-height:0; padding:0; border:0; border-radius:6px; background:none; color:var(--faint); font-size:16px; cursor:pointer; }
.pane-x:hover { color:var(--fg); background:var(--line); }
.wcol { display:flex; flex-direction:column; min-width:0; }
.tabstrip { display:flex; align-items:flex-end; gap:2px; padding:8px 16px 0; border-bottom:1px solid var(--line);
  overflow-x:auto; scrollbar-width:none; } .tabstrip::-webkit-scrollbar { display:none; } .tabstrip:empty { display:none; }
.wtab { position:relative; flex:0 1 200px; min-width:96px; display:flex; align-items:center; margin-bottom:-1px;
  border:1px solid transparent; border-bottom:0; border-radius:9px 9px 0 0; }
.wtab > a { flex:1; min-width:0; padding:7px 30px 7px 12px; color:var(--muted); font-size:13px; text-decoration:none;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; -webkit-touch-callout:none; }
.wtab:hover > a { color:var(--fg); }
.wtab.on { background:var(--bg); border-color:var(--line); } .wtab.on > a { color:var(--fg); }
.wtab .wx { position:absolute; right:4px; top:50%; transform:translateY(-50%); width:18px; height:18px; min-height:0; padding:0; border:0;
  border-radius:5px; background:none; color:var(--faint); line-height:0; cursor:pointer; opacity:0; display:grid; place-items:center; }
.wtab .wx svg { width:8px; height:8px; }
.wtab:hover .wx, .wtab.on .wx, .wtab:focus-within .wx { opacity:1; } .wtab .wx:hover { color:var(--fg); background:var(--line); }
.wtab.dragging { opacity:.6; }
.wtab .wname { flex:1; min-width:0; width:150px; margin:3px 28px 3px 5px; padding:3px 6px; border:1px solid var(--accent);
  border-radius:6px; background:var(--panel); color:var(--fg); font:inherit; font-size:13px; outline:none; }
.wnew { flex:none; padding:5px 10px 7px; color:var(--faint); font-size:17px; line-height:1; text-decoration:none; }
.wnew:hover { color:var(--fg); }
:root.inpane .tabstrip { display:none; }
:root.split .wcol { height:100%; min-height:0; } :root.split .app > .wcol { flex:1 1 0; }
:root.split .wcol > .split { flex:1 1 0; height:auto; }
@media (hover:none) { .wtab .wx { opacity:.75; } }
/* a phone: each tab as wide as its name allows, the strip scrolled, the + kept at its end; the strip the top of the
   page now, so it, not the header, keeps clear of the notch */
@media (max-width: 720px) {
  .tabstrip { padding:max(6px, env(safe-area-inset-top)) 0 0 12px; }
  .wtab { flex:0 0 auto; max-width:170px; } .wtab .wname { font-size:16px; }   /* 16px, or a phone zooms in to type */
  .wnew { position:sticky; right:0; align-self:stretch; display:flex; align-items:center; padding:0 14px;
    background:linear-gradient(90deg, transparent, var(--bg) 30%); }
  .wcol > .tabstrip:not(:empty) ~ .col .top { padding-top:14px; } }
.pane iframe { flex:1; width:100%; border:0; display:block; }
.gut { position:absolute; z-index:5; } .gut.row { width:10px; cursor:col-resize; } .gut.col { height:10px; cursor:row-resize; }
.gut:hover, :root.resizing .gut { background:color-mix(in srgb, var(--accent) 35%, transparent); border-radius:4px; }
:root.resizing iframe, :root.tabdrag iframe { pointer-events:none; } :root.resizing * { user-select:none; }
.dropmark { position:fixed; z-index:50; pointer-events:none; border:2px solid var(--accent); border-radius:12px;
  background:color-mix(in srgb, var(--accent) 14%, transparent); opacity:0;
  transition:left .12s ease, top .12s ease, width .12s ease, height .12s ease, opacity .1s; }
.dropmark.on { opacity:1; }
/* The sections along the top or foot, more than fit: an arrow at either end to scroll them, shown while there is
   more that way (_JS: over) */
.nav .tscroll { display:none; }
@media (min-width: 721px) {
  :root.tabs-top .nav .tscroll, :root.tabs-bottom .nav .tscroll { display:grid; place-items:center; flex:none; width:28px;
    height:32px; padding:0; border-radius:8px; color:var(--muted); font-size:18px; line-height:1; visibility:hidden; }
  :root.tabs-top .nav .tscroll.more, :root.tabs-bottom .nav .tscroll.more { visibility:visible; }
  :root.tabs-top .nav .tscroll:hover, :root.tabs-bottom .nav .tscroll:hover { color:var(--fg); background:var(--panel2); } }
/* An arrow on the menu's edge puts it away, and on the screen's edge brings it back: on a wide screen, with the menu
   down the left or right. Along the top or foot the menu keeps its Hide. */
.navedge { display:none; }
@media (min-width: 721px) {
  :root:not(.tabs-top):not(.tabs-bottom) .navedge { display:grid; place-items:center; position:fixed; top:50%; z-index:36;
    width:22px; height:44px; margin-top:-22px; padding:0; border:1px solid var(--line); border-radius:8px;
    background:var(--panel); color:var(--muted); font-size:15px; line-height:1; cursor:pointer; min-height:0;
    opacity:.55; transition:opacity .15s, color .15s; }
  .navedge:hover, .navedge:focus-visible { opacity:1; color:var(--fg); border-color:var(--faint); }
  .navedge::before { content:"‹"; } :root.navless .navedge::before { content:"›"; }
  :root.tabs-right .navedge::before { content:"›"; } :root.tabs-right.navless .navedge::before { content:"‹"; }
  :root:not(.tabs-right) .navedge { left:221px; } :root.navless:not(.tabs-right) .navedge { left:4px; }
  :root.tabs-right .navedge { right:221px; } :root.tabs-right.navless .navedge { right:4px; }
  :root:not(.tabs-top):not(.tabs-bottom) .show-nav, :root:not(.tabs-top):not(.tabs-bottom) .nav .foot [data-act=nav] { display:none; } }
.dragghost { position:fixed; left:0; top:0; z-index:61; pointer-events:none; padding:5px 12px; border-radius:999px;
  background:var(--accent); color:var(--on-accent); font-size:13px; font-weight:500; white-space:nowrap;
  box-shadow:0 6px 20px rgb(0 0 0 / .3); } .dragghost[hidden] { display:none; }
#keys { width:min(520px, calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:20px 22px;
  color:var(--fg); background:var(--panel); border:1px solid var(--line); border-radius:18px; }
#keys::backdrop { background:rgb(0 0 0 / .45); } #keys form { display:block; }
#keys h2 { margin:0 0 4px; font-size:17px; }
#keys h3 { margin:16px 0 6px; color:var(--faint); font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.08em; }
#keys dl { display:grid; grid-template-columns:minmax(120px, auto) 1fr; gap:7px 16px; margin:0; align-items:baseline; }
#keys dt { display:flex; flex-wrap:wrap; gap:4px; } #keys dd { margin:0; color:var(--muted); font-size:13.5px; }
#keys kbd { font-size:12px; color:var(--fg); background:var(--panel2); padding:2px 7px; }
#keys .row { display:flex; justify-content:flex-end; margin-top:18px; }
@media (max-width: 720px) { #keys dl { grid-template-columns:minmax(0, 1fr); gap:2px; } #keys dd { margin-bottom:8px; }
}

.stat { position:relative; }
button.clip { display:inline-grid; place-items:center; width:22px; height:22px; min-height:0; padding:0; margin:0 0 0 8px;
  border:1px solid var(--line); border-radius:7px; background:transparent; color:var(--muted); font-size:14px; font-weight:400;
  line-height:1; vertical-align:middle; cursor:pointer; opacity:0; transition:opacity .12s; }
.stat > button.clip { position:absolute; top:10px; right:10px; margin:0; }
section:hover > h2 > button.clip, .stat:hover > button.clip, button.clip:focus-visible, button.clip[aria-expanded=true] { opacity:1; }
button.clip:hover { color:var(--fg); border-color:var(--muted); }
@media (hover:none) { button.clip { opacity:.55; } }
button.clip > span { display:none; }
button.pick { display:inline-flex; align-items:center; gap:6px; flex:0 0 auto; padding:6px 12px; border:1px solid var(--line);
  border-radius:9px; background:transparent; color:var(--fg); font:inherit; font-size:14px; cursor:pointer; white-space:nowrap; }
button.pick svg { width:16px; height:16px; } button.pick:hover { border-color:var(--muted); }
button.pick + button.pick { margin-left:-4px; }
[data-row]:first-child form[data-by="-1"], [data-row]:last-child form[data-by="1"] { visibility:hidden; }
.rname form { flex-wrap:nowrap; } .rname input { min-width:0; }
button.pick[aria-pressed=true] { background:var(--accent); border-color:var(--accent); color:var(--bg); }
@media (max-width:640px) { button.pick > span { display:none; } }
.picking [data-part] { outline:1.5px dashed var(--accent); outline-offset:4px; border-radius:6px; }
.picking button.clip { opacity:1; width:auto; padding:0 9px; gap:4px; display:inline-flex; align-items:center;
  border-color:var(--accent); background:var(--accent); color:var(--bg); }
.picking button.clip > span { display:inline; }
.picking [data-part].added { outline-style:solid; }
.picking .stat > .k { padding-right:64px; }
:root.demo button.pick { display:none; }
.clipmenu { position:fixed; z-index:60; width:250px; max-height:calc(100vh - 16px); overflow-y:auto; padding:6px;
  background:var(--panel); border:1px solid var(--line); border-radius:14px; box-shadow:0 16px 40px rgb(0 0 0 / .35); }
.clipmenu .item { display:block; width:100%; text-align:left; padding:8px 10px; border:0; border-radius:9px; background:none;
  color:var(--fg); font:inherit; font-size:13.5px; text-decoration:none; cursor:pointer; min-height:0; }
.clipmenu .item:hover, .clipmenu .item:focus-visible { background:var(--hover, rgb(127 127 127 / .12)); }
.clipmenu form { display:flex; gap:6px; margin:4px 0 0; padding:4px; } .clipmenu input { flex:1 1 auto; min-width:0; }
.clipmenu .err { margin:6px 8px; }
:root.demo button.clip { display:none; }
:root.demo .board tbody td:first-child { filter:blur(5px); } :root.demo #sup-btn { display:none !important; }