/* Marveri home page: product windows and motion layer. Built by nv/build.py; edit nv/layer.css, not this file. */
/* the site's tag-level rules, undone inside a product window */
:where([data-nov="win"]) article{display:revert}
:where([data-nov="win"]) aside{display:revert}
:where([data-nov="win"]) details{display:revert}
:where([data-nov="win"]) figcaption{display:revert;text-align:revert;margin-top:revert}
:where([data-nov="win"]) figure{display:revert;margin:revert;margin-top:revert;margin-bottom:revert}
:where([data-nov="win"]) footer{display:revert}
:where([data-nov="win"]) header{display:revert}
:where([data-nov="win"]) hgroup{display:revert}
:where([data-nov="win"]) main{display:revert}
:where([data-nov="win"]) menu{display:revert}
:where([data-nov="win"]) nav{display:revert}
:where([data-nov="win"]) section{display:revert}
:where([data-nov="win"]) summary{display:revert}
:where([data-nov="win"]) audio{vertical-align:revert;display:revert}
:where([data-nov="win"]) canvas{vertical-align:revert;display:revert}
:where([data-nov="win"]) progress{vertical-align:revert;display:revert}
:where([data-nov="win"]) video{vertical-align:revert;display:revert}
:where([data-nov="win"]) audio:not([controls]){height:revert;display:revert}
:where([data-nov="win"]) [hidden]{display:revert}
:where([data-nov="win"]) template{display:revert}
:where([data-nov="win"]) a{background-color:revert;color:revert;font-size:revert;font-weight:revert;text-decoration:revert}
:where([data-nov="win"]) a:active{outline:revert}
:where([data-nov="win"]) a:hover{outline:revert}
:where([data-nov="win"]) abbr[title]{border-bottom:revert}
:where([data-nov="win"]) b{font-weight:revert}
:where([data-nov="win"]) strong{font-weight:revert}
:where([data-nov="win"]) dfn{font-style:revert}
:where([data-nov="win"]) h1{margin:revert;font-size:revert;margin-bottom:revert;font-weight:revert;margin-top:revert;line-height:revert}
:where([data-nov="win"]) mark{color:revert;background:revert}
:where([data-nov="win"]) small{font-size:revert}
:where([data-nov="win"]) sub{vertical-align:revert;font-size:revert;line-height:revert;position:revert;bottom:revert}
:where([data-nov="win"]) sup{vertical-align:revert;font-size:revert;line-height:revert;position:revert;top:revert}
:where([data-nov="win"]) img{border:revert;vertical-align:revert;max-width:revert;display:revert}
:where([data-nov="win"]) svg:not(:root){overflow:revert}
:where([data-nov="win"]) hr{box-sizing:revert;height:revert}
:where([data-nov="win"]) pre{overflow:revert;font-family:revert;font-size:revert}
:where([data-nov="win"]) code{font-family:revert;font-size:revert}
:where([data-nov="win"]) kbd{font-family:revert;font-size:revert}
:where([data-nov="win"]) samp{font-family:revert;font-size:revert}
:where([data-nov="win"]) button{color:revert;font:revert;margin:revert;overflow:revert;text-transform:revert;-webkit-appearance:revert;cursor:revert;border:revert}
:where([data-nov="win"]) input{color:revert;font:revert;margin:revert;line-height:revert}
:where([data-nov="win"]) optgroup{color:revert;font:revert;margin:revert;font-weight:revert}
:where([data-nov="win"]) select{color:revert;font:revert;margin:revert;text-transform:revert}
:where([data-nov="win"]) textarea{color:revert;font:revert;margin:revert;overflow:revert}
:where([data-nov="win"]) input[type="reset"]{-webkit-appearance:revert;cursor:revert}
:where([data-nov="win"]) button[disabled]{cursor:revert}
:where([data-nov="win"]) button::-moz-focus-inner{border:revert;padding:revert}
:where([data-nov="win"]) input::-moz-focus-inner{border:revert;padding:revert}
:where([data-nov="win"]) input[type="checkbox"]{box-sizing:revert;padding:revert}
:where([data-nov="win"]) input[type="radio"]{box-sizing:revert;padding:revert}
:where([data-nov="win"]) input[type="number"]::-webkit-inner-spin-button{height:revert}
:where([data-nov="win"]) input[type="number"]::-webkit-outer-spin-button{height:revert}
:where([data-nov="win"]) input[type="search"]{-webkit-appearance:revert}
:where([data-nov="win"]) input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:revert}
:where([data-nov="win"]) input[type="search"]::-webkit-search-decoration{-webkit-appearance:revert}
:where([data-nov="win"]) legend{border:revert;padding:revert}
:where([data-nov="win"]) table{border-collapse:revert;border-spacing:revert}
:where([data-nov="win"]) td{padding:revert}
:where([data-nov="win"]) th{padding:revert}
:where([data-nov="win"]) [class^="w-icon-"]{speak:revert;font-variant:revert;text-transform:revert;-webkit-font-smoothing:revert;-moz-osx-font-smoothing:revert;font-style:revert;font-weight:revert;line-height:revert;font-family:revert}
:where([data-nov="win"]) [class*=" w-icon-"]{speak:revert;font-variant:revert;text-transform:revert;-webkit-font-smoothing:revert;-moz-osx-font-smoothing:revert;font-style:revert;font-weight:revert;line-height:revert;font-family:revert}
:where([data-nov="win"]) *{box-sizing:revert}
:where([data-nov="win"]) h2{margin-bottom:revert;font-weight:revert;margin-top:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) h3{margin-bottom:revert;font-weight:revert;margin-top:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) h4{margin-bottom:revert;font-weight:revert;margin-top:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) h5{margin-bottom:revert;font-weight:revert;margin-top:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) h6{margin-bottom:revert;font-weight:revert;margin-top:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) p{margin-top:revert;margin-bottom:revert;color:revert;font-size:revert;line-height:revert}
:where([data-nov="win"]) blockquote{border-left:revert;margin:revert;padding:revert;font-size:revert;line-height:revert;margin-bottom:revert}
:where([data-nov="win"]) ul{margin-top:revert;margin-bottom:revert;padding-left:revert;color:revert;font-size:revert}
:where([data-nov="win"]) ol{margin-top:revert;margin-bottom:revert;padding-left:revert;font-size:revert}
:where([data-nov="win"]) fieldset{border:revert;margin:revert;padding:revert}
:where([data-nov="win"]) [type="button"]{cursor:revert;-webkit-appearance:revert;border:revert}
:where([data-nov="win"]) [type="reset"]{cursor:revert;-webkit-appearance:revert;border:revert}
:where([data-nov="win"]) label{margin-bottom:revert;font-weight:revert;display:revert}
:where([data-nov="win"]) [data-nav-menu-open]{text-align:revert;background:revert;min-width:revert;position:revert;top:revert;left:revert;right:revert;overflow:revert;display:revert}
:where([data-nov="win"]) li{margin-bottom:revert}
:where([data-nov="win"]) .line{background-color:revert;flex:revert;width:revert;max-height:revert}
:where([data-nov="win"]) borderless{width:revert;max-width:revert;height:revert;max-height:revert;object-fit:revert;object-position:revert}
@media screen and (max-width: 767px){:where([data-nov="win"]) h1{font-size:revert}:where([data-nov="win"]) h2{font-size:revert}:where([data-nov="win"]) h3{font-size:revert}:where([data-nov="win"]) h4{font-size:revert}:where([data-nov="win"]) h5{font-size:revert}:where([data-nov="win"]) h6{font-size:revert}}

.page-wrapper.is-nov{--ink:#16181D;--ink2:#474C58;--ink3:#6B7080;--line:#DCDFE4;--paper:#FFFFFF;--soft:#F4F5F7;--memo:#F2F3F5;
  --serif:'Libre Baskerville',Georgia,'Times New Roman',serif;--sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--gut:48px;color-scheme:light}
.s-shot.doc{height:auto;border:0;-webkit-mask-image:none;mask-image:none;padding-right:var(--gut)}
.s-shot.doc img{min-width:0;width:auto;max-width:100%;border:1px solid rgba(22,24,29,.12);box-shadow:0 26px 60px -30px rgba(22,24,29,.35)}
.card .b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:4px;flex:1}
@media (max-width:1000px){.page-wrapper.is-nov{--gut:28px}}
@media (max-width:720px){.page-wrapper.is-nov{--gut:16px}}
.doc{font:12px/1.62 var(--serif);color:#1d2230}
.doc p{margin:0 0 10px}
.doc .dh{text-align:center;font-weight:700;margin:0 0 14px;line-height:1.4}
.doc .dh.left{text-align:left}
.doc .dh span{font-weight:400;font-size:11.5px}
.doc .note{background:#EEF2F7;border-left:2px solid #6E829F;padding:8px 10px;font-style:italic;color:#3A4557}
.doc mark{background:#DCE5F0;color:inherit;padding:0 1px}
.doc ins{text-decoration:none;background:#DCE5F0;border-bottom:1px solid var(--cite)}
.doc del{color:#7C8494}
.dt tr.on td{background:#EEF2F7}
@keyframes tickin{0%,4%{transform:scale(0)}8%,88%{transform:scale(1)}96%,100%{transform:scale(0)}}
@keyframes fill{0%{transform:scaleX(0)}80%,100%{transform:scaleX(1)}}
.sched .doc{max-width:600px}
@keyframes popin{0%,18%{opacity:0;transform:translateY(8px)}26%,92%{opacity:1;transform:none}100%{opacity:0}}
.doc.page{background:#fff;border:1px solid var(--pvline);padding:26px 30px}
.tabs span.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:500}
.split>.doc{padding:22px 24px;border-right:1px solid var(--pvline)}
.srcdoc .doc{background:#fff;border:1px solid var(--pvline);padding:18px 18px 10px}
.doc.page.tall{max-width:520px;box-shadow:0 28px 64px -34px rgba(16,24,40,.35);font-size:12.5px}
.doc .meta{font-family:var(--sans);font-size:11.5px;color:var(--ink3)}
.doc .sec{font-weight:700;border-top:1px solid #1d2230;padding-top:12px;margin-top:14px}
.doc ul{padding-left:16px;margin:0}
.doc ul li{margin-bottom:8px}
.red .doc{border-left:2px solid var(--ink);padding-left:16px;margin:4px 0 16px}
.docwrap .doc.page.tall{margin:0 auto}
@media (max-width:1000px){.split>.doc{border-right:0;border-bottom:1px solid var(--pvline)}}
.page-wrapper.is-nov{--stage:#E3E8EE;--stage-bg:linear-gradient(180deg,#E9EDF2,#DDE3EA)}
.page-wrapper.is-nov{--stage-bg:linear-gradient(165deg,#EEF1F5 0%,#D9E1EA 100%)}
.spot{margin:0}
.spot.hero{max-width:1160px;margin:0 auto}
.win{position:relative;line-height:0;box-shadow:0 0 0 1px rgba(15,23,42,.10),0 2px 4px rgba(15,25,40,.06),0 24px 56px -18px rgba(15,25,40,.28)}
.win img{display:block;width:100%;height:auto}
.win .veil{display:none}
.win.dim .base{filter:blur(1.2px) saturate(.55)}
.win.dim .veil{display:block;position:absolute;inset:0;background:rgba(236,240,245,.62)}
.win .f{position:absolute;inset:0;width:100%;height:100%}
.win .ring{position:absolute;box-shadow:0 0 0 1.5px #16181D,0 10px 28px -8px rgba(15,25,40,.35);pointer-events:none}
.win .fz{position:absolute;transform-origin:50% 50%;box-shadow:0 0 0 1.5px #16181D,0 14px 34px -10px rgba(15,25,40,.40);background:#fff}
.win .ring,.win .f{display:none}
.win .tag{position:absolute;white-space:nowrap;font:500 12px/1 var(--sans);color:#16181D;background:#fff;padding:7px 9px;box-shadow:0 0 0 1px rgba(15,23,42,.12),0 6px 16px -6px rgba(15,25,40,.3)}
.spot.doc{max-width:640px;margin:0 auto}
.spot.doc .win{max-height:none}
@media (max-width:720px){.win .tag{font-size:11px;padding:5px 7px}}
.spot.doc{box-shadow:0 0 0 1px rgba(15,23,42,.10),0 2px 4px rgba(15,25,40,.06),0 24px 56px -18px rgba(15,25,40,.28);border-radius:6px;overflow:hidden;background:#fff}
.spot.doc .win{box-shadow:none}
.wbar{display:flex;align-items:center;gap:10px;height:40px;padding:0 14px;border-bottom:1px solid #E6E9EE;background:#F7F8FA;font:500 12.5px/1 var(--sans);color:#23262D;line-height:normal}
.wbar .wb{width:18px;height:20px;border-radius:2px;background:#2F4A78;color:#fff;font:600 10px/20px var(--sans);text-align:center;flex:none}
.wbar .wt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wbar .wx{margin-left:auto;font-size:11.5px;border:1px solid #D9DDE3;border-radius:3px;padding:5px 9px;background:#fff}
.win .fz{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.30)!important}
.spot.doc{border-radius:2px;background:#F1F3F6}
.spot.doc .win{margin:16px 20px 0;box-shadow:0 0 0 1px rgba(15,23,42,.08),0 2px 6px rgba(15,25,40,.06)}
.wbar{background:#fff}
.wbar .wb{background:#333C5C;border-radius:2px}
.wbar .wx{border:0;color:#8E94A0;background:none;padding:0}
.spot.doc{background:#ECEEF2;max-width:760px}
.win.dim .base{filter:blur(1.1px) saturate(.6)}
.spot.doc .win.dim .veil{background:rgba(255,255,255,.58)}
.lv{--a-ink:#16181D;--a-ink2:#474C58;--a-ink3:#8E94A0;--a-line:#E3E6EB;--a-line2:#F0F1F3;--a-soft:#F7F8FA;--a-accent:#333C5C;--a-sel:#EDEFF4;--a-selb:#B3B9C9;
  --a-hl:#DDE3EE;--a-red:#7A3A50;--a-green:#333C5C;--a-amber:#A88A4A;--a-sk:#E6E8EC;
  position:relative;width:100%;line-height:normal}
.lv .box{position:absolute;left:0;top:0;transform-origin:0 0;font:13px/1.4 'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--a-ink);-webkit-font-smoothing:antialiased}
.lv .box *{box-sizing:border-box}
.lv .v-appw{background:#fff;border-radius:10px;overflow:hidden;position:relative;height:100%;
  box-shadow:0 0 0 1px rgba(15,23,42,.10),0 2px 4px rgba(15,25,40,.06),0 24px 56px -18px rgba(15,25,40,.28)}
.lv .v-tb{height:44px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--a-line);background:#fff}
.lv .v-logo{width:22px;height:22px;border-radius:5px;background:#16181D;color:#fff;font:600 12px/22px 'IBM Plex Sans',sans-serif;text-align:center;flex:none}
.lv .v-crumb{font-size:13px;color:var(--a-ink3);white-space:nowrap}
.lv .v-crumb b{color:var(--a-ink);font-weight:600}
.lv .v-sp{flex:1}
.lv .v-btno{font:500 12px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink);border:1px solid var(--a-line);border-radius:6px;padding:7px 10px;background:#fff;white-space:nowrap}
.lv .v-btnp{font:500 12px/1 'IBM Plex Sans',sans-serif;color:#fff;background:var(--a-accent);border-radius:6px;padding:8px 12px;white-space:nowrap}
.lv .v-sk{display:block;height:7px;border-radius:4px;background:var(--a-sk)}
.lv .v-veil{position:absolute;inset:0;background:rgba(236,240,245,.62);backdrop-filter:blur(1.2px) saturate(.6);-webkit-backdrop-filter:blur(1.2px) saturate(.6);opacity:0;transition:opacity .5s ease;pointer-events:none}
.lv .v-tag{position:absolute;white-space:nowrap;font:500 13.5px/1 'IBM Plex Sans',system-ui,sans-serif;color:#16181D;background:#fff;padding:8px 10px;
  box-shadow:0 0 0 1px rgba(15,23,42,.12),0 6px 16px -6px rgba(15,25,40,.3);opacity:0;transform:translateY(4px);transition:opacity .4s ease,transform .4s ease;z-index:30}
.lv.v-on .v-tag{opacity:1;transform:none}
.lv .v-cur{position:absolute;width:16px;height:22px;z-index:40;opacity:0;transition:left .7s cubic-bezier(.45,0,.2,1),top .7s cubic-bezier(.45,0,.2,1),opacity .3s;pointer-events:none}
.lv .v-cur svg{display:block}
.lv .v-cur.v-show{opacity:1}
.lv .v-cur.v-click svg{transform:scale(.88);transition:transform .12s}
.lv-matrix table{width:100%;border-collapse:collapse;table-layout:fixed}
.lv-matrix th{font:500 11px/1.2 'IBM Plex Sans',sans-serif;color:var(--a-ink2);text-align:center;padding:11px 2px;background:var(--a-soft);border-bottom:1px solid var(--a-line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-matrix th:first-child{text-align:left;padding-left:16px}
.lv-matrix th:last-child{text-align:left}
.lv-matrix td{height:37px;border-bottom:1px solid var(--a-line2);text-align:center;padding:0 6px;position:relative}
.lv-matrix td:first-child{text-align:left;font-weight:500;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-matrix td:first-child i{display:inline-block;width:11px;height:14px;border:1.3px solid #8E94A0;border-radius:2px;margin:0 9px -2px 0;vertical-align:baseline}
.lv-matrix td:last-child{text-align:left;color:var(--a-ink2);font-size:12px}
.lv-matrix td .v-ic{display:inline-block;width:15px;height:15px;vertical-align:middle}
.lv-matrix td .v-ic svg{display:block;width:15px;height:15px}
.lv-matrix tr.v-scan td{background:#F7F8FA}
.lv-matrix .v-ic,.lv-matrix td:last-child span{transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}
.lv-matrix .v-pending .v-ic,.lv-matrix .v-pending td:last-child span{opacity:0;transform:scale(.4)}
.lv-matrix td.v-target::after{content:"";position:absolute;inset:3px 4px;border-radius:5px;box-shadow:0 0 0 1.5px var(--a-accent);background:rgba(51,60,92,.06);opacity:0;transition:opacity .25s}
.lv-matrix.v-on td.v-target::after{opacity:1}
.lv-matrix .v-grid{position:relative}
.lv-matrix.v-on .v-grid .v-veil{opacity:1}
.lv-matrix td.v-target{z-index:3}
.lv-matrix .v-pv{position:absolute;top:44px;right:0;bottom:0;width:50.4%;background:#F1F3F6;border-left:1px solid var(--a-line);transform:translateX(102%);transition:transform .55s cubic-bezier(.3,.7,.2,1);z-index:20;display:flex;flex-direction:column}
.lv-matrix.v-on .v-pv{transform:none;box-shadow:-18px 0 40px -24px rgba(15,25,40,.35)}
.lv .v-pvh{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fff;border-bottom:1px solid var(--a-line);font-size:12px;white-space:nowrap;overflow:hidden}
.lv .v-chip{font:600 9.5px/1 'IBM Plex Sans',sans-serif;letter-spacing:.04em;color:#474C58;background:#EEF0F4;border-radius:4px;padding:5px 6px;flex:none}
.lv .v-pvh .v-nm{font-weight:500;overflow:hidden;text-overflow:ellipsis}
.lv .v-page{margin:14px 16px 0;background:#fff;flex:1;padding:22px 22px 0;box-shadow:0 0 0 1px rgba(15,23,42,.06),0 2px 6px rgba(15,25,40,.06);font:10.5px/1.55 'Times New Roman',Times,serif;color:#23262D}
.lv .v-page .v-sk{height:5px;margin:0 0 7px;background:#E8EAEE}
.lv .v-page .v-hd{font:700 10.5px/1.3 'Times New Roman',Times,serif;text-align:center;margin:0 0 12px;letter-spacing:.02em}
.lv .v-page mark{background:transparent;color:inherit;padding:1px 0;transition:background .6s ease .3s}
.lv.v-on .v-page mark{background:var(--a-hl)}
.lv .v-ficon{display:inline-block;width:11px;height:14px;border:1.3px solid #8E94A0;border-radius:2px;flex:none;position:relative}
.lv .v-fold{display:inline-block;width:15px;height:12px;border-radius:2px;background:#C7CDD6;flex:none;position:relative}
.lv .v-fold::before{content:"";position:absolute;left:0;top:-2px;width:7px;height:4px;border-radius:2px 2px 0 0;background:#C7CDD6}
.lv .v-cnt{font:500 11px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink2);background:#F1F3F6;border-radius:10px;padding:4px 8px}
.lv .v-seg{display:flex;border:1px solid var(--a-line);border-radius:7px;padding:2px;gap:2px}
.lv .v-seg span{font:500 12px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink2);padding:6px 10px;border-radius:5px;transition:background .3s,color .3s}
.lv .v-ok{display:inline-block;width:15px;height:15px;border-radius:50%;background:var(--a-green);position:relative;flex:none}
.lv .v-ok::after{content:"";position:absolute;left:5px;top:3px;width:3.5px;height:6.5px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.lv .v-pop{transition:opacity .35s ease,transform .45s cubic-bezier(.3,.7,.2,1)}
.lv .v-pre .v-pop,.lv .v-pop.v-pre{opacity:0;transform:translateY(6px) scale(.98)}
.lv .v-focus{position:relative;z-index:5}
.lv-organize .v-seg span:first-child{background:#F1F3F6;color:var(--a-ink)}
.lv-organize.v-org .v-seg span:first-child{background:transparent;color:var(--a-ink2)}
.lv-organize.v-org .v-seg span:last-child{background:#F1F3F6;color:var(--a-ink)}
.lv-organize .v-prog{position:absolute;left:0;top:43px;height:2px;width:0;background:var(--a-accent);transition:width 1.6s linear,opacity .3s}
.lv-organize .v-prog.v-go{width:100%}
.lv-organize .v-list{position:absolute;left:0;right:0;top:44px;bottom:0}
.lv-organize .v-r,.lv-organize .v-fh{position:absolute;left:0;right:0;height:32px;display:flex;align-items:center;gap:10px;padding:0 20px;border-bottom:1px solid var(--a-line2);font-size:12.5px;
  top:var(--a);transition:top .75s cubic-bezier(.5,0,.2,1),padding .75s cubic-bezier(.5,0,.2,1),opacity .4s}
.lv-organize.v-org .v-r{top:var(--b);padding-left:46px}
.lv-organize .v-fh{top:var(--b);opacity:0;font-weight:600;background:var(--a-soft)}
.lv-organize.v-org .v-fh{opacity:1}
.lv-organize .v-fh .v-cnt{margin-left:auto}
.lv-organize .v-nm{position:relative;flex:1;height:18px;overflow:hidden;white-space:nowrap}
.lv-organize .v-nm span{position:absolute;left:0;top:1px;transition:opacity .45s ease,transform .45s ease}
.lv-organize .v-nm .v-n1{color:var(--a-ink2)}
.lv-organize .v-nm .v-n2{opacity:0;transform:translateY(8px)}
.lv-organize.v-org .v-nm .v-n1{opacity:0;transform:translateY(-8px)}
.lv-organize.v-org .v-nm .v-n2{opacity:1;transform:none}
.lv-organize .v-sz{color:var(--a-ink3);font-size:11.5px;width:56px;text-align:right}
.lv-organize.v-on .v-list .v-veil{opacity:1}
.lv-organize .v-r.v-focus{background:#fff;z-index:6;border-radius:6px}
.lv-organize.v-on .v-r.v-focus{left:10px;right:10px}
.lv-organize.v-on .v-r.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26)}
.lv-relations .v-nd .v-ficon{margin-top:2px}
.lv-relations .v-nd.v-miss .v-ficon{border-color:#8E5266;border-style:dashed}
.lv-relations.v-on .v-canvas .v-veil{opacity:1}
.lv-relations.v-on .v-nd.v-miss{box-shadow:0 14px 34px -12px rgba(110,51,72,.22)}
.lv-compare .v-side{position:absolute;left:0;top:44px;bottom:0;width:262px;border-right:1px solid var(--a-line);background:var(--a-soft);padding:14px 10px}
.lv-compare .v-lab{font:600 10px/1 'IBM Plex Sans',sans-serif;letter-spacing:.06em;color:var(--a-ink3);margin:6px 10px 10px}
.lv-compare .v-it{display:flex;align-items:center;gap:9px;height:34px;padding:0 10px;border-radius:6px;font-size:12.5px;font-weight:500;white-space:nowrap}
.lv-compare .v-it .v-cnt{margin-left:auto}
.lv-compare .v-it.v-sel{background:var(--a-sel);box-shadow:inset 0 0 0 1px var(--a-selb)}
.lv-compare .v-main{position:absolute;left:262px;right:0;top:44px;bottom:0;background:#F1F3F6;padding:18px 24px 0}
.lv-compare .v-page{margin:0;height:100%;padding:26px 34px 0}
.lv-compare .v-del{background:#EEDDE2;position:relative}
.lv-compare .v-del::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#8A3D50}
.lv-compare .v-ins{background:#DCE2EE;border-bottom:1.5px solid #3563C9;border-radius:0}
.lv-compare .v-page .v-sk{transition:background .4s}
.lv-compare .v-page .v-cl{margin:0 0 12px;font:13px/1.55 'Times New Roman',Times,serif;position:relative;z-index:6;background:#fff;padding:4px 6px;margin-left:-6px;margin-right:-6px}
.lv-compare .v-page .v-cl s{color:#8A3D50;text-decoration-thickness:1px}
.lv-compare .v-page .v-cl u{color:#2F4A78;text-decoration-style:double}
.lv-compare.v-on .v-main .v-veil{opacity:1}
.lv-compare.v-on .v-page .v-cl{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26)}
.lv-upload .v-body{position:absolute;left:0;right:0;top:44px;bottom:0;padding:26px 32px;background:var(--a-soft)}
.lv-upload .v-card{background:#fff;border:1px solid var(--a-line);border-radius:10px;padding:16px 18px;display:flex;align-items:center;gap:14px;margin-bottom:12px}
.lv-upload .v-card .v-ic2{width:36px;height:36px;border-radius:8px;background:#F1F3F6;display:flex;align-items:center;justify-content:center}
.lv-upload .v-card b{display:block;font:600 13px/1.3 'IBM Plex Sans',sans-serif}
.lv-upload .v-card small{display:block;color:var(--a-ink3);font-size:11.5px;margin-top:2px}
.lv-upload .v-fchip{margin-left:auto;display:flex;align-items:center;gap:8px;border:1px solid var(--a-line);border-radius:7px;padding:8px 10px;font-size:12px;font-weight:500;background:#fff}
.lv-upload .v-row2{display:flex;align-items:center;gap:14px;margin:18px 0 16px}
.lv-upload .v-btnp{transition:transform .12s}
.lv-upload .v-btnp.v-press{transform:scale(.96)}
.lv-upload .v-st{font-size:12px;color:var(--a-ink2)}
.lv-upload .v-scheds{display:grid;grid-template-columns:repeat(11,1fr);gap:7px}
.lv-upload .v-sc{height:34px;border-radius:6px;border:1px solid var(--a-line);background:#fff;font:500 11.5px/32px 'IBM Plex Sans',sans-serif;text-align:center;color:var(--a-ink3);transition:background .3s,color .3s,border-color .3s}
.lv-upload .v-sc.v-done{background:#EDEFF4;border-color:#CDD2DE;color:#333C5C}
.lv-field .v-doc .v-rl{height:1px;background:#23262D;margin:0 0 6px}
.lv-tieout table{width:100%;border-collapse:collapse;table-layout:fixed}
.lv-tieout th{font:500 11.5px/1.2 'IBM Plex Sans',sans-serif;color:var(--a-ink2);text-align:left;padding:12px 14px;background:var(--a-soft);border-bottom:1px solid var(--a-line)}
.lv-tieout td{height:48px;padding:0 14px;border-bottom:1px solid var(--a-line2);font-size:12.5px;white-space:nowrap;position:relative}
.lv-tieout td:first-child{font-weight:500}
.lv-tieout td .v-ic{display:inline-block;width:15px;height:15px;vertical-align:-3px;margin-right:8px}
.lv-tieout td .v-ic svg{display:block;width:15px;height:15px}
.lv-tieout td.v-num{font-variant-numeric:tabular-nums;color:var(--a-ink2)}
.lv-tieout tr.v-pending td>*{opacity:0}
.lv-tieout td>*{transition:opacity .3s}
.lv-tieout .v-grid{position:relative}
.lv-tieout.v-on .v-grid .v-veil{opacity:1}
.lv-tieout td.v-target{z-index:6;background:#fff}
.lv-tieout.v-on td.v-target{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26)}
.lv-tieout .v-cardpv{position:absolute;left:272px;top:84px;width:376px;background:#fff;border-radius:10px;z-index:20;box-shadow:0 0 0 1px rgba(15,23,42,.10),0 24px 56px -18px rgba(15,25,40,.40);overflow:hidden;
  opacity:0;transform:translateY(10px);transition:opacity .4s,transform .5s cubic-bezier(.3,.7,.2,1)}
.lv-tieout.v-on .v-cardpv{opacity:1;transform:none}
.lv-tieout .v-cardpv .v-page{margin:12px 14px 14px;padding:18px 18px 12px;flex:none;min-height:0;background:#fff}
.lv-tieout .v-cardpv{background:#F1F3F6}
.lv-tieout .v-stamp{display:inline-block;border:1.5px solid #6B7080;color:#3A3E47;font:600 9.5px/1.25 'IBM Plex Sans',sans-serif;letter-spacing:.04em;padding:5px 7px;transform:rotate(-3deg);margin:4px 0 10px}
.lv-report .v-nav{position:absolute;left:0;top:44px;bottom:0;width:236px;border-right:1px solid var(--a-line);background:var(--a-soft);padding:14px 10px}
.lv-report .v-nav div{display:flex;align-items:center;height:34px;padding:0 10px;border-radius:6px;font-size:12.5px;font-weight:500;color:var(--a-ink2);white-space:nowrap}
.lv-report .v-nav div.v-sel{background:#fff;color:var(--a-ink);box-shadow:0 0 0 1px var(--a-line)}
.lv-report .v-nav .v-n{margin-left:auto;font:600 11px/1 'IBM Plex Sans',sans-serif;color:#6E3348;background:#F4ECEF;border-radius:10px;padding:4px 7px;transition:opacity .3s}
.lv-report .v-nav.v-pre .v-n{opacity:0}
.lv-report .v-main{position:absolute;left:236px;right:0;top:44px;bottom:0;padding:22px 26px}
.lv-report h5{font:600 17px/1.2 'IBM Plex Sans',sans-serif;margin:0 0 14px}
.lv-report .v-fd{border:1px solid var(--a-line);border-radius:9px;padding:13px 15px;margin-bottom:10px;background:#fff}
.lv-report .v-fd .v-top{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600}
.lv-report .v-sev{font:600 9.5px/1 'IBM Plex Sans',sans-serif;letter-spacing:.04em;border-radius:4px;padding:4px 6px;flex:none}
.lv-report .v-sev.v-c{color:#6E3348;background:#F4ECEF}
.lv-report .v-sev.v-h{color:#6E5A2E;background:#F3EEE2}
.lv-report .v-sev.v-m{color:#475467;background:#F2F4F7}
.lv-report .v-fd .v-sk{margin:9px 0 0;height:6px}
.lv-report .v-cites{display:flex;gap:6px;margin-top:10px}
.lv-report .v-cites span{font:500 11px/1 'IBM Plex Sans',sans-serif;color:#333C5C;background:#EDEFF4;border-radius:5px;padding:5px 7px;white-space:nowrap}
.lv-report.v-on .v-main .v-veil{opacity:1}
.lv-report .v-fd.v-focus{z-index:6}
.lv-report.v-on .v-fd.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26);border-color:transparent}
.lv-compare .v-pm .v-sk.v-red{background:var(--a-sk)!important}
.lv-compare .v-pm .v-sk.v-red::after{opacity:0}
.lv-compare .v-sk.v-red{transition:background .5s}
.lv-upload .v-st.v-pre{opacity:0}
.lv-upload .v-st{transition:opacity .4s}
.lv.v-snap,.lv.v-snap *{transition:none!important}
.lv .v-appw>*:not(.v-tb),.lv .v-tag,.lv .v-fl,.lv .v-doc{transition:opacity .45s ease}
.lv.v-out .v-appw>*:not(.v-tb),.lv.v-out .v-tag,.lv.v-out .v-cur{opacity:0!important}
@media (prefers-reduced-motion:reduce){.lv *{transition:none!important}}
.lv .v-dimp{font:10.5px/1.55 'Times New Roman',Times,serif;color:#474C58;margin:0 0 9px;filter:blur(.7px);opacity:.5}
.lv-compare .v-page .v-tx{font:11px/1.6 'Times New Roman',Times,serif;color:#3A3E47;margin:0 0 11px}
.lv-compare .v-tx s{color:#8A3D50}
.lv-compare .v-tx u{color:#2F4A78;text-decoration-style:double}
.lv-compare .v-pm .v-red{color:inherit!important;text-decoration:none!important}
.lv-compare .v-tx .v-red{transition:color .5s}
.lv-upload .v-scheds{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;background:#fff;border:1px solid var(--a-line);border-radius:10px;padding:4px 16px}
.lv-upload .v-sc{display:flex;align-items:center;gap:10px;height:36px;border:0;border-bottom:1px solid var(--a-line2);border-radius:0;background:none;font:500 12.5px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink3);text-align:left;white-space:nowrap}
.lv-upload .v-sc:nth-last-child(-n+2){border-bottom:0}
.lv-upload .v-sc.v-done{background:none;border-color:var(--a-line2);color:var(--a-ink)}
.lv-upload .v-no{width:30px;color:var(--a-ink3);font-variant-numeric:tabular-nums}
.lv-upload .v-en{margin-left:auto;color:var(--a-ink3);font-weight:400;font-size:11.5px}
.lv-upload .v-sc .v-ok{opacity:0;transform:scale(.5);transition:opacity .25s,transform .3s cubic-bezier(.34,1.56,.64,1)}
.lv-upload .v-sc.v-done .v-ok{opacity:1;transform:none}
.lv-upload .v-more{font-size:12px;color:var(--a-ink3);margin:10px 2px 0}
.lv-upload .v-b2{display:none}
.lv-upload.v-fin .v-b1{display:none}
.lv-upload.v-fin .v-b2{display:inline}
.lv-upload.v-fin .v-btnp{background:#fff;color:var(--a-ink);box-shadow:inset 0 0 0 1px var(--a-line)}
.lv-upload .v-fchip>span:nth-child(2){white-space:nowrap}
.lv-tieout .v-find{display:flex;gap:8px;align-items:center;padding:10px 14px;background:#F8F3F5;color:#6E3348;font:500 12px/1.35 'IBM Plex Sans',sans-serif;border-top:1px solid #E9DAE0}
.lv-tieout .v-find .v-ic{width:15px;height:15px;flex:none}
.lv-tieout .v-find .v-ic svg{display:block;width:15px;height:15px}
.lv-tieout .v-cardpv .v-page{margin:10px 12px;padding:14px 16px 10px}
.lv-report .v-fb{margin:7px 0 0;font-size:12.5px;line-height:1.45;color:var(--a-ink2)}
.lv-relations .v-veil{background:rgba(236,240,245,.42)}
.lv-workspace .v-wside{position:absolute;left:0;top:44px;bottom:0;width:230px;border-right:1px solid var(--a-line);background:var(--a-soft);padding:14px 10px}
.lv-workspace .v-wi{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:6px;font-size:12.5px;font-weight:500;color:var(--a-ink2);white-space:nowrap}
.lv-workspace .v-wi .v-cnt{margin-left:auto}
.lv-workspace .v-wi.v-sel{background:#fff;color:var(--a-ink);box-shadow:0 0 0 1px var(--a-line)}
.lv-workspace .v-wmain{position:absolute;left:230px;right:300px;top:44px;bottom:0;padding:20px 24px}
.lv-workspace .v-wh{display:flex;align-items:baseline;gap:14px;margin-bottom:12px}
.lv-workspace h5{font:600 18px/1.2 'IBM Plex Sans',sans-serif;margin:0}
.lv-workspace .v-meta{font-size:12px;color:var(--a-ink3)}
.lv-workspace .v-fil{display:flex;gap:6px;margin-bottom:14px}
.lv-workspace .v-fil span{font:500 11.5px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink2);border:1px solid var(--a-line);border-radius:14px;padding:6px 10px}
.lv-workspace .v-fil .v-on2{background:var(--a-ink);color:#fff;border-color:var(--a-ink)}
.lv-workspace .v-fd{border:1px solid var(--a-line);border-radius:9px;padding:12px 14px;margin-bottom:9px;background:#fff;position:relative}
.lv-workspace .v-fd .v-top{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;white-space:nowrap}
.lv-workspace .v-cc{margin-left:auto;font:500 11px/1 'IBM Plex Sans',sans-serif;color:#333C5C;background:#EDEFF4;border-radius:5px;padding:5px 7px}
.lv-workspace .v-fb{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--a-ink2)}
.lv-workspace .v-sev{font:600 9.5px/1 'IBM Plex Sans',sans-serif;letter-spacing:.04em;border-radius:4px;padding:4px 6px;flex:none}
.lv-workspace .v-sev.v-c{color:#6E3348;background:#F4ECEF}
.lv-workspace .v-sev.v-h{color:#6E5A2E;background:#F3EEE2}
.lv-workspace.v-on .v-wmain .v-veil{opacity:1}
.lv-workspace .v-fd.v-focus{z-index:6}
.lv-workspace.v-on .v-fd.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26);border-color:transparent}
.lv-workspace .v-rail{position:absolute;right:0;top:44px;bottom:0;width:300px;border-left:1px solid var(--a-line);background:#fff;padding:16px 14px}
.lv-workspace .v-src{display:flex;gap:10px;align-items:flex-start;padding:11px 10px;border:1px solid var(--a-line);border-radius:8px;margin-bottom:8px}
.lv-workspace .v-src b{display:block;font:600 12px/1.3 'IBM Plex Sans',sans-serif}
.lv-workspace .v-src small{display:block;font-size:11px;color:var(--a-ink3);margin-top:3px}
.lv-workspace .v-src svg{flex:none;margin-top:1px}
.lv-workspace .v-val{margin-left:auto;font:600 11.5px/1.3 'IBM Plex Sans',sans-serif;color:#6E3348;white-space:nowrap;font-variant-numeric:tabular-nums}
.lv-workspace .v-lab{font:600 10px/1 'IBM Plex Sans',sans-serif;letter-spacing:.06em;color:var(--a-ink3);margin:6px 10px 12px}
.lv-workspace .v-rail .v-lab{margin:4px 2px 12px}
.lv .v-fg{padding:16px 18px;height:100%}
.lv .v-fgh{display:flex;align-items:center;font:600 13px/1 'IBM Plex Sans',sans-serif;margin:0 0 14px}
.lv .v-fgs{margin-left:auto;font:500 11.5px/1 'IBM Plex Sans',sans-serif;color:#333C5C;background:#EDEFF4;border-radius:5px;padding:5px 7px}
.lv-fconnect .v-dn{font:600 30px/1 'IBM Plex Sans',sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.lv-fconnect .v-big .v-ok{margin-left:auto;align-self:center}
.lv .v-tg,.lv .v-tr2{display:flex;align-items:center;gap:10px;height:30px;font-size:12.5px;font-weight:500;color:var(--a-ink2)}
.lv .v-tg i,.lv .v-tr2 i{margin-left:auto;width:28px;height:16px;border-radius:9px;background:#D5D9E0;position:relative;transition:background .25s;flex:none}
.lv .v-tg i::after,.lv .v-tr2 i::after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .25s}
.lv .v-tgon{color:var(--a-ink)}
.lv .v-tgon i{background:#333C5C}
.lv .v-tgon i::after{transform:translateX(12px)}
.lv-fready .v-rd .v-btno{margin-left:auto;padding:6px 9px;font-size:11px}
.lv-start .v-dr .v-ok{margin-left:auto}
.lv-start.v-fin .v-tgon .v-res,.lv-start.v-fin .v-tgon .v-okw{opacity:1}
.lv-start .v-row2{display:flex;align-items:center;gap:14px;margin-top:16px}
.lv-start .v-b2{display:none}
.lv-start.v-fin .v-b1{display:none}
.lv-start.v-fin .v-b2{display:inline}
.lv-start.v-fin .v-btnp{background:#fff;color:var(--a-ink);box-shadow:inset 0 0 0 1px var(--a-line)}
.lv-start .v-st{font-size:12px;color:var(--a-ink2);opacity:0;transition:opacity .4s}
.lv-start.v-fin .v-st{opacity:1}
.lv-flow .box{font-family:'IBM Plex Sans',system-ui,sans-serif}
@keyframes vflow{to{stroke-dashoffset:-16}}
.lv-flow .v-pill .v-ok{opacity:0;transform:scale(.5);transition:opacity .25s,transform .3s cubic-bezier(.34,1.56,.64,1)}
.lv-flow .v-pill.v-pon .v-ok{opacity:1;transform:none}
.lv-schedule .v-lp{position:absolute;left:0;top:44px;bottom:0;width:54%;background:#F1F3F6;padding:14px 0 0}
.lv-schedule .v-lp .v-page{margin:0 16px;height:100%;padding:22px 24px 0}
.lv-schedule .v-sub{font:11px/1.5 'Times New Roman',serif;margin:6px 0 7px}
.lv-schedule .v-en{display:grid;grid-template-columns:18px 1fr;font:11px/1.5 'Times New Roman',serif;margin:0 0 7px;color:#23262D;position:relative}
.lv-schedule .v-ct{color:#2E5A88}
.lv-schedule .v-en.v-focus{background:#fff;z-index:6;padding:6px 8px;margin:0 -8px 7px;font-size:12px;border-radius:4px}
.lv-schedule.v-on .v-en.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26)}
.lv-schedule.v-on .v-lp .v-veil{opacity:1}
.lv-schedule .v-rp{position:absolute;right:0;top:44px;bottom:0;width:46%;background:#F1F3F6;border-left:1px solid var(--a-line);display:flex;flex-direction:column}
.lv-schedule .v-rp .v-page{margin:14px 16px 0;flex:1}
.lv .box{font-family:'IBM Plex Sans',system-ui,sans-serif;letter-spacing:0}
.lv .v-appw{border-radius:6px}
.lv .v-btnp{background:#16181D;border-radius:3px}
.lv .v-btno{border-radius:3px;border-color:#D9DDE3}
.lv .v-logo{background:#16181D;border-radius:3px;font-family:'Libre Baskerville',Georgia,serif;font-weight:400;font-size:12px}
.lv .v-chip{color:#474C58;background:#EEF0F4;letter-spacing:.03em;font-weight:500}
.lv .v-cnt{background:#F1F3F6;color:#5A6070;border-radius:3px}
.lv .v-crumb b{font-weight:500}
.lv .v-tb{height:46px;border-bottom-color:#E6E9EE}
.lv .v-ok{background:#333C5C}
.lv .v-seg{border-radius:4px}
.lv .v-seg span{border-radius:3px}
.lv-report .v-sev,.lv-workspace .v-sev{border-radius:2px;font-weight:500;letter-spacing:.06em}
.lv-report .v-fd,.lv-workspace .v-fd,.lv-upload .v-card,.lv-workspace .v-src,.lv-upload .v-scheds{border-radius:5px}
.lv-report .v-cites span,.lv-workspace .v-cc,.lv .v-fgs{border-radius:3px;background:#EDEFF4;color:#333C5C}
.lv-matrix th,.lv-tieout th{font-weight:500;color:#6B7080;background:#F7F8FA}
.lv-tieout .v-find{border-top-color:#E9DAE0}
.lv-workspace .v-fil .v-on2{background:#16181D;border-color:#16181D}
.lv-workspace .v-fil span{border-radius:3px}
.lv .v-tag{border-radius:0}
.lv-editor .v-erail{position:absolute;left:0;top:46px;bottom:0;width:64px;border-right:1px solid var(--a-line);background:var(--a-soft);padding:12px 0;display:flex;flex-direction:column;align-items:center;gap:3px}
.lv-editor .v-erail span{font:500 11px/1 'IBM Plex Sans',sans-serif;color:var(--a-ink3);padding:5px 8px;border-radius:3px;font-variant-numeric:tabular-nums}
.lv-editor .v-erail span.v-sel{background:#16181D;color:#fff}
.lv-editor .v-ec{position:absolute;left:64px;top:46px;bottom:0;width:560px;background:#F1F3F6;padding:16px 18px 0}
.lv-editor .v-ec .v-page{margin:0;height:100%;padding:26px 28px 0}
.lv-editor .v-et{width:100%;border-collapse:collapse;font:10.5px/1.4 'Times New Roman',serif;margin:6px 0 12px}
.lv-editor .v-et th{font:700 9.5px/1.2 'Times New Roman',serif;font-variant:small-caps;text-align:left;border-top:1px solid #23262D;border-bottom:.5px solid #23262D;padding:5px 4px}
.lv-editor .v-et td{padding:6px 4px;border-bottom:.5px solid #D5D9DF;vertical-align:top}
.lv-editor .v-et .r{text-align:right}
.lv-editor .v-ct{color:#2F4A78;font-size:9.5px}
.lv-editor .v-er{position:relative;background:#fff}
.lv-editor .v-er.v-focus{z-index:6}
.lv-editor.v-on .v-er.v-focus td{box-shadow:inset 0 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-editor.v-on .v-er.v-focus td:first-child{box-shadow:inset 1.5px 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-editor.v-on .v-er.v-focus td:last-child{box-shadow:inset -1.5px 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-editor .v-ntd{font:10.5px/1.5 'Times New Roman',serif;color:#23262D;margin:4px 0 0}
.lv-editor.v-on .v-ec .v-veil{opacity:1}
.lv-editor .v-es{position:absolute;left:624px;right:0;top:46px;bottom:0;background:#F1F3F6;border-left:1px solid var(--a-line);display:flex;flex-direction:column}
.lv-editor .v-es .v-page{margin:14px 16px 0;flex:1;padding:26px 26px 0}
.lv-editor .v-dt{width:100%;border-collapse:collapse;font:10.5px/1.4 'IBM Plex Sans',Arial,sans-serif;color:#23262D;margin-top:8px}
.lv-editor .v-dt td{border:.5px solid #C9CED6;padding:7px 8px;vertical-align:top}
.lv-editor .v-dt td:first-child{width:52px;color:#6B7080}
.lv-editor .v-dt td:nth-child(2){width:120px;font-weight:600}
.lv-editor .v-dt tr.v-hit td{background:#F6F7FA}
.lv-repsource .v-rl,.lv-repsource .v-rr{position:absolute;top:46px;bottom:46px;width:50%;background:#F1F3F6;display:flex;flex-direction:column}
.lv-repsource .v-rl{left:0}
.lv-repsource .v-rr{right:0;border-left:1px solid var(--a-line)}
.lv-repsource .v-page{margin:14px 16px 0;flex:1;padding:22px 24px 0}
.lv .v-chip2{color:#333C5C;background:#EDEFF4}
.lv-repsource .v-link{position:absolute;left:0;right:0;bottom:0;height:46px;display:flex;align-items:center;gap:9px;padding:0 18px;border-top:1px solid var(--a-line);background:#fff;font:500 12.5px/1 'IBM Plex Sans',sans-serif;color:#23262D;opacity:0;transition:opacity .4s}
.lv-repsource.v-on .v-link{opacity:1}
.lv-repsource .v-link .v-ic{width:15px;height:15px}
.lv-repsource .v-link .v-ic svg{display:block;width:15px;height:15px}
.lv-repsource .v-page mark{transition:background .6s ease}
.lv-capsummary .v-cl2{position:absolute;left:0;top:46px;bottom:0;width:48%;border-right:1px solid var(--a-line);background:var(--a-soft);padding:20px 22px}
.lv-capsummary .v-cr2{position:absolute;right:0;top:46px;bottom:0;width:52%;padding:20px 24px}
.lv-capsummary .v-lab{font:500 10px/1 'IBM Plex Sans',sans-serif;letter-spacing:.07em;color:var(--a-ink3);margin:0 0 12px}
.lv-capsummary .v-bigc{display:flex;flex-direction:column;gap:5px;margin:0 0 16px}
.lv-capsummary .v-bigc .v-dn{font:500 28px/1 'IBM Plex Sans',sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.lv-capsummary .v-bigc small{font-size:11.5px;color:var(--a-ink3)}
.lv-capsummary .v-cat{display:flex;align-items:center;gap:10px;height:33px;border-bottom:1px solid var(--a-line2);font-size:12.5px;color:#23262D}
.lv-capsummary .v-cat .v-cnt{margin-left:auto}
.lv-capsummary .v-tot{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:14px 16px;border:1px solid var(--a-line);border-radius:5px}
.lv-capsummary .v-tot small{display:block;font-size:11px;color:var(--a-ink3)}
.lv-capsummary .v-tot b{font:500 20px/1.3 'IBM Plex Sans',sans-serif;font-variant-numeric:tabular-nums}
.lv-capsummary .v-rec{grid-column:1/-1;display:flex;align-items:center;gap:8px;font-size:12px;color:#333C5C;border-top:1px solid var(--a-line2);padding-top:10px}
.lv-capsummary .v-fi2{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--a-line2)}
.lv-capsummary .v-fi2 b{display:block;font:500 12.5px/1.3 'IBM Plex Sans',sans-serif}
.lv-capsummary .v-fi2 small{font-size:11.5px;color:var(--a-ink2)}
.lv-capsummary .v-fi2 .v-ic{width:15px;height:15px;flex:none;margin-top:1px}
.lv-capsummary .v-fi2 .v-ic svg{display:block;width:15px;height:15px}
.lv .v-page mark{background:transparent}
.lv.v-on .v-page mark,.lv-editor .v-dt mark{background:#DDE3EE}
.lv-editor.v-on .v-dt mark{background:#DDE3EE}
.lv .v-ficon{border:0;border-radius:0;width:12px;height:15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='15' viewBox='0 0 12 15'%3E%3Cpath d='M1 .75h6.2L11.25 4.8v9.45H1z' fill='none' stroke='%239AA1AD' stroke-width='1.1'/%3E%3Cpath d='M7 .75V5h4.25' fill='none' stroke='%239AA1AD' stroke-width='1.1'/%3E%3C/svg%3E") no-repeat center/contain}
.lv-relations .v-nd.v-miss .v-ficon{border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='15' viewBox='0 0 12 15'%3E%3Cpath d='M1 .75h6.2L11.25 4.8v9.45H1z' fill='none' stroke='%238E5266' stroke-width='1.1' stroke-dasharray='2 1.6'/%3E%3C/svg%3E")}
.lv-matrix td:first-child i{border:0;width:12px;height:15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='15' viewBox='0 0 12 15'%3E%3Cpath d='M1 .75h6.2L11.25 4.8v9.45H1z' fill='none' stroke='%239AA1AD' stroke-width='1.1'/%3E%3Cpath d='M7 .75V5h4.25' fill='none' stroke='%239AA1AD' stroke-width='1.1'/%3E%3C/svg%3E") no-repeat center/contain;vertical-align:-2px}
.lv .v-appw,.lv .v-btnp,.lv .v-btno,.lv .v-seg,.lv .v-seg span,.lv .v-chip,.lv .v-cnt,.lv .v-fd,.lv .v-card,.lv .v-nd,.lv .v-src,.lv .v-in,.lv .v-tl,.lv .v-scheds,.lv .v-cites span,.lv .v-cc,.lv .v-sev,.lv .v-it,.lv .v-wi,.lv .v-tot,.lv .v-cardpv,.lv .v-fchip,.lv .v-fil span,.lv .v-erail span,.lv .v-rchip,.lv .v-logo,.lv .v-ic2,.lv .v-r.v-focus,.lv .v-en.v-focus,.lv .v-mid,.lv .v-pill,.lv .v-sc,.lv .v-fgs{border-radius:2px!important}
.lv-matrix td.v-target::after{border-radius:0;inset:4px 6px}
.lv-organize .v-was{font-size:11px;color:#8E94A0;margin-left:12px;white-space:nowrap}
.lv-organize .v-r .v-was{opacity:0;transition:opacity .4s}
.lv-organize.v-on .v-r .v-was{opacity:1}
.lv-organize.v-on .v-r.v-focus{left:10px;right:10px}
.lv-capsummary .v-bigc .v-dn{font-size:20px;font-weight:500}
.lv-capsummary .v-fi2.v-focus{position:relative;z-index:6;background:#fff}
.lv-capsummary.v-on .v-fi2.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26);border-color:transparent;padding-left:10px;padding-right:10px;margin:0 -10px}
.lv-capsummary .v-tot{position:relative;z-index:6;background:#fff}
.lv-capsummary .v-cr2 .v-veil{inset:0}
.lv-capsummary.v-on .v-cr2 .v-veil{opacity:1}
.lv-capsummary .v-cl2{filter:none;transition:filter .5s,opacity .5s}
.lv-capsummary.v-on .v-cl2{filter:blur(1px) saturate(.6);opacity:.6}
.lv-editor .v-dt td{transition:filter .5s,opacity .5s}
.lv-editor.v-on .v-dt tr:not(.v-hit) td{filter:blur(.8px);opacity:.55}
.lv-upload .v-st{display:flex;align-items:center;gap:8px;color:#23262D;font-weight:500}
.lv-upload .v-sc{color:#23262D}
.lv-missing .v-mgrid{position:relative}
.lv-missing table{width:100%;border-collapse:collapse;table-layout:fixed}
.lv-missing th{font:500 11.5px/1.2 'IBM Plex Sans',sans-serif;color:#6B7080;text-align:left;padding:12px 16px;background:#F7F8FA;border-bottom:1px solid var(--a-line)}
.lv-missing td{height:46px;padding:0 16px;border-bottom:1px solid var(--a-line2);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#23262D;position:relative;background:#fff}
.lv-missing td:first-child{font-weight:500}
.lv-missing td:first-child .v-ficon{margin:0 10px -3px 0}
.lv-missing td:nth-child(2){color:#6B7080;font-size:12px}
.lv-missing .v-okt{display:inline-flex;align-items:center;gap:7px;color:#6B7080;font-size:12px}
.lv-missing .v-okt .v-ok{width:13px;height:13px}
.lv-missing .v-okt .v-ok::after{left:4.2px;top:2.4px;width:3px;height:5.5px}
.lv-missing .v-rchip{display:inline-block;font:500 9.5px/1 'IBM Plex Sans',sans-serif;letter-spacing:.06em;color:#6E3348;background:#F4ECEF;border-radius:2px;padding:5px 6px}
.lv-missing tr.v-focus td{z-index:6}
.lv-missing.v-on tr.v-focus td{box-shadow:inset 0 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-missing.v-on tr.v-focus td:first-child{box-shadow:inset 1.5px 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-missing.v-on tr.v-focus td:last-child{box-shadow:inset -1.5px 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-missing.v-on .v-mgrid .v-veil{opacity:1}
.lv-missing tr.v-focus td{position:relative}
.lv{margin-left:auto;margin-right:auto}
.lv .v-dimp,.lv .v-page .v-hd,.lv .v-page .v-sub,.lv-editor .v-dt td{transition:filter .5s,opacity .5s}
.lv.v-on .v-dimp{filter:blur(1.1px);opacity:.5}
.lv.v-on .v-rr .v-page .v-hd,.lv.v-on .v-rl .v-page .v-hd,.lv.v-on .v-es .v-page .v-hd,.lv.v-on .v-rp .v-page .v-hd,.lv.v-on .v-pv .v-page .v-hd,.lv.v-on .v-cardpv .v-page .v-hd{filter:blur(1.1px);opacity:.5}
.lv-editor.v-on .v-dt tr:not(.v-hit) td{filter:blur(1.1px);opacity:.5}
.lv-workspace .v-wside{transition:filter .5s,opacity .5s}
.lv-workspace.v-on .v-wside{filter:blur(1.1px) saturate(.6);opacity:.55}
.lv-matrix tr.v-frow td{z-index:4;background:#fff}
.lv-matrix.v-on tr.v-frow td{box-shadow:inset 0 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-matrix.v-on tr.v-frow td:first-child{box-shadow:inset 1.5px 1.5px 0 #333C5C,inset 0 -1.5px 0 #333C5C}
.lv-matrix td.v-target::after{display:none}
.lv-matrix tr.v-frow td{position:relative}
.lv-upload .v-body{position:absolute}
.lv-upload .v-sc.v-focus{position:relative;z-index:6;background:#fff;margin:0 -8px;padding:0 8px}
.lv-upload.v-on .v-sc.v-focus{box-shadow:0 0 0 1.5px #333C5C,0 14px 34px -12px rgba(30,36,60,.26);border-bottom-color:transparent}
.lv-upload.v-on .v-body .v-veil{opacity:1}
.lv-upload .v-row2,.lv-upload .v-card{position:relative;z-index:6}
.lv-repsource .v-link{z-index:6}
.lv-repsource.v-on .v-link{box-shadow:inset 0 0 0 1.5px #333C5C}
.lv-capsummary .v-tot b{font-size:14px;font-weight:600}
.lv-capsummary .v-bigc .v-dn{font-size:14px;font-weight:600}
.lv-capsummary .v-bigc{flex-direction:row;align-items:baseline;gap:6px}
.page-wrapper.is-nov{--serif:'Times New Roman',Times,'Liberation Serif',serif}
.cc{position:relative;isolation:isolate;border-radius:18px;overflow:hidden;
  background:linear-gradient(180deg,#FFFFFF 0%,#F7F8FA 100%);border:1px solid rgba(22,24,29,.08);
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(16,24,40,.04),0 12px 32px -22px rgba(16,24,40,.18);
  transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s}
.cc::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .5s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,30%),rgba(120,140,190,.08),transparent 45%)}
.cc:hover{transform:translateY(-2px);border-color:rgba(22,24,29,.13);
  box-shadow:inset 0 1px 0 #fff,0 1px 3px rgba(16,24,40,.05),0 18px 40px -24px rgba(16,24,40,.24)}
.cc:hover::before{opacity:1}
.cc .art{height:290px;position:relative}
.cc .art svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.cc .rings circle{fill:none;stroke:rgba(22,24,29,.06);stroke-width:1;transition:stroke .6s}
.cc:hover .rings circle{stroke:rgba(22,24,29,.1)}
.cc .ic{fill:none;stroke:#23262D;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.cc .ic .faint{stroke:rgba(35,38,45,.5)}
.cc .ic .hatch{stroke:rgba(35,38,45,.14);stroke-width:1}
.cc .ic .dot{fill:#23262D;stroke:none}
.cc .spin{transform-box:fill-box;transform-origin:center;animation:ccspin 60s linear infinite}
.cc .spin.rev{animation-duration:90s;animation-direction:reverse}
.cc:hover .spin{animation-duration:18s}
.cc:hover .spin.rev{animation-duration:28s}
@keyframes ccspin{to{transform:rotate(360deg)}}
.cc .b{padding:0 44px 44px}
.cc h3{font:400 22px/1.3 var(--sans)!important;letter-spacing:-.005em;color:var(--ink);margin:0 0 14px}
.cc p{margin:0;font-size:16px;line-height:1.75;color:#5A606C}
@media (prefers-reduced-motion:reduce){.cc .spin{animation:none}.cc,.cc:hover{transform:none}}
@media (max-width:1000px){.cc .art{height:240px}.cc .b{padding:0 28px 32px}}
.gs{position:relative;z-index:2;max-width:1120px;margin:84px auto 0;border-radius:18px 18px 0 0;padding:12px 12px 0;
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.12));
  -webkit-backdrop-filter:blur(10px) saturate(1.4);backdrop-filter:blur(10px) saturate(1.4);
  border:1px solid rgba(255,255,255,.75);border-bottom:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 2px rgba(16,24,40,.04),0 30px 70px -40px rgba(40,50,90,.28);text-align:left}
.gs::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.45) 0%,rgba(255,255,255,0) 28%,rgba(255,255,255,0) 70%,rgba(255,255,255,.18) 100%)}
.gs-win{border-radius:10px 10px 0 0;overflow:hidden;background:rgba(255,255,255,.44);border:1px solid rgba(255,255,255,.8);border-bottom:0;
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font:13px/1.4 var(--sans);color:#16181D}
.gs-tb{height:46px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid rgba(22,24,29,.07)}
.gs-tb .lg{width:22px;height:22px;border-radius:5px;background:#16181D;color:#fff;font:600 12px/22px var(--sans);text-align:center}
.gs-tb .cr{color:#8E94A0}
.gs-tb .cr b{color:#16181D;font-weight:600}
.gs-tb .sp{flex:1}
.gs-tb .bo{font:500 12px/1 var(--sans);border:1px solid rgba(22,24,29,.12);border-radius:6px;padding:7px 10px;background:rgba(255,255,255,.6)}
.gs-tb .bp{font:500 12px/1 var(--sans);color:#fff;background:#333C5C;border-radius:6px;padding:8px 12px}
.gs-bd{display:grid;grid-template-columns:200px minmax(0,1fr) 250px;min-height:420px}
.gs-nav{padding:18px 12px;border-right:1px solid rgba(22,24,29,.06);background:rgba(255,255,255,.25)}
.gs-nav small{display:block;font:600 10.5px/1 var(--sans);letter-spacing:.06em;color:#8E94A0;margin:0 8px 12px}
.gs-nav div{display:flex;justify-content:space-between;padding:8px;border-radius:6px;color:#474C58;font-size:12.5px}
.gs-nav div.on{background:rgba(51,60,92,.08);color:#16181D;font-weight:500}
.gs-nav div span{color:#8E94A0}
.gs-main{padding:22px 24px}
.gs-main h4{font:600 17px/1.2 var(--sans);margin:0}
.gs-main .m{color:#8E94A0;font-size:12px;margin:5px 0 14px}
.gs-f{display:flex;gap:6px;margin-bottom:14px}
.gs-f span{font-size:11.5px;padding:5px 9px;border-radius:5px;border:1px solid rgba(22,24,29,.1);color:#474C58;background:rgba(255,255,255,.5)}
.gs-f span.on{background:#16181D;color:#fff;border-color:#16181D}
.gs-card{border:1px solid rgba(22,24,29,.08);border-radius:8px;padding:12px 14px;margin-bottom:10px;background:rgba(255,255,255,.55);
  opacity:0;transform:translateY(8px);animation:gsin .7s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(.5s + var(--i)*.35s)}
.gs-card.hi{border-color:rgba(51,60,92,.45);box-shadow:0 0 0 3px rgba(51,60,92,.07),0 10px 24px -16px rgba(40,50,90,.35);background:rgba(255,255,255,.85)}
.gs-card .h{display:flex;align-items:center;gap:10px}
.gs-card .t{font-weight:600;font-size:13px;flex:1}
.gs-card .s{font-size:11.5px;color:#8E94A0}
.gs-card p{margin:5px 0 0;color:#5A606C;font-size:12.5px}
.gs-pill{font:600 9.5px/1 var(--sans);letter-spacing:.06em;padding:4px 6px;border-radius:4px;background:rgba(122,58,80,.1);color:#7A3A50}
.gs-pill.h{background:rgba(168,138,74,.14);color:#86692F}
.gs-src{padding:18px 16px;border-left:1px solid rgba(22,24,29,.06);background:rgba(255,255,255,.25)}
.gs-src small{display:block;font:600 10.5px/1 var(--sans);letter-spacing:.06em;color:#8E94A0;margin:0 0 12px}
.gs-src div{padding:10px 0;border-bottom:1px solid rgba(22,24,29,.06);display:grid;grid-template-columns:1fr auto;gap:2px 10px;
  opacity:0;animation:gsin .6s ease forwards;animation-delay:calc(1.6s + var(--i)*.3s)}
.gs-src b{font-weight:600;font-size:12px}
.gs-src i{font-style:normal;font-size:11px;color:#8E94A0;grid-column:1}
.gs-src em{font-style:normal;font-variant-numeric:tabular-nums;font-weight:600;font-size:12px;grid-row:1;grid-column:2}
@keyframes gsin{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.gs-card,.gs-src div{animation:none;opacity:1;transform:none}}
@media (max-width:1000px){.gs-bd{grid-template-columns:minmax(0,1fr) 230px}.gs-nav{display:none}}
@media (max-width:720px){.gs{margin-top:48px;padding:8px 8px 0}.gs-bd{grid-template-columns:1fr;min-height:0}.gs-src{display:none}.gs-tb .bo{display:none}}
.cc{border-radius:0}
.win,.spot.doc,.spot.live,.lv .v-appw,.doc.page{border-radius:10px}
.win,.spot.doc,.doc.page{overflow:hidden}
.win img,.win .base{border-radius:inherit}
.spot.doc .win{border-radius:6px}
.win .fz{border-radius:6px;overflow:hidden}
.win .tag,.lv .v-tag{border-radius:6px}
.lv .v-appw{border-radius:16px!important}
.win,.spot.doc,.doc.page{border-radius:10px!important}
.spot.doc .win{border-radius:6px!important}
.s-grid4 .g4 .lv .v-appw{box-shadow:0 0 0 1px rgba(15,23,42,.08),0 18px 44px -24px rgba(40,30,50,.28)}
.page-wrapper.is-nov{--serif:'Tiempos Fine','Times New Roman',Times,serif;--paper:#F4F4F2;--rule:#16181D;--hair:#C8C9C6;--gut:clamp(20px,4.4vw,72px);--sp:clamp(96px,12vw,200px)}
.cc{background:none!important;border:0!important;border-right:1px solid var(--hair)!important;box-shadow:none!important;border-radius:0!important}
.cc:last-child{border-right:0!important}
.cc .art{background:none!important}
.cc .b h3{font-size:26px!important}
@media (max-width:720px){.page-wrapper.is-nov{--gut:20px;--sp:88px}.cc{border-right:0!important;border-bottom:1px solid var(--hair)!important}}
.page-wrapper.is-nov{--night:#0D0F14}
.s-rib .gs-win{background:rgba(255,255,255,.9)}
.s-rib .gs-win,.s-rib .gs-card,.s-rib .gs-tb .lg,.s-rib .gs-tb .bo,.s-rib .gs-tb .bp,.s-rib .gs-nav div,.s-rib .gs-f span,.s-rib .gs-pill{border-radius:0!important}
.s-rib .gs-win{border:1px solid rgba(255,255,255,.8)!important}
@keyframes navdrop{from{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%,0)}}
.nav-spacer.on{display:block}
.s-rib .gs-win{border-bottom:0!important}
/* ---------- product views modelled on the Marveri app (v19) ----------
   Shell: icon rail, title + toolbar, white panels on a grey canvas, viewers with a page toolbar.
   Palette: ink and greys; slate (#333C5C) only for selection, citations and progress. Redlines keep red and blue. */
.lv{position:relative;width:100%;margin-left:auto;margin-right:auto;overflow:hidden;border-radius:0;
  box-shadow:0 0 0 1px rgba(15,23,42,.10),0 2px 4px rgba(15,25,40,.05),0 24px 56px -20px rgba(15,25,40,.28);background:#fff}
.lv .box{position:absolute;left:0;top:0;transform-origin:0 0}
.a-app{--ink:#16181D;--ink2:#474C58;--ink3:#6B7080;--ink4:#9097A3;--line:#E3E6EB;--line2:#EEF0F3;--canvas:#F4F5F7;--view:#E8EBEF;
  --acc:#333C5C;--sel:#EEF1F6;--hl:#DFE5EF;
  display:flex;width:100%;height:100%;background:var(--canvas);font:13px/1.45 'Times New Roman',Tinos,Times,serif;color:var(--ink);text-align:left;letter-spacing:0}
.a-app *{box-sizing:border-box}
.a-sp{flex:1}
.a-fi{width:12px;height:14px;fill:none;stroke:#6B7080;stroke-width:1.3;flex:none}
.a-ck{width:15px;height:15px;flex:none}.a-ck circle{fill:var(--acc)}.a-ck path{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* rail and head */
.a-rail{width:52px;flex:none;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 0 12px}
.a-m{font:600 17px/1 'Times New Roman',Tinos,Times,serif;margin-bottom:10px}
.a-ri{width:32px;height:32px;display:grid;place-items:center;border-radius:0;color:var(--ink3)}
.a-ri svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.a-ri.a-act{background:var(--ink);color:#fff}
.a-av{margin-top:auto;width:28px;height:28px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font:500 10.5px/1 'Times New Roman',Tinos,Times,serif;color:var(--ink2)}
.a-main{flex:1;min-width:0;display:flex;flex-direction:column}
.a-head{height:56px;flex:none;display:flex;align-items:center;gap:8px;padding:0 14px 0 18px;background:#fff;border-bottom:1px solid var(--line)}
.a-tt{display:flex;flex-direction:column;margin-right:12px;white-space:nowrap}
.a-crumb{font-size:11px;line-height:1.2;color:var(--ink3)}
.a-head h1{font:400 17px/1.3 'Libre Baskerville',Georgia,serif;margin:1px 0 0;letter-spacing:-.01em}
.a-btn{display:inline-flex;align-items:center;font:500 12px/1 'Times New Roman',Tinos,Times,serif;padding:8px 11px;border:1px solid #D3D8DF;border-radius:0;background:#fff;color:var(--ink);white-space:nowrap;transition:transform .12s,background .2s,opacity .2s}
.a-btn.a-pri{background:var(--ink);border-color:var(--ink);color:#fff}
.a-btn.a-press{transform:scale(.97);opacity:.85}
.a-body{flex:1;min-height:0;padding:12px;display:flex;flex-direction:column;gap:10px;position:relative}
.a-pan{background:#fff;border:1px solid var(--line);border-radius:0;overflow:hidden;position:relative}
.a-navh{font:500 11px/1 'Times New Roman',Tinos,Times,serif;color:var(--ink3);padding:12px 12px 8px}
.a-cn{margin-left:auto;color:var(--ink4);font-size:11.5px;font-variant-numeric:tabular-nums}
.a-hov{background:#F1F3F6!important}

/* viewer */
.a-viewer{display:flex;flex-direction:column;min-height:0}
.a-ph{height:36px;flex:none;display:flex;align-items:center;gap:10px;padding:0 12px;border-bottom:1px solid var(--line2);white-space:nowrap;min-width:0}
.a-tag{font:500 10.5px/1 'Times New Roman',Tinos,Times,serif;color:var(--ink2);background:#F1F3F6;border-radius:0;padding:4px 7px;flex:none}
.a-fn{font-size:12px;overflow:hidden;text-overflow:ellipsis;min-width:0}
.a-x{margin-left:auto;color:var(--ink4);font-size:15px;line-height:1;padding-left:6px}
.a-vt{height:32px;flex:none;display:flex;align-items:center;gap:6px;padding:0 12px;border-bottom:1px solid var(--line2);font-size:11.5px;color:var(--ink3)}
.a-pn{font-size:15px;line-height:1;color:var(--ink4);padding:0 2px}
.a-pgb{border:1px solid var(--line);border-radius:0;padding:2px 6px;color:var(--ink);min-width:28px;text-align:center;font-variant-numeric:tabular-nums}
.a-pw{border:1px solid var(--line);border-radius:0;padding:3px 8px}
.a-view{flex:1;min-height:0;background:var(--view);position:relative;overflow:hidden}
.a-ld{position:absolute;left:0;top:0;height:2px;width:0;background:var(--acc);z-index:3;opacity:0}
.a-loading .a-ld{width:100%;opacity:1;transition:width .55s ease}
.a-pg{padding:14px 16px 40px;transform:translateY(var(--y));transition:transform .75s cubic-bezier(.4,0,.2,1),opacity .3s ease}
.a-top .a-pg{transform:translateY(0)}
.a-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--ink3);font-size:12px;background:var(--view);opacity:0;pointer-events:none;transition:opacity .15s}
.a-blank .a-empty{opacity:1}.a-blank .a-pg{opacity:0}
.a-page{background:#fff;box-shadow:0 0 0 1px rgba(15,23,42,.06),0 1px 3px rgba(15,23,42,.06);padding:24px 28px;font:11.5px/1.55 'Times New Roman',Tinos,Times,serif;color:#23262D}
.a-page p{margin:0 0 9px}
.a-page u{text-underline-offset:2px}
.a-dh{text-align:center;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;line-height:1.5;margin:0 0 14px}
.a-dh span{display:block;text-transform:none;letter-spacing:0;font-weight:400;font-size:10.5px}
.a-sans{font-family:'Times New Roman',Tinos,Times,serif;font-size:10.5px}
.a-sans .a-dh{text-align:left}
.a-small{font-size:9px;line-height:1.5;color:var(--ink3)}
.a-page mark{background:var(--hl);color:inherit;transition:background .6s ease}
.a-nohl .a-page mark{background:transparent}
.a-ct{color:#2F4A78}
.a-cite{border-radius:0;transition:background .3s,box-shadow .3s}
.a-cite.a-on{background:var(--hl);box-shadow:0 0 0 1.5px var(--hl)}
.a-cite.a-hov{background:transparent!important;text-decoration:underline;text-underline-offset:2px}
.a-sub{margin:10px 0 7px!important}
.a-en{display:grid;grid-template-columns:18px 1fr;margin:0 0 8px!important}
.a-note{font-style:italic;background:#F4F5F7;padding:6px 8px}
.a-pbreak{height:16px;background:var(--view);margin:18px -28px 22px}
.a-dt{width:100%;border-collapse:collapse;font-size:10px;line-height:1.45;margin:4px 0 12px}
.a-dt th{font-weight:700;font-variant:small-caps;text-align:left;border-top:1px solid #23262D;border-bottom:1px solid #23262D;padding:5px 4px}
.a-dt td{padding:6px 4px;border-bottom:.5px solid #D5D9DF;vertical-align:top}
.a-dt .r{text-align:right}
.a-kv{width:100%;border-collapse:collapse;font-size:10px;margin-top:6px}
.a-kv td{border:.5px solid #C9CED6;padding:6px 8px;vertical-align:top}
.a-kv td:first-child{width:40%;font-weight:600}
.a-kv .a-hit td{background:var(--sel);transition:background .6s}
.a-nohl .a-kv .a-hit td{background:transparent}

/* layouts */
.a-split{display:grid;grid-template-columns:54fr 46fr;gap:10px;flex:1;min-height:0}
.a-split.a-even{grid-template-columns:1fr 1fr}
.a-ed{display:grid;grid-template-columns:62px 1fr 1fr;gap:10px;flex:1;min-height:0}
.a-nav{display:flex;flex-direction:column;padding-bottom:6px}
.a-nav .a-navh{padding:10px 0 6px;text-align:center}
.a-ni{font-size:11.5px;text-align:center;padding:2.5px 0;color:var(--ink2);transition:background .2s,color .2s}
.a-ni.a-sel{background:var(--sel);color:var(--ink);font-weight:600;box-shadow:inset 0 0 0 1px var(--acc)}
.a-issue{flex:none;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:0;padding:8px 10px 8px 14px;font-size:12px;color:var(--ink2);transition:opacity .35s,transform .35s}
.a-issue b{color:var(--ink);font-weight:600}
.a-idot{width:6px;height:6px;border-radius:50%;background:var(--acc);flex:none}
.a-hide{opacity:0!important;transform:translateY(8px)!important;pointer-events:none}

/* upload */
.a-form{flex:1;padding:14px;display:flex;flex-direction:column;gap:10px}
.a-drop{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:0;padding:11px 14px}
.a-dic{width:32px;height:32px;display:grid;place-items:center;background:#F4F5F7;border-radius:0;flex:none}
.a-dic .a-fi{width:15px;height:17px}
.a-drop b{display:block;font-weight:600;font-size:13px}.a-drop small{display:block;font-size:11.5px;color:var(--ink3)}
.a-file{margin-left:auto;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:0;padding:6px 10px;font-size:12px}
.a-go{display:flex;align-items:center;gap:14px;min-height:34px}
.a-b2,.a-prog,.a-done{display:none}
.a-prog{align-items:center;gap:12px;font-size:12px;color:var(--ink2)}
.a-bar{width:220px;height:4px;border-radius:0;background:#E6E9EE;overflow:hidden;display:block}
.a-bar i{display:block;height:100%;width:0;background:var(--acc)}
.a-run .a-bar i{width:100%;transition:width 2.6s linear}
.a-run .a-prog{display:flex}
.a-done{align-items:center;gap:8px;font-size:12.5px;font-weight:500}
.a-fin .a-b1{display:none}.a-fin .a-b2{display:inline}.a-fin .a-done{display:flex}
.a-fin .a-gobtn{background:#fff;color:var(--ink);border-color:#D3D8DF}
.a-scheds{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;border:1px solid var(--line);border-radius:0;padding:2px 12px;transition:opacity .35s}
.a-sc{display:flex;gap:10px;align-items:center;height:32px;border-bottom:1px solid var(--line2);font-size:12px;transition:background .25s,box-shadow .25s}
.a-sc:nth-last-child(-n+2){border-bottom:0}
.a-no{width:32px;color:var(--ink3);font-variant-numeric:tabular-nums}
.a-en2{margin-left:auto;color:var(--ink3);font-size:11.5px}
.a-sc.a-sel{background:var(--sel);margin:0 -8px;padding:0 8px;box-shadow:inset 0 0 0 1px var(--acc)}
.a-more{font-size:11.5px;color:var(--ink3);transition:opacity .35s}
.a-pre .a-scheds,.a-pre .a-more{opacity:0}
.a-pre .a-sc.a-sel{background:none;box-shadow:none}

/* diligence: sections, findings, sources */
.a-ws{display:grid;grid-template-columns:200px 1fr 300px;gap:10px;flex:1;min-height:0}
.a-secs{padding-bottom:6px}
.a-si{display:flex;align-items:center;gap:8px;padding:0 12px;height:32px;font-size:12.5px;color:var(--ink2);white-space:nowrap;transition:background .2s,box-shadow .2s}
.a-si>span:first-of-type{overflow:hidden;text-overflow:ellipsis}
.a-si.a-sel{background:var(--sel);color:var(--ink);font-weight:500}
.a-finds{display:flex;flex-direction:column}
.a-fh{display:flex;align-items:baseline;gap:12px;padding:12px 16px 8px;white-space:nowrap}
.a-fh b{font-size:14px;font-weight:600}.a-fh span{font-size:11.5px;color:var(--ink3)}
.a-fil{display:flex;gap:18px;padding:0 16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--ink3)}
.a-fil span{padding:8px 0;border-bottom:2px solid transparent;margin-bottom:-1px}
.a-fil .a-on{color:var(--ink);border-bottom-color:var(--ink)}
.a-fr{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;height:46px;padding:0 16px;border-bottom:1px solid var(--line2);font-size:12.5px;transition:background .2s,box-shadow .2s}
.a-fr .a-ft{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-fr.a-sel{background:var(--sel);box-shadow:inset 0 0 0 1px var(--acc)}
.a-sev{font:600 10.5px/1 'Times New Roman',Tinos,Times,serif;letter-spacing:.02em;color:var(--ink)}
.a-sev-h,.a-sev-m{color:var(--ink3)}
.a-srcs{display:flex;flex-direction:column}
.a-sl{padding:0 10px 10px;display:flex;flex-direction:column;gap:8px;transition:opacity .3s}
.a-src{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:0;padding:10px}
.a-src .a-fi{margin-top:2px}
.a-src b{display:block;font-size:12px;font-weight:600;line-height:1.3}.a-src small{display:block;font-size:11px;color:var(--ink3);margin-top:2px}
.a-val{margin-left:auto;font:600 12px/1.3 'Times New Roman',Tinos,Times,serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.a-srcs .a-empty{background:#fff;top:36px}
.a-nosel .a-fr.a-sel{background:none;box-shadow:none}
.a-nosel .a-srcs .a-empty{opacity:1}.a-nosel .a-sl{opacity:0}

/* report cards */
.a-rp{display:grid;grid-template-columns:190px 1fr;gap:10px;flex:1;min-height:0;position:relative}
.a-cards{padding-bottom:8px}
.a-card{margin:0 12px 8px;border:1px solid var(--line);border-radius:0;transition:box-shadow .25s}
.a-card.a-open{box-shadow:inset 0 0 0 1px var(--acc);border-color:var(--acc)}
.a-ctop{display:flex;align-items:center;gap:12px;padding:10px 12px;font-size:12.5px;white-space:nowrap}
.a-ctop b{font-weight:600;overflow:hidden;text-overflow:ellipsis}
.a-chev{margin-left:auto;width:7px;height:7px;border-right:1.5px solid var(--ink4);border-bottom:1.5px solid var(--ink4);transform:rotate(45deg);transition:transform .25s;flex:none}
.a-open .a-chev{transform:rotate(-135deg)}
.a-cb{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.a-cb>div{overflow:hidden;padding:0 12px}
.a-open .a-cb{grid-template-rows:1fr}
.a-cb p{margin:0 0 10px;font-size:12.5px;color:var(--ink2);line-height:1.5}
.a-cites{display:flex;gap:6px;padding-bottom:12px}
.a-cites span{font-size:11px;border:1px solid #D9DDE3;border-radius:0;padding:3px 7px;color:var(--acc);transition:background .2s,border-color .2s}
.a-cites .a-cite.a-on{background:var(--sel);border-color:var(--acc);box-shadow:none}
.a-pop{position:absolute;z-index:8;background:#fff;border:1px solid var(--line);border-radius:0;overflow:hidden;box-shadow:0 14px 36px -12px rgba(15,25,40,.32);transition:opacity .22s ease,transform .22s ease}
.a-rp .a-pop{right:14px;top:196px;width:360px}
.a-pop .a-page{box-shadow:none;padding:14px 16px}

/* tables */
.a-tbl{flex:1;min-height:0}
.a-tbl table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}
.a-tbl th{font:500 11px/1.2 'Times New Roman',Tinos,Times,serif;color:var(--ink3);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);background:#FAFBFC;white-space:nowrap}
.a-tbl td{padding:0 12px;height:34px;border-bottom:1px solid var(--line2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .25s}
.a-tbl td .a-fi{margin-right:8px;vertical-align:-2px}
.a-tbl .r{text-align:right}.a-tbl .num{font-variant-numeric:tabular-nums}
.a-tbl tr.a-sel td{background:var(--sel)}
.a-tbl tr.a-sel td:first-child{box-shadow:inset 1px 1px 0 var(--acc),inset 0 -1px 0 var(--acc)}
.a-tbl tr.a-sel td:not(:first-child):not(:last-child){box-shadow:inset 0 1px 0 var(--acc),inset 0 -1px 0 var(--acc)}
.a-tbl tr.a-sel td:last-child{box-shadow:inset -1px 1px 0 var(--acc),inset 0 -1px 0 var(--acc)}
.a-yes{font-weight:500}.a-no2{color:#B3B9C9}.a-q{color:var(--ink3);font-style:italic}
.a-drawer{position:absolute;top:12px;right:12px;bottom:12px;width:430px;z-index:6;box-shadow:-14px 0 36px -18px rgba(15,25,40,.35);transition:transform .5s cubic-bezier(.4,0,.2,1)}
.a-shut .a-drawer{transform:translateX(calc(100% + 20px))}
.a-shut .a-tbl tr.a-sel td{background:none;box-shadow:none!important}
.a-flag{font-weight:500;color:var(--ink)}
.a-flag::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ink);margin-right:7px;vertical-align:2px}
.a-tie td.a-tgt{background:var(--sel);box-shadow:inset 0 0 0 1px var(--acc)}
.a-tie .a-tot td{font-weight:600;border-bottom:0}.a-tie .a-tot td:last-child{font-weight:400;color:var(--ink3)}
.a-pop2{right:14px;top:178px;width:400px}
.a-pf{padding:10px 14px;border-top:1px solid var(--line2);font-size:12px;font-weight:500;background:#F7F8FA}
.a-closed .a-pop2{opacity:0;transform:translateY(-6px);pointer-events:none}
.a-closed .a-tie td.a-tgt{background:none;box-shadow:none}
.a-mt tr.a-miss td{background:var(--sel)}
.a-chk{color:var(--ink4);display:none}
.a-res{display:inline-flex;align-items:center;gap:7px;color:var(--ink3)}
.a-nf{font:600 10.5px/1 'Times New Roman',Tinos,Times,serif;border:1px solid var(--ink);border-radius:0;padding:4px 6px;color:var(--ink)}
.a-checking .a-chk{display:inline}.a-checking .a-res{display:none}
.a-checking .a-mt tr.a-sel td,.a-unsel .a-mt tr.a-sel td{background:none;box-shadow:none!important}
.a-toast{position:absolute;right:26px;bottom:26px;z-index:8;display:flex;gap:8px;align-items:center;background:var(--ink);color:#fff;font-size:12px;padding:10px 14px;border-radius:0;box-shadow:0 10px 28px -10px rgba(15,25,40,.45);transition:opacity .3s,transform .3s}
.a-toast .a-ck circle{fill:#fff}.a-toast .a-ck path{stroke:var(--ink)}

/* compare */
.a-cm{display:grid;grid-template-columns:230px 1fr;gap:10px;flex:1;min-height:0}
.a-cmp .a-base{color:var(--ink)}
.a-page s{color:#8A3D50}.a-page u{color:#2F4A78;text-decoration-style:double}
.a-chg{box-shadow:0 0 0 1px var(--acc);background:#F5F7FA;padding:4px 6px;margin:0 -6px 9px!important;transition:box-shadow .5s,background .5s}
.a-nohl .a-chg{box-shadow:none;background:transparent}
.a-unsel .a-cmp .a-si.a-sel{background:none;font-weight:400;color:var(--ink2)}

/* organize */
.a-seg{display:inline-flex;border:1px solid #D3D8DF;border-radius:0;overflow:hidden;font-size:12px}
.a-seg span{padding:7px 11px;transition:background .25s,color .25s}
.a-seg .a-s2{background:var(--ink);color:#fff}
.a-orig .a-seg .a-s1{background:var(--ink);color:#fff}.a-orig .a-seg .a-s2{background:#fff;color:var(--ink)}
.a-list{flex:1}
.a-lh{display:flex;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--line);font:500 11px/1.2 'Times New Roman',Tinos,Times,serif;color:var(--ink3);background:#FAFBFC}
.a-rows{position:relative}
.a-row,.a-fo{position:absolute;left:0;right:0;top:0;height:32px;display:flex;align-items:center;gap:8px;padding:0 14px;border-bottom:1px solid var(--line2);font-size:12px;
  transform:translateY(var(--b));transition:transform .65s cubic-bezier(.4,0,.2,1),opacity .35s,padding .5s,background .3s,box-shadow .3s}
.a-row{padding-left:36px}
.a-fo b{font-weight:600}
.a-nm{position:relative;flex:1;min-width:0;height:18px}
.a-n1,.a-n2{position:absolute;inset:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .35s}
.a-n1{opacity:0}
.a-sz{color:var(--ink3);font-size:11.5px;width:56px;text-align:right;flex:none}
.a-was{color:var(--ink4);font-size:11px;white-space:nowrap;transition:opacity .35s}
.a-row.a-sel{background:var(--sel);box-shadow:inset 0 0 0 1px var(--acc)}
.a-orig .a-row{transform:translateY(var(--a));padding-left:14px}
.a-orig .a-fo,.a-orig .a-was{opacity:0}
.a-orig .a-n1{opacity:1}.a-orig .a-n2{opacity:0}
.a-orig .a-row.a-sel{background:none;box-shadow:none}

/* cap summary */
.a-cs{display:grid;grid-template-columns:1fr 1.1fr;gap:10px;flex:1;min-height:0}
.a-docs .a-si{height:34px}
.a-sum{padding-bottom:8px}
.a-tot2{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:12px;padding:12px 14px;border:1px solid var(--line);border-radius:0}
.a-tot2 small{display:block;font-size:11px;color:var(--ink3)}.a-tot2 b{font:600 15px/1.3 'Times New Roman',Tinos,Times,serif;font-variant-numeric:tabular-nums}
.a-rec{grid-column:1/-1;display:flex;gap:8px;align-items:center;font-size:12px;border-top:1px solid var(--line2);padding-top:10px}
.a-sum .a-navh{padding-top:6px}
.a-cf{display:flex;gap:10px;align-items:flex-start;margin:0 12px;padding:9px 10px;border-bottom:1px solid var(--line2);transition:background .25s,box-shadow .25s}
.a-cf>div{flex:1;min-width:0}
.a-cf b{display:block;font-size:12.5px;font-weight:600}.a-cf small{display:block;font-size:11.5px;color:var(--ink2)}
.a-cf .a-chev{margin-top:5px}
.a-cfd{font-size:11px;color:var(--ink3);max-height:0;overflow:hidden;transition:max-height .35s ease,margin .35s}
.a-cf.a-open .a-cfd{max-height:40px;margin-top:6px}
.a-cf.a-sel{background:var(--sel);box-shadow:inset 0 0 0 1px var(--acc);border-bottom-color:transparent}

/* loop seams */
.lv.a-snap,.lv.a-snap *{transition:none!important}
.lv .a-body{transition:opacity .4s ease}
.lv.a-out .a-body{opacity:0}
@media (prefers-reduced-motion:reduce){.lv *{transition:none!important}}
.a-nos .a-sc.a-sel{background:none;box-shadow:none}

/* v20: consistent with the site - square corners, Libre Baskerville titles, documents in Times New Roman */
.lv{border-radius:2px}
.a-ri{border-radius:0}
.a-m{font:400 18px/1 'Libre Baskerville',Georgia,serif}
.a-dt,.a-kv{font-size:10.5px}
.a-sans{font-family:'Times New Roman',Tinos,Times,serif}

/* v21: what Marveri drafts reads as a Word document; what sits in the data room reads as a PDF */
.a-badge{font:700 9px/1 'Times New Roman',Tinos,Times,serif;padding:4px 5px;flex:none;letter-spacing:.02em}
.a-bw{background:#333C5C;color:#fff}
.a-bp{border:1px solid #9097A3;color:#474C58;padding:3px 4px}
.a-ph .a-badge+.a-tag{margin-left:-4px}
/* Word: Times New Roman, underlined schedule headings, blue citations, running page footer, light Word ground */
.a-word .a-view{background:#EDEFF2}
.a-word .a-page{font-family:'Times New Roman',Tinos,Times,serif;font-size:11.5px;line-height:1.5;padding:30px 34px 16px}
.a-word .a-sh{text-transform:none;letter-spacing:0;font-size:12px;line-height:1.55;text-decoration:underline;text-underline-offset:2px}
.a-wfoot{margin-top:18px;text-align:right;font-size:9.5px;color:#6B7080}
/* PDF: Arial-style justified type, running header, page number, darker viewer ground, zoom control */
.a-pdf .a-view{background:#D6DAE0}
.a-pdf .a-page,.a-pop.a-pdf .a-page{font-family:Arimo,Arial,Helvetica,sans-serif;font-size:10.2px;line-height:1.6;text-align:justify;padding:18px 30px 14px;
  box-shadow:0 1px 2px rgba(15,23,42,.18),0 4px 14px -4px rgba(15,23,42,.18)}
.a-pdf .a-dh{font-size:10.2px;letter-spacing:.06em}
.a-pdf .a-dh span{font-size:10px}
.a-prun{display:flex;justify-content:space-between;gap:12px;font-size:7.8px;letter-spacing:.08em;text-transform:uppercase;color:#8E94A0;margin:0 0 16px;text-align:left}
.a-prun span:last-child{text-transform:none;letter-spacing:0;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-pfoot{text-align:center;font-size:8.5px;color:#8E94A0;margin-top:14px}
.a-pop.a-pdf .a-page{background:#fff;margin:10px 12px 12px;box-shadow:0 0 0 1px rgba(15,23,42,.08),0 2px 8px -2px rgba(15,23,42,.15)}
.a-pop.a-pdf{background:#E3E6EA}
.a-pop.a-pdf .a-ph{background:#fff}
.a-zm{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);padding:2px 8px;font-variant-numeric:tabular-nums}
.a-zm span{color:var(--ink4);font-size:13px;line-height:1}
.a-pdf .a-kv td{border-color:#B8BEC8}
.a-pop2{top:172px}
.a-pop2 .a-page{margin:8px 10px 10px!important;padding:12px 22px 6px!important}
.a-pop2 .a-dh{margin-bottom:8px}
.a-pop2 .a-pf{padding:8px 14px}
/* v23: data room documents are scanned PDF pages (images); the cited lines carry a translucent highlight */
.a-scan{position:relative;width:100%;aspect-ratio:816/1056;background:#EFEFEC;box-shadow:0 0 0 1px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.18)}
.a-scan img{display:block;width:100%;height:100%}
.a-hr{position:absolute;background:rgba(64,96,160,.22);mix-blend-mode:multiply;transition:opacity .6s ease}
.a-nohl .a-hr{opacity:0}
.a-pdf .a-pg{padding:12px 14px 40px}
.a-pdf .a-view{background:#CDD0D5}
.a-crop{overflow:hidden;position:relative}
.a-cv{background:#CDD0D5;padding:10px 12px}
.a-cv .a-crop{box-shadow:0 0 0 1px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.18)}
.a-cv .a-scan{box-shadow:none}
.a-pop2{left:224px;right:auto;top:104px;width:390px}
.a-rp .a-pop{width:380px}
/* v24: Word drafts are page images as Word renders them; overlays mark the citation, the passage and the changed clause */
.a-pg{position:relative}
.a-wimg{position:relative;width:100%;aspect-ratio:816/1056;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 1px 4px rgba(0,0,0,.12)}
.a-wimg img{display:block;width:100%;height:100%}
.a-wstack .a-wimg+.a-wimg{margin-top:12px}
.a-cite{position:absolute;inset:0;pointer-events:none;background:none!important;box-shadow:none!important}
.a-cr{position:absolute;transition:background .3s}
.a-cite.a-hov .a-cr{background:rgba(64,96,160,.10)}
.a-cite.a-on .a-cr{background:rgba(64,96,160,.22)}
.a-wimg .a-hr{mix-blend-mode:multiply}
.a-bx{position:absolute;box-shadow:0 0 0 1.5px var(--acc);transition:opacity .5s}
.a-nohl .a-bx{opacity:0}
.a-aim{position:absolute;pointer-events:none}
.a-word .a-pg{padding:12px 14px 40px}
/* v26: missing documents - the answer first (212 referenced, 209 present, 3 missing), then the three and where they are cited */
.a-msum{flex:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;height:58px;padding:0 6px;position:relative}
.a-msum>div{display:flex;align-items:baseline;gap:8px;padding:0 14px;border-left:1px solid var(--line2);transition:opacity .35s}
.a-msum>div:first-child{border-left:0}
.a-msum b{font:600 18px/1 'Times New Roman',Tinos,Times,serif;font-variant-numeric:tabular-nums}
.a-msum span{font-size:12px;color:var(--ink3)}
.a-msum .a-mx span{color:var(--ink);font-weight:500}
.a-msum .a-mchk{position:absolute;inset:0;border:0;display:flex;align-items:center;gap:12px;padding:0 20px;font-size:12px;color:var(--ink2);opacity:0;pointer-events:none;background:#fff}
.a-checking .a-msum>div:not(.a-mchk){opacity:0}
.a-checking .a-msum .a-mchk{opacity:1}
.a-checking .a-mchk .a-bar i{animation:afill 1.5s ease-out forwards}
@keyframes afill{from{width:0}to{width:100%}}
.a-mm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:10px;flex:1;min-height:0}
.a-mlist{padding-bottom:6px}
.a-mi{display:flex;gap:10px;align-items:flex-start;margin:0 8px;padding:10px 10px;border-bottom:1px solid var(--line2);transition:background .25s,box-shadow .25s,opacity .35s}
.a-mi .a-fi{margin-top:2px}
.a-mi b{display:block;font-size:12.5px;font-weight:600;line-height:1.35}
.a-mi small{display:block;font-size:11px;color:var(--ink3);margin-top:2px}
.a-mi.a-sel{background:var(--sel);box-shadow:inset 0 0 0 1px var(--acc);border-bottom-color:transparent}
.a-checking .a-mi{opacity:0}
/* smoother loop: a longer, eased fade for the reset */
.lv .a-body{transition:opacity .45s ease}
/* v28: played like a screen recording. States change the way a browser changes them: hover and press are instant,
   pages pop in after a loading bar, drawers and popovers open in about 0.2 s, scrolling is driven by app.js with a
   macOS overlay scrollbar, and a system arrow does the clicking. */
.a-cur{position:absolute;left:0;top:0;z-index:30;pointer-events:none;transform-origin:0 0;will-change:transform;transition:opacity .4s ease}
.a-cur svg{display:block;filter:drop-shadow(0 1px 1.2px rgba(0,0,0,.32))}
.lv.a-out .a-cur{opacity:0}
.lv.a-snap .a-cur{transition:none}
.a-pg{transition:none!important}
.a-blank .a-empty{transition:none}
.a-loading .a-empty::after{content:"";width:16px;height:16px;border:2px solid #CDD2DA;border-top-color:#5E6574;border-radius:50%;animation:aspin .75s linear infinite}
@keyframes aspin{to{transform:rotate(360deg)}}
.a-ld{opacity:0;transition:opacity .2s .08s}
.a-loading>.a-ld,.a-loading .a-view>.a-ld{opacity:1;transition:none}
.a-list>.a-ld{position:absolute;left:0;top:0;height:2px;width:0;background:var(--acc);z-index:3}
.a-sb{position:absolute;right:2px;top:2px;bottom:2px;width:7px;z-index:4;pointer-events:none;opacity:0;transition:opacity .35s}
.a-sb i{position:absolute;left:0;right:0;top:0;height:40px;border-radius:4px;background:rgba(0,0,0,.4)}
.a-sbon .a-sb{opacity:1;transition:none}
/* hover and press, instant */
.a-btn{transition:none}
.a-btn.a-hv{background:#F4F5F7}.a-btn.a-pri.a-hv{background:#2C3038;border-color:#2C3038}
.a-btn.a-press{transform:none;opacity:1;background:#E9EBEF}.a-btn.a-pri.a-press{background:#000;border-color:#000}
.a-si,.a-sc,.a-cf,.a-ni,.a-seg span,.a-tbl td{transition:none}
.a-mi{transition:opacity .15s}
.a-si.a-hv:not(.a-sel),.a-sc.a-hv:not(.a-sel),.a-cf.a-hv:not(.a-sel),.a-mi.a-hv:not(.a-sel),.a-row.a-hv:not(.a-sel),.a-ni.a-hv:not(.a-sel){background:#F6F7F9}
.a-tbl tbody tr.a-hv:not(.a-sel) td:not(.a-tgt){background:#F6F7F9}
.a-seg span.a-hv:not(.a-s2){background:#F4F5F7}.a-orig .a-seg .a-s2.a-hv{background:#F4F5F7}
.a-cite.a-hv .a-cr{background:rgba(64,96,160,.10)}
/* highlights land at once; overlays open quickly */
.a-hr,.a-page mark,.a-bx,.a-chg,.a-kv .a-hit td{transition-duration:.14s!important}
.a-drawer{transition:transform .24s cubic-bezier(.2,.7,.2,1)}
.a-pop{transition:opacity .12s ease,transform .12s ease}
.a-toast{transition:opacity .18s,transform .18s}
.a-cfd{transition:max-height .18s ease,margin .18s}
.a-issue{transition:opacity .2s,transform .2s}
.a-pre .a-scheds,.a-pre .a-more,.a-scheds,.a-more{transition:none}
.a-msum>div{transition:none}
.a-checking .a-mchk .a-bar i{animation:none;transition:width .16s ease-out}
.a-run .a-bar i{transition:width .16s ease-out}
/* organize: the organized list replaces the original after it loads, the way a reload does */
.a-row,.a-fo,.a-n1,.a-n2,.a-was{transition:none!important}
.a-orig.a-swap .a-seg .a-s1{background:#fff;color:var(--ink)}.a-orig.a-swap .a-seg .a-s2{background:var(--ink);color:#fff}
.a-orig.a-swap .a-rows{opacity:.45}
.a-run .a-gobtn{background:#6B7080;border-color:#6B7080}
/* v29: one application. Every window is 1000 x 600 with the same project sidebar (company, then every feature, the
   current one selected); a document opens straight at the cited passage instead of loading, spinning and scrolling. */
.a-side{width:178px;flex:none;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px 10px 12px}
.a-brand{display:flex;align-items:center;gap:10px;padding:0 6px 14px;margin-bottom:10px;border-bottom:1px solid var(--line2)}
.a-brand .a-m{margin:0;font-size:18px}
.a-co{display:flex;flex-direction:column;font-size:12px;font-weight:500;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-co small{font-size:10.5px;font-weight:400;color:var(--ink3)}
.a-nvs{display:flex;flex-direction:column;gap:2px}
.a-nv{display:flex;align-items:center;gap:9px;height:30px;padding:0 8px;font-size:12px;color:var(--ink2);white-space:nowrap}
.a-nv svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.a-nv.a-act{background:var(--ink);color:#fff}
.a-me{margin-top:auto;display:flex;align-items:center;gap:9px;padding:0 6px;font-size:12px;color:var(--ink2)}
.a-me .a-av{margin:0}
.a-tt{margin-right:14px}
.a-head h1{margin:0}
.a-view .a-pg{transition:opacity .12s ease!important}
/* v30: no empty document placeholder. Citation views start with the source already open at its first page; the click
   scrolls it to the passage. Compare starts on Crosspoint's redline and swaps to Keystone's when it is selected. */
.a-dual>.a-wimg:first-child{display:none}
.a-before .a-dual>.a-wimg:first-child{display:block}.a-before .a-dual>.a-wimg:last-child{display:none}
.a-f1{display:none}.a-before .a-f1{display:inline}.a-before .a-f2{display:none}
.a-before .a-cmp .a-si.a-sel{background:none;font-weight:400;color:var(--ink2)}
.a-before .a-cmp .a-si.a-prev{background:var(--sel);color:var(--ink);font-weight:500}
/* v32: a platform in a browser. Safari with compact tabs (window inactive, so the traffic lights are grey), plain
   sans titles as in the real app, highlights that land instantly, and contract review as a live question. */
.a-win{display:flex;flex-direction:column;width:100%;height:100%;background:#fff}
.a-win>.a-app{flex:1;min-height:0;height:auto}
.a-chrome{height:40px;flex:none;display:flex;align-items:center;gap:14px;padding:0 14px;background:#ECEDEF;border-bottom:1px solid #D6D9DE;font-family:'Times New Roman',Tinos,Times,serif}
.a-tl{display:flex;gap:8px}.a-tl i{width:12px;height:12px;border-radius:50%;background:#D3D6DB;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.14)}
.a-hist{width:40px;display:flex;align-items:center}.a-hist svg{width:30px;height:12px;fill:none;stroke:#A2A7B0;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.a-hr2{width:94px}
.a-url{flex:0 1 440px;margin:0 auto;height:26px;border-radius:6px;background:#E0E2E6;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:#4B505B;white-space:nowrap;overflow:hidden}
.a-url svg{width:9px;height:11px;fill:none;stroke:#6B7080;stroke-width:1.3}
.a-head h1,.a-m,.a-brand .a-m{font-family:'Times New Roman',Tinos,Times,serif;font-weight:600;letter-spacing:0}
.a-head h1{font-size:16px}.a-brand .a-m{font-size:18px}
.a-hr,.a-page mark,.a-bx,.a-chg,.a-kv .a-hit td{transition:none!important}
/* contract review: table and source side by side; a new question column */
.lv-matrix .a-body{position:relative}
.a-mx{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:10px;flex:1;min-height:0}
.a-shut .a-mx{grid-template-columns:minmax(0,1fr) 0;gap:0}
.a-mx .a-drawer{position:relative;inset:auto;width:auto;box-shadow:none;transform:none!important;transition:none}
.a-shut .a-mx .a-drawer{visibility:hidden;border:0}
.a-nocol .a-q9{display:none}
.a-sk{display:none;width:34px;height:7px;background:#E6E9EE;vertical-align:1px}
.a-pend .a-q9 .a-sk{display:inline-block}.a-pend .a-q9 .a-v{display:none}
.a-ask{position:absolute;right:84px;top:4px;width:400px;z-index:9;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px -12px rgba(15,25,40,.3);padding:0 12px 12px}
.a-ask .a-navh{padding:12px 0 8px}
.a-hide2{display:none}
.a-in{border:1px solid var(--acc);height:34px;display:flex;align-items:center;padding:0 10px;font-size:12.5px;color:var(--ink);white-space:nowrap;overflow:hidden}
.a-caret{width:1px;height:16px;background:var(--ink);margin-left:1px;animation:ablink 1.06s step-end infinite}
@keyframes ablink{50%{opacity:0}}
.a-ph{color:var(--ink4);margin-left:-1px}.a-tx:not(:empty)~.a-ph{display:none}
.a-askf{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.a-tbl th{overflow:hidden;text-overflow:ellipsis}
.a-mx{grid-template-columns:minmax(0,1fr) 360px}
/* v38: narrow slots show the app as a narrow browser window lays it out: icon sidebar, tighter side panels */
.a-nar .a-side{width:52px;padding:14px 8px 12px}
.a-nar .a-brand{padding:0 0 14px;justify-content:center}.a-nar .a-co{display:none}
.a-nar .a-nv{font-size:0;gap:0;justify-content:center;padding:0}
.a-nar .a-me{font-size:0;justify-content:center;padding:0}.a-nar .a-me .a-av{font-size:10.5px}
.a-nar .a-hist,.a-nar .a-hr2{display:none}
.a-nar .a-mx{grid-template-columns:minmax(0,1fr) 290px}
.a-nar .a-pop2{left:auto;right:14px;width:360px}
.a-nar .a-ask{width:360px}
/* v39: reads as a capture, not a mockup. Selection is a filled row with no outline box; the window sits on a hairline
   border instead of a floating shadow; documents fill their pane; lists run past the bottom edge. */
.lv{box-shadow:0 0 0 1px rgba(15,23,42,.14),0 2px 6px rgba(15,25,40,.07)!important}
.a-tbl tr.a-sel td,.a-tbl tr.a-sel td:first-child,.a-tbl tr.a-sel td:last-child,.a-tbl tr.a-sel td:not(:first-child):not(:last-child){box-shadow:none!important;background:#E4E7EC}
.a-sc.a-sel,.a-cf.a-sel,.a-mi.a-sel,.a-row.a-sel,.a-si.a-sel{box-shadow:none!important;background:#E4E7EC}
.a-mi.a-sel b,.a-cf.a-sel b,.a-sc.a-sel,.a-si.a-sel{font-weight:600}
.a-ni.a-sel{box-shadow:none!important;background:#E4E7EC;font-weight:700;color:var(--ink)}
.a-tie td.a-tgt{box-shadow:none!important;background:#E4E7EC}
.a-view .a-pg{padding:6px 6px 30px}
.a-scheds{border:0;padding:0}.a-sc{border-bottom:1px solid var(--line2)!important}
.a-dual>:first-child{display:none}
.a-before .a-dual>:first-child{display:block}.a-before .a-dual>:last-child{display:none}
.a-bx{box-shadow:none!important;background:rgba(64,96,160,.12);mix-blend-mode:multiply}
/* v40: Data Room as the app's Document List - tabs, search and actions, Select All, a flat list named by folder */
.a-dlw{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 16px}
.a-dtabs{display:flex;gap:24px;border-bottom:1px solid var(--line);font-size:12.5px;flex:none}
.a-dtabs span{padding:11px 0 9px;color:var(--ink3);border-bottom:2px solid transparent;margin-bottom:-1px}
.a-dtabs .a-on{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}
.a-dtools{display:flex;align-items:center;gap:8px;padding:14px 0 10px;flex:none}
.a-srch{flex:0 1 300px;height:30px;border:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--ink4);font-size:12px;white-space:nowrap;overflow:hidden}
.a-srch svg{width:12px;height:12px;flex:none;fill:none;stroke:var(--ink4);stroke-width:1.4}
.a-prg2{display:none;color:var(--ink3);font-size:12px;font-style:italic;margin-left:6px}.a-orig .a-prg2{display:inline}
.a-selall{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink2);padding:4px 6px 8px;flex:none}
.a-cb2{width:12px;height:12px;border:1px solid #BFC5CE;background:#fff;flex:none}
.a-dl{position:relative;flex:1;min-height:0;overflow:hidden}
.a-dr{position:absolute;left:0;right:0;top:0;height:30px;display:flex;align-items:center;gap:10px;padding:0 6px;font-size:12.5px;transform:translateY(var(--b));transition:none}
.a-orig .a-dr{transform:translateY(var(--a))}
.a-dr .a-cb2{visibility:hidden}.a-dr.a-hv .a-cb2{visibility:visible}
.a-dr.a-hv{background:#F4F5F7}
.a-dn{position:relative;flex:1;min-width:0;height:18px}
.a-d1,.a-d2{position:absolute;inset:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-d1{display:none}.a-orig .a-dr:not(.a-rn) .a-d1{display:block}.a-orig .a-dr:not(.a-rn) .a-d2{display:none}
.a-rs{display:none;color:var(--ink4);font-style:italic;font-size:11.5px;flex:none}.a-orig .a-dr:not(.a-rn) .a-rs{display:inline}
.a-pen{width:13px;height:13px;flex:none;fill:none;stroke:var(--ink3);stroke-width:1.3;visibility:hidden}.a-dr.a-hv .a-pen{visibility:visible}
/* v41: Contract Review as the app's Document Analysis worksheet - worksheet tabs, toolbar, status, clause answers */
.a-wsp{display:flex;flex-direction:column;min-height:0;padding:0 14px;position:relative}
.a-wsp .a-tbl{border:0;flex:1;min-height:0;margin:0 -14px}
.a-wtabs{display:flex;gap:20px;border-bottom:1px solid var(--line);font-size:12px;flex:none}
.a-wtabs span{padding:10px 0 8px;color:var(--ink3);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.a-wtabs .a-on{color:var(--ink);font-weight:600;border-bottom-color:var(--ink)}
.a-wtabs .a-wadd{font-size:14px;line-height:1;padding-top:8px}
.a-wbar{display:flex;align-items:center;gap:8px;padding:10px 0;flex:none}
.a-srch2{flex:0 1 200px}
.a-stp{font-size:11px;border:1px solid var(--line);padding:2px 7px;color:var(--ink2);white-space:nowrap}
.a-stp.a-str{border-color:#9097A3;color:var(--ink)}
.a-ic{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.a-ri2{width:13px;height:13px;flex:none}
.a-q9 .a-v{display:inline-flex}
.lv-matrix .a-ask{right:auto;left:auto;top:86px;right:118px;width:360px}
.a-fl{font-size:11px;color:var(--ink3);margin:8px 0 4px}
.a-in{border-color:var(--line)}
.a-f1on .a-in1,.a-f2on .a-in2{border-color:var(--acc)}
.a-in .a-caret{display:none}.a-f1on .a-in1 .a-caret,.a-f2on .a-in2 .a-caret{display:inline-block}
.a-in2{height:auto;min-height:34px;white-space:normal;padding:7px 10px;line-height:1.35}
.a-nar .lv-matrix .a-ask,.a-nar.lv-matrix .a-ask{right:108px}
.a-nar .a-shut .a-mx{grid-template-columns:minmax(0,1fr) 0;gap:0}
.lv-matrix .a-ask{right:auto}
.a-tbl th:nth-child(2){width:88px!important}
/* v42: Data Room organizes in one step - folder headings appear and every file is renamed at once */
.a-dlw{padding-top:4px}
.a-dfo{position:absolute;left:0;right:0;top:0;height:30px;display:flex;align-items:center;gap:9px;padding:0 6px;font-size:12.5px;transform:translateY(var(--b))}
.a-dfo b{font-weight:600}.a-dfo .a-fi{width:14px;height:13px}
.a-dr{padding-left:28px}
.a-orig .a-dfo{display:none}
.a-orig .a-dr{padding-left:6px}
.a-orig .a-dr .a-d1{display:block}.a-orig .a-dr .a-d2{display:none}
.a-orig.a-swap .a-dl{opacity:.45}
/* v43: Data Room - real action bar, enabled by Select All; checked boxes */
.a-acts{display:flex;gap:8px;padding:12px 0 0;flex:none}
.a-act3{color:var(--ink4);border-color:var(--line2);background:#FAFAFB}
.a-allsel .a-act3{color:var(--ink);border-color:#D3D8DF;background:#fff}
.a-cb2.a-ckd,.a-allsel .a-cb2{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.2l2.2 2.2 4.6-4.8' fill='none' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/10px no-repeat;border-color:var(--ink);visibility:visible!important}
.a-allsel .a-dl{opacity:1}
/* v43: Missing Documents as the app shows it - categories, rows with description, priority and source chips */
.a-mx2{grid-template-columns:minmax(0,1fr) 380px}
.a-nar .a-mx2{grid-template-columns:minmax(0,1fr) 300px}
.a-mlw{display:flex;flex-direction:column;min-height:0;padding:0 14px}
.a-mgs{flex:1;min-height:0;overflow:hidden}
.a-mg{border-top:1px solid var(--line2)}
.a-mgh{display:flex;align-items:center;gap:10px;height:34px;padding:0 6px;background:#F8F9FA;font-size:12.5px}
.a-car{width:0;height:0;border-left:4px solid var(--ink3);border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;transform:rotate(90deg);flex:none}
.a-mcol .a-car{transform:none}
.a-mg:not(.a-mgf) .a-car{transform:none}
.a-mn{font-size:11.5px;color:var(--ink2)}
.a-mrow{display:grid;grid-template-columns:12px 12px minmax(0,1fr) 64px minmax(0,34%);gap:10px;align-items:start;padding:10px 6px;border-top:1px solid var(--line2)}
.a-mcol .a-mrow{display:none}
.a-mrow.a-mon{background:#F1F3F6}
.a-mic{width:12px;height:14px;fill:none;stroke:var(--ink2);stroke-width:1.2;margin-top:2px}
.a-mt b{display:block;font-size:12px;font-weight:600;line-height:1.3}
.a-mt small{display:block;font-size:11px;color:var(--ink3);line-height:1.4;margin-top:3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.a-prio{justify-self:center;font-size:10.5px;padding:2px 8px;background:#EEF0F3;color:var(--ink2);white-space:nowrap;margin-top:1px}
.a-prio.a-crit{background:var(--ink);color:#fff}
.a-chips{display:flex;flex-direction:column;gap:5px}
.a-chip{display:flex;align-items:flex-start;gap:6px;background:#EEF1F6;padding:4px 8px;font-size:10.5px;color:var(--acc);line-height:1.35}
.a-chip .a-fi{width:10px;height:12px;margin-top:1px;stroke:var(--acc)}
.a-chip.a-hv span{text-decoration:underline}
.a-mrow .a-cb2,.a-mgh .a-cb2{margin-top:1px}
.a-nar .a-mx2{grid-template-columns:minmax(0,1fr) 270px}
.a-mrow{grid-template-columns:12px 12px minmax(0,1.5fr) 58px minmax(0,1fr)}
/* v44: missing documents made unmistakable - count line, column headings, dashed icon, "Not in data room" */
.a-mcount{font-size:12px;color:var(--ink2);white-space:nowrap;margin-left:4px}.a-mcount b{font-weight:700;color:var(--ink)}
.a-mhead{display:grid;grid-template-columns:12px minmax(0,1.5fr) 58px minmax(0,1fr);gap:10px;align-items:center;padding:6px 6px 7px;font-size:11px;color:var(--ink3);border-bottom:1px solid var(--line);flex:none}
.a-mhead span:nth-child(2){padding-left:22px}.a-mhead span:nth-child(3){text-align:center}
.a-mic{stroke:var(--ink)}
.a-nidr{display:inline-block;font-size:10px;color:var(--ink2);border:1px dashed #9097A3;padding:0 5px;margin-top:3px;line-height:15px}
.a-mt small{margin-top:4px}
.a-nar .a-mcount{display:none}
.a-mx2:not(.x) .a-mcount{overflow:hidden;text-overflow:ellipsis}
.a-shut .a-mcount{display:inline}
/* v45: Missing Documents, simplified - one line per document: dashed icon, name, Missing, source */
.a-mrow{grid-template-columns:14px minmax(0,1fr) auto minmax(0,38%);align-items:center;padding:0 8px;height:40px}
.a-mtt{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-miss{font-size:10.5px;font-weight:600;background:var(--ink);color:#fff;padding:2px 8px;letter-spacing:.02em}
.a-mic{width:13px;height:15px;margin:0}
.a-mrow .a-chip{align-items:center;white-space:nowrap;overflow:hidden}.a-mrow .a-chip span{overflow:hidden;text-overflow:ellipsis}
.a-mgh{padding:0 8px}
.a-mn{font-size:11.5px;color:var(--ink3)}
.a-srch{flex:0 1 240px}
.a-mrow{grid-template-columns:14px minmax(0,1fr) auto}
/* v46: Missing Documents review fixes - selected row reads, dashed icon reads, the source opens zoomed on the clause */
.a-mrow.a-mon{background:#E4E7EC}
.a-mic{stroke-width:1.6}
.a-mic path{stroke-dasharray:2.4 2}
.lv-missing .a-r .a-pg{padding:0;overflow:hidden}
.lv-missing .a-r .a-scan{width:165%;margin-left:-17%}
.lv-missing .a-r .a-scan{width:130%;margin-left:-15.5%}
/* v48: Document Analysis plays as a real session. A new column shows the app's own processing state (header label,
   a progress bar that jumps as results refresh, a spinner in each pending cell); the pointer changes shape and hides
   while typing; the caret holds solid while keys are pressed */
.lv-matrix .a-tbl th.a-q9{position:relative;padding-right:8px}
.a-proc{display:none;margin-left:6px;font-size:8.5px;font-weight:400;color:var(--ink3);opacity:.75}
.a-procg .a-proc{display:inline}
.a-pbar{display:none;position:absolute;left:0;right:0;bottom:-1px;height:3px}
.a-procg .a-pbar{display:block}
.a-pbar b{display:block;height:100%;width:5%;background:#C3C8D0}
.a-spin{display:none;width:11px;height:11px;border:1.5px solid #D5D9DF;border-top-color:#6B7280;border-radius:50%;vertical-align:-2px;animation:aspin .8s linear infinite}
@keyframes aspin{to{transform:rotate(360deg)}}
.lv-matrix .a-pend .a-q9 .a-sk{display:none}
.lv-matrix .a-pend .a-q9 .a-spin{display:inline-block}
.a-typing .a-caret{animation:none}
.a-btn.a-busy{opacity:.55}
.a-cur.a-hid{opacity:0;transition:none}
/* v49: the laptop-size recording (Document Analysis). The worksheet keeps real column widths instead of stretching
   across a 1440 px screen, so a zoomed shot holds a contract's name and its answers together */
.a-lap .a-tbl table{width:auto}
.a-lap .a-tbl th:nth-child(1){width:360px!important}.a-lap .a-tbl th:nth-child(2){width:100px!important}
.a-lap .a-tbl th:nth-child(3){width:170px!important}.a-lap .a-tbl th:nth-child(4){width:230px!important}
/* v50: the processing state reads at recording scale: darker spinners and progress bar; the popover's count sits
   apart from its button */
.lv-matrix .a-spin{border-color:#C4C9D1;border-top-color:#1F2937;border-width:1.7px}
.lv-matrix .a-pbar b{background:#4B5563;transition:width .35s ease-out}
.lv-matrix .a-askf{justify-content:flex-end;gap:16px}

/* v51: version B - the real app's Inter type, 4px corners, grey borders and pill statuses, kept black and white */
/* Prototype: the product windows styled with the real app's tokens, measured on app-staging.marveri.com 2026-09-27.
   Interface in Inter 12px/500; grey canvas #F4F6F9 with a white 4px-radius main panel; buttons white, 4px radius,
   #D5D7DA border; indigo #3538CD for the active tab and primary action; pill status tags. Documents stay serif. */
.lv.a-skin .a-app{--ink:#181D27;--ink2:#414651;--ink3:#535862;--ink4:#717680;--line:#E9EAEB;--line2:#F0F1F2;--canvas:#F4F6F9;--acc:#3538CD;--sel:#EEF0FB}
.lv.a-skin .a-app,.lv.a-skin .a-app :not(.a-page):not(.a-page *):not(.a-wimg *):not(.a-cur *){font-family:Inter,'Helvetica Neue',Arial,sans-serif!important;letter-spacing:0}
.lv.a-skin .a-app{font-size:12px}
.lv.a-skin .a-side{background:var(--canvas);border-right:0}
.lv.a-skin .a-main{background:#fff;border:1px solid var(--line);border-radius:4px;margin:8px 8px 8px 0;overflow:hidden}
.lv.a-skin .a-head{height:52px;border-bottom:1px solid var(--line)}
.lv.a-skin .a-head h1{font-size:14px!important;font-weight:600!important}
.lv.a-skin .a-body{background:#fff}
.lv.a-skin .a-pan{border:0}
.lv.a-skin .a-btn{font-size:11.5px!important;font-weight:500!important;border-radius:4px;border-color:#D5D7DA;color:#414651;padding:8px 11px;box-shadow:0 1px 2px rgba(10,13,18,.05)}
.lv.a-skin .a-btn.a-pri{background:#444CE7;border-color:#444CE7;color:#fff}
.lv.a-skin .a-btn.a-pri.a-hv{background:#3538CD;border-color:#3538CD}
.lv.a-skin .a-srch{border-radius:4px;border-color:#D5D7DA;height:32px}
.lv.a-skin .a-wtabs span{font-weight:500}
.lv.a-skin .a-wtabs .a-on{color:#3538CD;font-weight:500;border-bottom-color:#3538CD}
.lv.a-skin .a-tbl th{font-size:11px!important;font-weight:500!important;color:#535862;background:#FAFAFA}
.lv.a-skin .a-tbl td{font-size:12px;font-weight:500;color:#181D27}
.lv.a-skin .a-stp{border-radius:9999px;border:0;background:#F2F4F7;color:#414651;font-size:10.5px;font-weight:500;padding:3px 8px}
.lv.a-skin .a-stp.a-str{background:#EEF4FF;color:#3538CD}
.lv.a-skin .a-ask{border-radius:8px;border-color:#E9EAEB;box-shadow:0 12px 16px -4px rgba(10,13,18,.08),0 4px 6px -2px rgba(10,13,18,.03)}
.lv.a-skin .a-in{border-radius:4px;border-color:#D5D7DA}
.lv.a-skin .a-f1on .a-in1,.lv.a-skin .a-f2on .a-in2{border-color:#444CE7;box-shadow:0 0 0 3px rgba(68,76,231,.14)}
.lv.a-skin .a-ri.a-act,.lv.a-skin .a-ni.a-sel{background:#fff;color:#181D27;box-shadow:0 1px 2px rgba(10,13,18,.06)}
.lv.a-skin .a-tag{border-radius:4px}
.lv.a-skin .a-drawer{border-radius:4px}
/* the app's sidebar: current item is a white chip on the grey canvas, not a black bar */
.lv.a-skin .a-nv.a-act{background:#fff;color:#181D27;box-shadow:0 1px 2px rgba(10,13,18,.08);border-radius:4px;font-weight:600}
.lv.a-skin .a-nv{border-radius:4px}
/* Middle version: the app's type, corners, borders and greys, but the site's black and white instead of indigo */
.lv.a-skin.a-mono .a-app{--acc:#181D27;--sel:#F2F4F7}
.lv.a-skin.a-mono .a-btn.a-pri,.lv.a-skin.a-mono .a-btn.a-pri.a-hv{background:#181D27;border-color:#181D27}
.lv.a-skin.a-mono .a-wtabs .a-on{color:#181D27;border-bottom-color:#181D27}
.lv.a-skin.a-mono .a-stp.a-str{background:#E4E7EC;color:#181D27}
.lv.a-skin.a-mono .a-f1on .a-in1,.lv.a-skin.a-mono .a-f2on .a-in2{border-color:#535862;box-shadow:0 0 0 3px rgba(24,29,39,.08)}

/* v52: motion polish (Nov 10). The windows play like a recording cut by a careful editor: a change of state dissolves
   in (app.js lays a fading copy over it), highlights fade in, a popover eases in, hover fades instead of flickering
   as the pointer passes rows, and a click dips the pointer and leaves a faint ring. Only when motion is allowed;
   the reset to the first frame (a-snap) and reduced motion stay instant. */
@media (prefers-reduced-motion:no-preference){
  .lv:not(.a-snap) .a-hr,.lv:not(.a-snap) .a-bx{transition:opacity .5s cubic-bezier(.2,.7,.2,1)!important}
  .lv:not(.a-snap) .a-page mark,.lv:not(.a-snap) .a-kv .a-hit td{transition:background-color .5s cubic-bezier(.2,.7,.2,1)!important}
  .lv:not(.a-snap) .a-chg{transition:box-shadow .5s cubic-bezier(.2,.7,.2,1),background-color .5s cubic-bezier(.2,.7,.2,1)!important}
  .lv:not(.a-snap) .a-pop{transition:opacity .26s cubic-bezier(.2,.7,.2,1),transform .26s cubic-bezier(.2,.7,.2,1)}
  .lv:not(.a-snap) .a-si,.lv:not(.a-snap) .a-sc,.lv:not(.a-snap) .a-cf,.lv:not(.a-snap) .a-ni,.lv:not(.a-snap) .a-dr,
  .lv:not(.a-snap) .a-mrow,.lv:not(.a-snap) .a-tbl td{transition:background-color .16s ease-out}
  .lv:not(.a-snap) .a-btn{transition:background-color .1s ease-out,border-color .1s ease-out}
  .lv:not(.a-snap) .a-dl{transition:opacity .22s ease-out}
  .a-cur svg{transform-origin:2px 2px;transition:transform .2s cubic-bezier(.2,.7,.2,1)}
  .a-cur.a-dn svg{transform:scale(.86);transition-duration:.08s}
}
.a-ghost{pointer-events:none}
.a-ring{position:absolute;left:0;top:0;z-index:29;width:0;height:0;pointer-events:none;transform-origin:0 0}
.a-ring::after{content:"";position:absolute;left:-17px;top:-17px;width:34px;height:34px;border-radius:50%;box-sizing:border-box;
  border:1.5px solid rgba(24,29,39,.5);background:rgba(24,29,39,.06);opacity:0;animation:a-ring .6s cubic-bezier(.2,.7,.2,1)}
@keyframes a-ring{0%{transform:scale(.35);opacity:1}100%{transform:scale(1);opacity:0}}
@media (prefers-reduced-motion:reduce){.a-ring{display:none}}
/* a narrow window on a desktop or tablet crops instead of shrinking (app.js, a-crop): the same soft right edge a phone
   window has, so the cut reads as "more to the right"; it fades once the camera reaches the app's right edge */

main.main-wrapper .lv.a-phone::after{transition:opacity .35s ease}

/* v53: one beat (Nov 11). Each home-page window plays one change with no pointer (app.js, BEAT): a selection lights
   up over .22 s, the result fades or slides in over .6 s on one ease-out, glides and pans take 1 s eased in and out,
   and the loop dissolves over .7 s. Only when motion is allowed; the reset to the first frame (a-snap) and reduced
   motion stay instant. */
@media (prefers-reduced-motion:no-preference){
  .lv:not(.a-snap) .a-cr{transition:background-color .22s ease-out}
  .lv:not(.a-snap) .a-si,.lv:not(.a-snap) .a-mrow,.lv:not(.a-snap) .a-tbl td,.lv:not(.a-snap) .a-tie td{transition:background-color .22s ease-out}
  .lv:not(.a-snap) .a-hr,.lv:not(.a-snap) .a-bx{transition:opacity .6s cubic-bezier(.2,.7,.2,1)!important}
  /* the popover opens just after its cell is selected */
  .lv:not(.a-snap) .a-pop{transition:opacity .6s cubic-bezier(.2,.7,.2,1) .12s,transform .6s cubic-bezier(.2,.7,.2,1) .12s}
}
/* the selected citation reads at a window's drawn size: a deeper tint with a hairline ring, matching the passage it
   opens */
.lv .a-cite.a-on .a-cr{background:rgba(48,78,150,.26);box-shadow:0 0 0 2px rgba(48,78,150,.62)}
/* the changed clause in a redline lights up as clearly as a cited passage */
.lv .a-bx{background:rgba(64,96,160,.2)}
/* a cropped window whose view has moved off its left edge gets a soft left edge too (app.js, a-lcut) */
main.main-wrapper .lv.a-phone::before{content:"";position:absolute;inset:0 auto 0 0;width:40px;z-index:9;pointer-events:none;
  background:linear-gradient(270deg,rgba(255,255,255,0),#fff);opacity:0;transition:opacity .35s ease}
main.main-wrapper .ord-app .lv.a-phone::before{display:none}
/* the report finding in a cropped window (1140): its stock ledger opens zoomed on the cited total, as the missing
   documents' source does, so the cited figure shows without moving the view off the window's left edge */

/* phones: the missing documents' list is narrowed so its "Missing" tags sit inside the first view */
main.main-wrapper .lv-missing.a-phone .a-mx2{grid-template-columns:270px minmax(0,1fr)}

/* v54: one beat on the other pages (Nov 11). The schedule editor, the representation and its source, the upload, the
   worksheet and the tie-out summary play like the home page's windows (app.js): a selection, then the result over
   .6 s. Only when motion is allowed; the reset to the first frame (a-snap) and reduced motion stay instant. */
@media (prefers-reduced-motion:no-preference){
  .lv:not(.a-snap) .a-cf{transition:background-color .22s ease-out}
  .lv:not(.a-snap) .a-cfd{transition:max-height .6s cubic-bezier(.2,.7,.2,1),margin .6s cubic-bezier(.2,.7,.2,1)}
  .lv:not(.a-snap) .a-issue{transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
}
/* the upload's button shows the app's busy grey while it is down */
.lv.lv-upload .a-btn.a-pri.a-gobtn.a-press{background:#6B7080;border-color:#6B7080}
/* the worksheet's chosen row shows as selected before its document opens beside it */
.lv-matrix .a-shut .a-tbl tr.a-sel td{background:#E4E7EC}

/* v55: four windows for the Solutions pages (Nov 11): the request list (21), the officers and key employees worksheet
   (22), the SAFE worksheet (23) and the SAFE compare (24). They are drawn for the workflow rows, where a window is
   560-640 px wide at 1140 and lays out at 780 x 500 (a-nar) at 0.8 or a little more, so their type is a step larger
   than the older windows' (12.5 px in a cell, 11.5 px for a heading, a source or a tag) and every column is sized to
   read at that scale. */
/* a worksheet's top line: its tabs at the left, its actions at the right, on one rule */
.a-wtop{display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid var(--line);flex:none;min-height:42px}
.a-wtop .a-wtabs{border-bottom:0;flex:none}
.a-wtop .a-btn{align-self:center}
/* their tables: cells wrap onto two lines instead of cutting off, and keep one row height */
.lv-officers .a-tbl th:nth-child(n),.lv-safes .a-tbl th:nth-child(n){width:auto!important}
.lv.lv-officers .a-tbl td,.lv.lv-safes .a-tbl td{white-space:normal;height:46px;padding:5px 12px;vertical-align:middle;line-height:1.35;font-size:12.5px;overflow:hidden;text-overflow:clip}
.lv-officers .a-tbl th:nth-child(1){width:26%!important}.lv-officers .a-tbl th:nth-child(2){width:22%!important}
.lv-officers .a-tbl th:nth-child(3){width:23%!important}.lv-officers .a-tbl th:nth-child(4){width:29%!important}
.lv-safes .a-tbl th:nth-child(1){width:34%!important}.lv-safes .a-tbl th:nth-child(2){width:14%!important}
.lv-safes .a-tbl th:nth-child(3){width:16%!important}.lv-safes .a-tbl th:nth-child(4){width:15%!important}.lv-safes .a-tbl th:nth-child(5){width:21%!important}
.lv-safes .a-tbl td.num{font-variant-numeric:tabular-nums}
.lv.lv-officers .a-tbl th,.lv.lv-safes .a-tbl th{font-size:11.5px!important}
.a-who b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-who small,.a-sref{display:block;font-size:11.5px;font-weight:400;color:var(--ink3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a-aq .a-ans{display:block}
.a-na{color:var(--ink2)}
.a-nt{color:var(--ink2);font-weight:400}
/* the request list, as the app's Data Room shows it in its Request List tab: the request list filed as a tree of numbered
   request folders, each holding the documents filed to it, and the selected request's Folder Details beside the tree:
   its request, the external response, its status and the internal notes */
.lv-reqlist .a-rlx{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px;flex:1;min-height:0}
.lv-reqlist .a-shut .a-rlx{grid-template-columns:minmax(0,1fr) 0;gap:0}
.lv-reqlist .a-shut .a-fd{visibility:hidden;border:0}
.lv-reqlist .a-rlw{display:flex;flex-direction:column;min-height:0;padding:0 14px}
.lv-reqlist .a-rlw .a-wtabs{border-bottom:1px solid var(--line)}
.lv-reqlist .a-rlbar{display:flex;align-items:center;gap:8px;padding:10px 0 6px;flex:none}
.lv-reqlist .a-rt{flex:1;min-height:0;overflow:hidden;margin:0 -6px}
.lv-reqlist .a-tr{display:flex;align-items:center;gap:8px;height:29px;padding:0 8px 0 calc(8px + var(--d,0)*20px);font-size:12.5px;white-space:nowrap;border-radius:4px}
.lv-reqlist .a-tr span{overflow:hidden;text-overflow:ellipsis}
.lv-reqlist .a-tr .a-car{margin-right:1px}.lv-reqlist .a-tr .a-car.a-cc{transform:none}
.lv-reqlist .a-tr .a-fo2{width:14px;height:13px;flex:none;fill:none;stroke:#535862;stroke-width:1.3}
.lv-reqlist .a-tr.a-tfi{color:var(--ink2);font-weight:400;padding-left:calc(30px + var(--d,0)*20px)}
.lv-reqlist .a-tr.a-tfi .a-fi{width:11px;height:13px}
.lv-reqlist .a-tr.a-sel{background:#E4E7EC;font-weight:600}
.lv-reqlist .a-fd{display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--line);overflow:hidden}
.lv-reqlist .a-fdh{height:40px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600;white-space:nowrap}
.lv-reqlist .a-fdh i{font-style:normal;color:var(--ink4);font-size:15px;font-weight:400}
.lv-reqlist .a-fdb{flex:1;min-height:0;overflow:hidden}
.lv-reqlist .a-fs{padding:6px 14px 7px;border-top:1px solid var(--line2)}
.lv-reqlist .a-fs:first-child{border-top:0}
.lv-reqlist .a-fs h4{margin:0 0 3px;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--ink3);white-space:nowrap}
.lv-reqlist .a-fs p{margin:0;font-size:12.5px;line-height:1.38;color:var(--ink2);font-weight:400;white-space:normal}
.lv-reqlist .a-fs.a-fs2{display:flex;gap:18px}.lv-reqlist .a-fs.a-fs2>div{min-width:0}.lv-reqlist .a-fs.a-fs2>div:first-child{flex:1}
.lv-reqlist .a-fs.a-fs2 p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-reqlist .a-fs .a-stp{display:inline-flex;align-items:center;gap:6px;font-size:11.5px}
.lv-reqlist .a-fs .a-stp i{width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:4px solid currentColor}
/* the cited document in a response or a note: the app shows a citation by its document's title */
.lv-reqlist .a-fs u{text-decoration:none;color:var(--ink);font-weight:500;background:#EEF1F6;padding:0 3px}
/* a worksheet answer still being worked out shows as a grey bar where its words will be */
.a-aq{position:relative}
.lv .a-aq .a-sk{display:block;position:absolute;left:12px;top:50%;width:54%;max-width:120px;height:8px;margin-top:-4px;background:#E9ECF0;border-radius:2px;opacity:0}
.a-wait .a-aq .a-sk{opacity:1}.a-wait .a-aq .a-ans{opacity:0}
/* the answer that matters lights up as a cited passage does: the officer with no IP assignment, the SAFEs with an MFN */
.lv .a-tbl td.a-gap{background:rgba(48,78,150,.11);box-shadow:inset 0 0 0 1.5px rgba(48,78,150,.55)}
.lv .a-nohl td.a-gap{background:transparent;box-shadow:inset 0 0 0 1.5px rgba(48,78,150,0)}
/* the SAFE compare: a narrower list, so the redline page gets the room; the page is set in the redline's own type */
.lv-safecmp.a-nar .a-cm{grid-template-columns:204px minmax(0,1fr)}
.lv-safecmp .a-cmp .a-si{font-size:12px}
.lv-safecmp .a-cmp .a-si span:first-of-type{overflow:hidden;text-overflow:ellipsis}
.lv-safecmp .a-cmp .a-navh{font-size:11.5px}.lv-safecmp .a-ph .a-tag{font-size:11px}
.lv-safecmp .a-r .a-pg{padding:8px 14px 30px}
.lv-safecmp .a-rlp{font-size:12.5px;line-height:1.45;padding:16px 22px 14px 30px}
.lv-safecmp .a-rlp p{margin:0 0 8px}
.lv-safecmp .a-rlp .a-dh{margin:0 0 10px;font-size:11.5px}.lv-safecmp .a-rlp .a-dh span{font-size:11.5px}
.lv-safecmp .a-page s{color:#B4232A;text-decoration-color:#B4232A}
.lv-safecmp .a-page u{color:#2F4A78;text-decoration-style:double;text-decoration-color:#2F4A78;text-underline-offset:2px}
.lv-safecmp .a-chg{position:relative;box-shadow:none;background:rgba(64,96,160,.16);padding:2px 5px;margin:0 -5px 8px!important}
.lv-safecmp .a-chg::before{content:"";position:absolute;left:-15px;top:3px;bottom:3px;width:1.5px;background:#23262D}
.lv-safecmp .a-nohl .a-chg{background:rgba(64,96,160,0)}
/* the SAFE being opened shows as selected while the last one's redline is still on screen */
.lv-safecmp .a-before.a-pick .a-cmp .a-si.a-sel{background:#E4E7EC;font-weight:600;color:var(--ink)}
.lv-safecmp .a-before.a-pick .a-cmp .a-si.a-prev{background:none;font-weight:400;color:var(--ink2)}
/* phones: each table is cut to its first view, as window 15's is: the officer and the IP assignment, the investor and
   the MFN (the request list and the SAFE compare drill down instead: see v59) */
main.main-wrapper .lv-officers.a-phone .a-tbl table,main.main-wrapper .lv-safes.a-phone .a-tbl table{width:290px}
main.main-wrapper .lv-officers.a-phone .a-tbl th:nth-child(2),main.main-wrapper .lv-officers.a-phone .a-tbl td:nth-child(2),
main.main-wrapper .lv-officers.a-phone .a-tbl th:nth-child(4),main.main-wrapper .lv-officers.a-phone .a-tbl td:nth-child(4),
main.main-wrapper .lv-safes.a-phone .a-tbl th:nth-child(2),main.main-wrapper .lv-safes.a-phone .a-tbl td:nth-child(2),
main.main-wrapper .lv-safes.a-phone .a-tbl th:nth-child(3),main.main-wrapper .lv-safes.a-phone .a-tbl td:nth-child(3),
main.main-wrapper .lv-safes.a-phone .a-tbl th:nth-child(5),main.main-wrapper .lv-safes.a-phone .a-tbl td:nth-child(5){display:none}
main.main-wrapper .lv-officers.a-phone .a-tbl th:nth-child(1){width:48%!important}main.main-wrapper .lv-safes.a-phone .a-tbl th:nth-child(1){width:63%!important}
main.main-wrapper .lv-officers.a-phone .a-tbl th:nth-child(3){width:52%!important}main.main-wrapper .lv-safes.a-phone .a-tbl th:nth-child(4){width:37%!important}
main.main-wrapper .lv-officers.a-phone .a-wtop .a-btn,main.main-wrapper .lv-safes.a-phone .a-wtop .a-btn{display:none}
/* a tightly cropped window on a wider screen (its view under 720 box px; app.js sets a-tight): each table drops its
   least needed column and keeps to the view's width, and the compare keeps its page inside it */

/* a lighter crop (a view of 720-780 box px) keeps the request list's details panel and the compare's page clear of the
   soft right edge, so their text is never faded */

@media (prefers-reduced-motion:no-preference){
  /* the answers resolve down the column, one row after the other, then the answer that matters lights up */
  .lv:not(.a-snap) .a-aq .a-ans,.lv:not(.a-snap) .a-aq .a-sk{transition:opacity .5s cubic-bezier(.2,.7,.2,1) calc(var(--i,0)*90ms)}
  .lv:not(.a-snap) .a-tbl td.a-gap{transition:background-color .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s cubic-bezier(.2,.7,.2,1)}
  .lv-safecmp:not(.a-snap) .a-chg{transition:background-color .6s cubic-bezier(.2,.7,.2,1)!important}
  .lv-reqlist:not(.a-snap) .a-tr{transition:background-color .22s ease-out}
}

/* v56: windows are never drawn under 0.8 (app.js fit): narrower slots crop, and the view moves the content panel under
   a window that stays put. On a wider screen, once the content has moved left, the soft left edge sits where the
   content panel begins (app.js sets --bl and --bt), not over the sidebar */

/* the tie-out's popover keeps clear of a cropped window's soft right edge, so it reads without moving the view */


/* v57: window 12 as the live walkthrough shows it: the merger agreement's Article III (a Word page that runs to the
   page's foot) above the drafted Schedule 3.1, the office lease beside them; the beat ends on the Schedule 3.1 entry */
.lv-repsource .a-rsl{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}
.lv-repsource .a-rsl .a-l{flex:1;min-height:0}
.lv-repsource .a-rsl .a-ds{flex:0 0 41%;min-height:0}
.lv-repsource .a-mpg{padding:22px 28px 16px}
.lv-repsource .a-mpg p{margin:0 0 8px;text-align:justify}
.lv-repsource .a-mpg .a-mrun{text-align:right;font-size:10.5px;margin:0 0 12px}
.lv-repsource .a-mpg .a-mart{text-align:center;font-weight:700;margin:4px 0 8px}
.lv-repsource .a-mpg .a-mpi{text-indent:28px}
.lv-repsource .a-mpg .a-mfoot{text-align:center;font-size:10.5px;margin:14px 0 0}
.lv-repsource .a-dpg{padding:14px 24px 12px}
.lv-repsource .a-dpg p{margin:0 0 6px}
.lv-repsource .a-dsh{text-align:center;font-weight:700;text-decoration:underline;text-underline-offset:2px;margin:0 0 1px!important}
.lv-repsource .a-dst{text-align:center;margin:0 0 9px!important}
.lv-repsource .a-ntd{font-style:italic}
.lv-repsource .a-nodr .a-ent{opacity:0}
/* phones: the left column is set to the width the first view shows, so the agreement and the schedule entry read whole */
main.main-wrapper .lv-repsource.a-phone .a-rpx{grid-template-columns:300px minmax(0,1fr)}
@media (prefers-reduced-motion:no-preference){
  .lv-repsource:not(.a-snap) .a-ent{transition:opacity .6s cubic-bezier(.2,.7,.2,1)}
}

/* v58: windows that left half their space empty. The upload's first frame lists the schedules the transaction agreement
   calls for, each with a grey bar where its count of entries will be (drafting fills the counts in, app.js upload);
   the tie-out's rows take the height the window gives them, so its table runs to the window's foot */
.lv-upload .a-pre .a-scheds{opacity:1}
.lv-upload .a-pre .a-en2{display:none}
.lv-upload .a-pre .a-sc::after{content:"";margin-left:auto;width:44px;height:7px;border-radius:2px;background:#E9ECF0;flex:none}

/* v59: narrow frames (a crop whose view is under 720 box px on a wider screen, a-tight, and phones, a-phone). app.js sets
   --vis to the view's width in box px; content sized to it keeps clear of the soft edge (85 px: the sidebar, the
   panel's padding and the edge itself). No control is left cut at the view's edge (app.js tidy, a-cutc). */
.lv .a-cutc{visibility:hidden}
/* the request list drills down as a narrow app window does: the tree fills the view, and the opened request's Folder
   Details take its whole width, so the response, its status and the notes are what a narrow slot shows */
.lv.lv-reqlist.a-phone .a-rlx{width:calc(var(--vis,780px) - 85px);grid-template-columns:0 minmax(0,1fr);gap:0}
.lv.lv-reqlist.a-phone .a-rlw{visibility:hidden}
.lv.lv-reqlist.a-phone .a-shut .a-rlx{grid-template-columns:minmax(0,1fr) 0}
.lv.lv-reqlist.a-phone .a-shut .a-rlw{visibility:visible}
/* the SAFE compare drills down the same way: the list of SAFEs fills the view, and the opened SAFE's redline takes it,
   so the page (and its new valuation cap, which never wraps apart) is whole at every width */
.lv.lv-safecmp.a-phone .a-cm{width:calc(var(--vis,780px) - 85px);grid-template-columns:0 minmax(0,1fr);gap:0}
.lv.lv-safecmp.a-phone .a-cmp{visibility:hidden}
.lv.lv-safecmp.a-phone .a-before .a-cm{grid-template-columns:minmax(0,1fr) 0}
.lv.lv-safecmp.a-phone .a-before .a-cmp{visibility:visible}
.lv.lv-safecmp.a-phone .a-before .a-r{visibility:hidden}
.lv-safecmp .a-fig{white-space:nowrap}
/* the tie-out keeps the holder, the row's key, in view: its table keeps to the view (the holder, the shares and the
   83(b) election; on a phone the holder and the election), and the election opens inside the view (beside the holders
   on a wider screen, below the late filing's row on a phone), so the view never moves off the holders */

/* the cap summary in a narrow frame shows its summary and findings alone, so its view never sweeps past the list of
   documents reviewed */
/* a search box in a narrow frame shrinks to the view instead of running under its edge (tidy would otherwise hide it) */
main.main-wrapper .lv.a-phone .a-srch{min-width:0;max-width:calc(var(--vis,780px) - 140px)}
/* v60: the finished tie-out (Startup & venture's opening, Cap table's first step). The reconciled totals run in one
   row across the top, with the documents reviewed and the findings side by side under them, so both columns reach the
   bottom of the frame and all four findings show: the documents no longer end halfway down, and in the 780 x 500
   layout the fourth finding is no longer cut off. app.js crops the wide frame to this content (SHORT: 1000 x 500).
   .a-sum gives up its own box so its totals and findings take their places in the grid. A phone or a tight crop keeps
   the summary and findings alone (v59) */
/* v61: the frameless style (Connor, Nov 11). Every window is an app panel, not a browser window: no browser bar, 10px
   corners, a hairline edge and a soft layered shadow, and on a dark band a faint light edge and glow so the panel sits
   on the dark. app.js reflows it to its slot (type 1:1 on a computer, 0.9 on a phone; a-nar under 860 box px, one
   column under 560, a-phone), so nothing crops or pans. Inside: IBM Plex Sans, quiet cool greys, no sidebar, no
   secondary controls; Export to Word stays the filled black button */
.lv.a-sleek .a-chrome,.lv.a-sleek .a-side,.lv.a-sleek .a-ld,.lv.a-sleek .a-sb{display:none!important}
main.main-wrapper .lv.a-sleek{border-radius:10px!important;background:#fff;
  box-shadow:0 0 0 1px rgba(15,23,42,.08),0 1px 2px rgba(15,23,42,.06),0 12px 28px -12px rgba(15,23,42,.22),0 40px 80px -36px rgba(15,23,42,.32)!important}
main.main-wrapper :is(.nov-dark,.nov-flow,.nov-phero,.nov-hero,.nov-chapter,.nov-practice,.nov-sol-band.is-dark) .lv.a-sleek{
  box-shadow:0 0 0 1px rgba(255,255,255,.16),0 0 60px -10px rgba(148,163,184,.28),0 30px 70px -26px rgba(0,0,0,.75)!important}
main.main-wrapper .lv.a-sleek .a-win{box-shadow:none!important;border-radius:0;background:#fff}
main.main-wrapper .lv.a-sleek.a-phone::after,main.main-wrapper .lv.a-sleek::after{display:none}
.lv.a-skin.a-sleek .a-app{--ink:#151B26;--ink2:#465061;--ink3:#687283;--ink4:#97A0AD;--line:#E5E8ED;--line2:#EFF1F4;--canvas:#F6F7F9;
  --acc:#3D4A60;--sel:#EEF1F5;--hl:#DCE1E8;font-size:13.5px}
.lv.a-skin.a-sleek .a-app,.lv.a-skin.a-sleek .a-app :not(.a-page):not(.a-page *):not(.a-wimg *){font-family:'IBM Plex Sans',system-ui,sans-serif!important;letter-spacing:0}
.lv.a-skin.a-sleek .a-main{margin:0;border:0;border-radius:0;background:#fff}
.lv.a-skin.a-sleek .a-head{height:58px;padding:0 22px;border-bottom:1px solid var(--line2);gap:10px}
.lv.a-skin.a-sleek .a-head h1{font-size:16px!important;font-weight:600!important;letter-spacing:-.005em;color:var(--ink)}
.lv.a-skin.a-sleek .a-head .a-btn:not(.a-pri){display:none}
.lv.a-skin.a-sleek .a-btn{font-size:13px!important;font-weight:500!important;padding:8px 13px;border-radius:6px;box-shadow:none}
.lv.a-skin.a-sleek .a-btn.a-pri{background:#16181D;border-color:#16181D;color:#fff}
.lv.a-skin.a-sleek .a-body{padding:14px 22px 18px;gap:12px}
.lv.a-sleek.a-phone .a-head{padding:0 16px}
.lv.a-sleek.a-phone .a-body{padding:12px 14px 14px}
/* the project, beside the title (app.js puts the sidebar's project name there) */
.lv.a-sleek .a-proj{font-size:13px;color:var(--ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.lv.a-sleek .a-proj::before{content:"";display:inline-block;width:1px;height:14px;background:var(--line);margin:0 12px 0 2px;vertical-align:-2px}

/* document panes: quiet cards, each page shown at its text width (its margins outside the card) so the words read */
.lv.a-sleek .a-split{gap:14px}
.lv.a-sleek .a-viewer{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.lv.a-sleek .a-ph{height:42px;padding:0 14px;gap:10px;border-bottom:1px solid var(--line2)}
.lv.a-skin.a-sleek .a-tag{font-size:11.5px!important;font-weight:500;padding:4px 8px;border-radius:5px;background:#F1F3F6;color:var(--ink2)}
.lv.a-sleek .a-fn{font-size:13px;color:var(--ink)}
.lv.a-sleek .a-view,.lv.a-sleek .a-word .a-view,.lv.a-sleek .a-pdf .a-view{background:#fff}
.lv.a-sleek .a-viewer .a-pg,.lv.a-sleek .a-word .a-pg,.lv.a-sleek .a-pdf .a-pg{padding:0}
.lv.a-sleek .a-viewer :is(.a-wimg,.a-scan){width:130%;margin-left:-15%;box-shadow:none;background:#fff}
.lv.a-sleek .a-pdf .a-scan img{filter:contrast(1.04) brightness(1.02)}
/* a citation lights as a slate mark on the page; the passage it cites as a soft slate band */
.lv.a-sleek .a-cr{background:transparent;box-shadow:none;mix-blend-mode:multiply}
.lv.a-sleek .a-cite.a-on .a-cr{background:#C9D0DB!important;box-shadow:0 0 0 2px #C9D0DB,inset 0 -2px 0 #3D4A60!important}
.lv.a-sleek .a-hr{background:#D3D9E2}
.lv.a-sleek:not(.a-snap) .a-cr{transition:background-color .45s cubic-bezier(.4,0,.2,1),box-shadow .45s cubic-bezier(.4,0,.2,1)}
.lv.a-sleek:not(.a-snap) .a-hr{transition:opacity .55s cubic-bezier(.4,0,.2,1)!important}
.lv.a-sleek:not(.a-snap) .a-view .a-pg{transition:opacity .55s cubic-bezier(.4,0,.2,1)!important}
/* a document not yet chosen shows under a veil; choosing it lifts the veil (a-veil) */
.lv.a-sleek .a-view::after{content:"";position:absolute;inset:0;z-index:3;background:rgba(246,247,249,.78);opacity:0;pointer-events:none}
.lv.a-sleek .a-veil .a-view::after{opacity:1}
.lv.a-sleek:not(.a-snap) .a-view::after{transition:opacity .6s cubic-bezier(.4,0,.2,1)}

/* the file windows (W0, W4, W13): Documents, with the project beside it and the one action, Organize; 13px rows of
   32px. Two steps, one at a time: the uploaded names take the room's convention where they stand, top to bottom
   (a-rnm); then the renamed list fades (a-out2) and the files appear in their numbered folders, row by row from the top
   (a-pre2 sets each row just below its place, unseen; --j is its place in the tree) */
.lv.a-sleek .a-dtools,.lv.a-sleek .a-selall,.lv.a-sleek .a-dr .a-cb2,.lv.a-sleek .a-pen,.lv.a-sleek .a-rs{display:none!important}
.lv.a-sleek .a-acts>.a-btn:not(.a-orgb){display:none}
.lv.a-sleek .a-dlw{padding:0}
.lv.a-sleek .a-dl{margin-top:2px}
.lv.a-sleek .a-dr,.lv.a-sleek .a-dfo{height:32px;font-size:13px;gap:10px;padding:0 6px 0 32px;transform:translateY(calc(var(--b) * 1.0667))}
.lv.a-sleek .a-dfo{padding-left:6px;color:var(--ink)}
.lv.a-sleek .a-dfo b{font-weight:600}
.lv.a-sleek .a-dfo .a-cn{font-size:12.5px;color:var(--ink4)}
.lv.a-sleek .a-dr{color:var(--ink2)}
.lv.a-sleek .a-dr .a-fi{width:12px;height:14px;stroke:#8A93A1}
.lv.a-sleek .a-dfo .a-fi{width:15px;height:13px;stroke:#6F7887}
.lv.a-sleek .a-dn{height:19px}
.lv.a-sleek .a-dr .a-d1,.lv.a-sleek .a-dr .a-d2{display:block!important;line-height:19px}
.lv.a-sleek .a-d1{opacity:0}.lv.a-sleek .a-d2{opacity:1}
.lv.a-sleek .a-orig .a-dr{transform:translateY(calc(var(--a) * 1.0667));padding-left:6px}
.lv.a-sleek .a-orig .a-dr .a-d1{opacity:1}.lv.a-sleek .a-orig .a-dr .a-d2{opacity:0;transform:translateY(3px)}
.lv.a-sleek .a-orig.a-rnm .a-dr .a-d1{opacity:0}.lv.a-sleek .a-orig.a-rnm .a-dr .a-d2{opacity:1;transform:none}
.lv.a-sleek .a-orig .a-dfo{display:flex;opacity:0}
.lv.a-sleek .a-orig.a-out2 .a-dr{opacity:0}
.lv.a-sleek .a-pre2 .a-dr,.lv.a-sleek .a-pre2 .a-dfo{opacity:0;transform:translateY(calc(var(--b) * 1.0667 + 8px));transition:none!important}
/* a name is replaced, not doubled: the old name fades out, then the new one fades in */
.lv.a-sleek:not(.a-snap) .a-dr .a-d1{transition:opacity .2s cubic-bezier(.4,0,1,1) calc(var(--i,0) * 70ms)}
.lv.a-sleek:not(.a-snap) .a-dr .a-d2{transition:opacity .34s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 70ms + 170ms),transform .34s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 70ms + 170ms)}
.lv.a-sleek:not(.a-snap) .a-orig.a-out2 .a-dr{transition:opacity .3s cubic-bezier(.4,0,.2,1)}
.lv.a-sleek:not(.a-snap) .a-main:not(.a-orig) :is(.a-dr,.a-dfo){transition:opacity .45s cubic-bezier(.2,.7,.2,1) calc(var(--j,0) * 65ms),transform .55s cubic-bezier(.2,.7,.2,1) calc(var(--j,0) * 65ms)}
.lv.a-sleek .a-acts,.lv.a-sleek .a-prg2{display:none!important}
.lv.a-skin.a-sleek .a-head .a-orgb{display:inline-flex!important;margin-left:auto}
/* the schedule editor (W8): the list of schedules, the draft and the cited document; under 860 the draft alone */
.lv.a-sleek.a-nar .a-ed>.a-nav,.lv.a-sleek.a-nar .a-ed>.a-r{display:none!important}
.lv.a-sleek.a-nar .a-ed{grid-template-columns:1fr!important}
.lv.a-sleek .a-ed{gap:14px}
.lv.a-sleek .a-ed>.a-nav{border:0;background:transparent}
/* a medium column shows a page a little less enlarged, so a line still reads whole */
.lv.a-sleek.a-nar:not(.a-phone) .a-viewer :is(.a-wimg,.a-scan){width:114%;margin-left:-7%}
/* a draft and its cited document side by side need 860 box px; narrower, the draft alone */
:is(.lv-workspace,.lv-report,.lv-schedule).lv.a-sleek.a-nar .a-split{grid-template-columns:1fr!important}
:is(.lv-workspace,.lv-report,.lv-schedule).lv.a-sleek.a-nar .a-split>.a-r{display:none}
/* a scanned ledger or form runs nearly edge to edge: it is shown at its full width */
.lv.a-sleek.lv-report .a-r .a-scan{width:104%!important;margin-left:-2%!important}
.lv.a-sleek.lv-editor .a-r .a-scan{width:104%!important;margin-left:-2%!important}

/* v62: the other windows in the frameless style */
/* a cited document is shown at its full width: nothing on its page is cut */
.lv.a-sleek .a-r :is(.a-scan,.a-wimg),.lv.a-sleek .a-drawer :is(.a-scan,.a-wimg){width:100%!important;margin-left:0!important}
/* tables and lists keep their tabs; search boxes and secondary buttons go */
.lv.a-sleek .a-wbar,.lv.a-sleek .a-dtools,.lv.a-sleek .a-srch{display:none!important}
/* missing documents: the list beside the document; one column shows the list alone */
.lv-missing.lv.a-sleek.a-phone .a-mx2{grid-template-columns:1fr!important}
.lv-missing.lv.a-sleek.a-phone .a-mx2>.a-r{display:none}
.lv-missing.lv.a-sleek .a-mlw{padding:0}
/* a redline (compare, the SAFE comparison): one column shows the redline alone */
:is(.lv-compare,.lv-safecmp).lv.a-sleek.a-phone .a-cm{grid-template-columns:1fr!important}
:is(.lv-compare,.lv-safecmp).lv.a-sleek.a-phone .a-cm>.a-cmp{display:none}
/* a worksheet beside the clause behind an answer: one column shows the worksheet alone, across its width */
.lv-matrix.lv.a-sleek.a-phone .a-mx{grid-template-columns:1fr!important;gap:0}
.lv-matrix.lv.a-sleek.a-phone .a-mx>.a-drawer{display:none}
.lv-matrix.lv.a-sleek.a-phone .a-tbl table{width:100%!important}
/* the representation and its source: under 860 the agreement and the schedule entry, stacked */
.lv-repsource.lv.a-sleek.a-nar .a-r{display:none!important}
/* the tie-out: the election opens under its cell, at the right of the table */
/* one upload, one draft: in one column the two uploads stack and the drafted schedules run in one list */
.lv-upload.lv.a-sleek.a-phone .a-scheds{grid-template-columns:1fr}
.lv-upload.lv.a-sleek .a-drop,.lv-upload.lv.a-sleek .a-scheds{border-radius:8px}
.lv.a-sleek .a-wtabs .a-btn,.lv.a-sleek .a-wtabs~.a-btn{display:none!important}
:is(.lv-officers,.lv-safes).lv.a-sleek.a-phone .a-tbl,:is(.lv-officers,.lv-safes).lv.a-sleek.a-phone .a-tbl table{width:100%!important;max-width:none!important}
/* the opening's split view: the upload as it arrived sits under the organized files at the same row pitch */
main.main-wrapper .ord-app>.lv.a-sleek .a-orig .a-dr{transform:translate(var(--shift,0px),calc(var(--a) * 1.0667))}
main.main-wrapper .ord-app .ord-tags span{font-family:'IBM Plex Sans',system-ui,sans-serif;border-radius:5px}
main.main-wrapper .ord-app,.ord-app{border-radius:10px}

/* missing signatures (W25): the Document List, where a document missing a signature carries the app's indicator, a
   grey pill with a pen nib, at the right of its row; the indicators appear one after another (a-wait lifts), then the
   board consent comes into focus with the indicator's label (a-nofoc lifts) */
.lv-docsig .a-sgl{padding-top:2px;flex:1;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 26px),transparent)}
.lv-docsig .a-sgf,.lv-docsig .a-sgr{display:flex;align-items:center;gap:10px;height:32px;font-size:13px;padding:0 8px}
/* a flagged document's name is what the window is about: it wraps to a second line rather than losing its end */
.lv-docsig .a-sgr.a-ms{height:auto;min-height:32px;padding-top:7px;padding-bottom:7px}
.lv-docsig .a-ms .a-sgn{white-space:normal;line-height:17px;overflow:visible}
.lv-docsig .a-sgf{color:var(--ink)}.lv-docsig .a-sgf b{font-weight:600}.lv-docsig .a-sgf .a-cn{margin-left:auto;font-size:12.5px;color:var(--ink4)}
.lv-docsig .a-sgf .a-fi{width:15px;height:13px;stroke:#6F7887}
.lv-docsig .a-sgr{padding-left:34px;color:var(--ink2);border-radius:6px}
.lv-docsig .a-sgr .a-fi{width:12px;height:14px;stroke:#8A93A1}
.lv-docsig .a-sgn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lv-docsig .a-sig{position:relative;flex:none;margin-left:6px;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:#ECEEF2}
.lv-docsig .a-nib{width:14px;height:14px;fill:none;stroke:#465061;stroke-width:1.25;stroke-linejoin:round}
.lv-docsig .a-foc{background:var(--sel)}
.lv-docsig .a-foc .a-sgn{color:var(--ink)}
.lv-docsig .a-tip{position:absolute;right:-2px;bottom:calc(100% + 9px);white-space:nowrap;font-size:12px;line-height:1;color:#fff;background:#16181D;padding:6px 9px;border-radius:5px}
.lv-docsig .a-tip::after{content:"";position:absolute;right:14px;top:100%;border:5px solid transparent;border-top-color:#16181D}
.lv-docsig .a-wait .a-sig{opacity:0;transform:scale(.85)}
.lv-docsig .a-nofoc .a-foc{background:transparent}.lv-docsig .a-nofoc .a-foc .a-sgn{color:var(--ink2)}
.lv-docsig .a-nofoc .a-tip{opacity:0;transform:translateY(3px)}
.lv-docsig:not(.a-snap) .a-sig{transition:opacity .4s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 90ms),transform .4s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 90ms)}
.lv-docsig:not(.a-snap) .a-foc,.lv-docsig:not(.a-snap) .a-tip{transition:background-color .45s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.2,.7,.2,1) .12s,transform .4s cubic-bezier(.2,.7,.2,1) .12s}

/* every slot's still picture has the shape its window draws at (app.js SLOTS: height / width, the most height), so the
   slot keeps its height when the window replaces the picture; a phone's picture keeps nov.css's 430px. A document
   picture (is-doc) is not a window and keeps its own shape */
.nov-win-poster{border-radius:10px}
.nov-prodv-win>.nov-win-poster{aspect-ratio:1/.62;max-height:640px;object-fit:cover;object-position:0 0}
.nov-hero-window>.nov-win-poster{aspect-ratio:1/.64;max-height:640px;object-fit:cover;object-position:0 0}
.nov-walk-win>.nov-win-poster{aspect-ratio:1/.66;max-height:620px;object-fit:cover;object-position:0 0}
.nov-win:not(.is-doc)>.nov-win-poster{aspect-ratio:1/.78;max-height:560px;object-fit:cover;object-position:0 0}
/* the cap table windows are Word pictures (round 5): their posters keep the picture's own shape */
:is(.nov-win,.nov-prodv-win):is([data-win="3"],[data-win="18"],[data-win="19"])>.nov-win-poster{aspect-ratio:auto!important;max-height:none!important;object-fit:contain!important}
/* in a wider slot (two columns' room) the list breathes: taller rows, so it fills the panel instead of ending halfway */
.lv-docsig:not(.a-phone) .a-sgf,.lv-docsig:not(.a-phone) .a-sgr{height:40px}
.lv-docsig:not(.a-phone) .a-sgr.a-ms{height:auto;min-height:40px}
/* in a small slot (a phone's) the focused document's label sits inside its own row, under its indicator, so it covers
   no other row */
.lv-docsig.a-small .a-sgr.a-foc{align-items:flex-start;padding-bottom:38px}
.lv-docsig.a-small .a-foc .a-sig{margin-top:-2px}
.lv-docsig.a-small .a-tip{bottom:auto;top:calc(100% + 21px)}
.lv-docsig.a-small .a-tip::after{display:none}

/* v63: fixes from the published-site review (Nov 11) */
/* a document scrolled to its passage starts under a short fade, so no cut line shows at the top of the pane */
.lv.a-sleek .a-viewer .a-view::before{content:"";position:absolute;left:0;right:0;top:0;height:16px;z-index:2;pointer-events:none;background:linear-gradient(#fff,rgba(255,255,255,0))}
/* the SAFE comparison in one column: its first frame is the redline itself, before its changes light up */
.lv.lv-safecmp.a-sleek.a-phone .a-before .a-cm{grid-template-columns:1fr!important}
.lv.lv-safecmp.a-sleek.a-phone .a-before .a-r{visibility:visible}
/* the tie-out's election preview spans its frame */
.lv.a-sleek .a-pop2 .a-crop>div{width:calc(100% + 64px)!important}
/* the total belongs to the shares column, so it goes when one column of answers shows */
/* a worksheet in one column gives the file name most of the width */
.lv-matrix.lv.a-sleek.a-phone .a-tbl th:first-child{width:70%!important}
/* file names in a one-column file window in a slot of 450px or more read whole: a slightly smaller row, a narrower
   indent, a little less margin (a small slot keeps the larger row; its names may end in an ellipsis, and W25's flagged
   names wrap) */
.lv.a-sleek.a-phone:not(.a-small):is(.lv-organize,.lv-docsig) .a-body{padding-left:14px;padding-right:14px}
.lv.a-sleek.a-phone:not(.a-small).lv-organize .a-dr{font-size:12.5px;padding-left:28px}
.lv.a-sleek.a-phone:not(.a-small).lv-organize .a-orig .a-dr{padding-left:6px}
.lv-docsig.a-phone:not(.a-small) .a-sgf,.lv-docsig.a-phone:not(.a-small) .a-sgr{font-size:12px}
.lv-docsig.a-phone:not(.a-small) .a-sgr{padding-left:16px;padding-right:2px;gap:8px}
.lv-docsig.a-phone:not(.a-small) .a-sgf{gap:8px}
.lv-docsig.a-phone:not(.a-small) .a-sig{padding:0 6px}
.lv-docsig.a-phone:not(.a-small) .a-sgr.a-ms{height:32px;min-height:0;padding-top:0;padding-bottom:0}
.lv-docsig.a-phone:not(.a-small) .a-ms .a-sgn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-docsig.a-phone:not(.a-small) .a-sig{margin-left:2px}

/* v64: the quieter style (Nov 11; Connor: "still a little cartoonish", "some of the citation stuff looks weird"; the
   chrome and the citation box caused it, not the font, so the window face stays IBM Plex Sans). Highlights are a soft
   tint with no outline: a citation tints its words as one shape (the
   citation's rectangles paint into one group that multiplies onto the page, so overlapping rectangles leave no seams),
   with a slate underline; a cited passage gets the same tint. Corners 6px on the panel and 4px inside; no inner card
   borders; labels as plain muted text ("Draft · file name"); a crisp 1px edge, a light shadow and no glow */
main.main-wrapper .lv.a-sleek{border-radius:6px!important;
  box-shadow:0 0 0 1px rgba(15,23,42,.11),0 1px 2px rgba(15,23,42,.04),0 10px 28px -20px rgba(15,23,42,.22)!important}
main.main-wrapper :is(.nov-dark,.nov-flow,.nov-phero,.nov-hero,.nov-chapter,.nov-practice,.nov-sol-band.is-dark) .lv.a-sleek{
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 18px 40px -28px rgba(0,0,0,.7)!important}
.nov-win-poster{border-radius:6px}
main.main-wrapper .ord-app,.ord-app{border-radius:6px}
.lv.a-skin.a-sleek .a-btn{border-radius:4px}
/* document panes: no card around each, a hairline between them; the label is plain muted text before the file name */
.lv.a-sleek .a-viewer{border:0!important;border-radius:0!important}
.lv.a-sleek .a-split,.lv.a-sleek .a-ed{gap:0!important}
.lv.a-sleek .a-split>.a-viewer+.a-viewer,.lv.a-sleek .a-ed>.a-viewer+.a-viewer{border-left:1px solid var(--line2)!important}
.lv.a-sleek .a-ed>.a-nav{border-right:1px solid var(--line2)!important}
.lv.a-sleek .a-viewer .a-ph{padding:0 14px;height:40px}
.lv.a-skin.a-sleek .a-tag{background:none!important;padding:0!important;border-radius:0!important;font-size:12.5px!important;font-weight:500;color:var(--ink3)}
.lv.a-sleek .a-ph .a-tag::after{content:"\00B7";margin-left:8px;color:var(--ink4);font-weight:400}
.lv.a-sleek .a-ph{gap:8px}
.lv.a-sleek .a-ph .a-fn{color:var(--ink2);font-size:12.5px}
/* a citation: one soft slate tint over its words, rounded 2px, underlined; it fades in */
.lv.a-sleek .a-cite{mix-blend-mode:multiply}
.lv.a-sleek .a-cr{mix-blend-mode:normal!important;border-radius:2px}
.lv.a-sleek .a-cite.a-on .a-cr{background:#E0E6EF!important;box-shadow:inset 0 -1.5px 0 #50607A!important}
/* a cited passage: the same tint, no outline */
.lv.a-sleek .a-hr{background:#E3E8EF!important;border-radius:2px;box-shadow:none!important}
.lv.a-sleek .a-bx{box-shadow:none!important;background:rgba(80,96,122,.10);border-radius:2px}
.lv.a-sleek:not(.a-snap) .a-cr{transition:background-color .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1)}
/* selected rows and lists inside: 4px at most */
.lv.a-sleek .a-sgr,.lv.a-sleek .a-ni,.lv.a-sleek .a-si,.lv.a-sleek .a-cf{border-radius:3px}

/* every other emphasis in the same language, tint and underline, never an outlined box or a pill: an answer that matters
   in a worksheet, a changed clause in a redline, a document marked missing, a status, a file chip, the split view's
   tags; the missing-signature indicator keeps its shape, at 4px */
.lv.a-sleek .a-tbl td.a-gap{background:#E8ECF2!important;box-shadow:inset 0 -1.5px 0 #50607A!important}
.lv.a-sleek .a-nohl td.a-gap{background:transparent!important;box-shadow:inset 0 -1.5px 0 rgba(80,96,122,0)!important}
.lv.a-sleek .a-chg{box-shadow:none!important;background:#EDF0F4;border-radius:2px}
.lv.a-sleek .a-nohl .a-chg{background:transparent}
.lv.a-sleek.lv-safecmp .a-chg{background:#E7EBF1}
.lv.a-sleek .a-miss{background:none;color:var(--ink);padding:0;font-size:12px;font-weight:600;letter-spacing:0;text-decoration:underline;text-decoration-color:#50607A;text-decoration-thickness:1.5px;text-underline-offset:3px}
.lv.a-skin.a-sleek .a-stp{background:none!important;border:0!important;border-radius:0!important;padding:0!important;font-size:12px!important;color:var(--ink3)!important}
.lv.a-skin.a-sleek .a-stp.a-str{color:var(--ink)!important;font-weight:500!important}
.lv.a-sleek .a-chip{border-radius:2px;background:#EEF1F5}
.lv-docsig .a-sig{border-radius:4px!important;background:#E8ECF2!important}
.lv-docsig .a-tip{border-radius:4px}
main.main-wrapper .ord-app .ord-tags span{border:0!important;border-radius:2px!important;background:rgba(255,255,255,.92)!important;color:#687283!important;padding:3px 5px!important}
/* the active citation and the passage it cites read at a glance (one clear step darker than the soft tint), so a
   window's finding stands out from the citations around it; a document marked missing is issue text in the window
   convention's muted rose, not a link-like underline; one-column worksheets on a phone keep the answer's header whole */
.lv.a-sleek .a-cite.a-on .a-cr{background:#D3DBE7!important;box-shadow:inset 0 -2px 0 #3D4A60!important}
.lv.a-sleek .a-hr{background:#D6DDE8!important}
.lv.a-sleek .a-miss{color:#6E3348;font-weight:500;text-decoration:none}
.lv-matrix.lv.a-sleek.a-phone.a-small .a-tbl th:first-child{width:62%!important}
/* a document picture's passage in focus (the spot pictures: Schedule 3.9, Schedule 3.7, the summary of ownership):
   lifted in place under the dimmed page, with a hairline and a soft shadow, not a dark outline, and no zoom */
.spot.doc .win .fz{transform:none!important;box-shadow:0 0 0 1px rgba(15,23,42,.10),0 8px 20px -14px rgba(15,25,40,.35)!important;border-radius:2px!important}
/* window titles in the site's headline serif (Connor, Nov 11: "i like 1"): Newsreader 500 at 18px, slightly tight; the
   rest of the app chrome stays IBM Plex Sans and document pages keep their own face. The selector repeats .lv so it
   outranks the window-font rules, which reach the title through their :not() lists */
.lv.lv.lv.lv.a-skin.a-sleek .a-app .a-head h1{font-family:Newsreader,Georgia,'Times New Roman',serif!important;font-weight:500!important;font-size:18px!important;letter-spacing:-.01em!important;font-optical-sizing:auto}
/* v65 no blur anywhere (Connor, round 5): the export's dim rules keep their fade (veil, opacity, saturate) and lose the blur */
.win.dim .base{filter:saturate(.6)!important}
.lv .v-veil,.gs,.gs-win{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.lv .v-dimp,.lv.v-on .v-dimp,.lv-editor.v-on .v-dt tr:not(.v-hit) td,.lv.v-on .v-page .v-hd{filter:none!important}
.lv-workspace.v-on .v-wside{filter:saturate(.6)!important}
/* v66 Compare (round 5): a narrower list that ends on "+N more", the pane titled by the agreement alone, and the
   redline cropped to its text (change bars to the right margin, title to the last changed clause) so it reads larger */
.lv-compare.lv.a-sleek:not(.a-phone) .a-cm{grid-template-columns:204px minmax(0,1fr)}
.lv-compare .a-cmp .a-more{padding-left:34px;color:var(--ink3,#7A808C);font-size:12px}
.lv-compare.lv.a-sleek .a-r .a-wimg{width:119.05%!important;margin-left:-7.14%!important}
/* v68 the Home opening (round 5) plays once and rests. The files as uploaded slide away to the left (no divider:
   order.js) and the split slides in from the right: the documents keep the left 38% with every folder
   closed but 03 Material Contracts, and the disclosure schedule drafted from them takes the right; when its citation
   to the Halden MSA lights, that file's row lights with it. A narrow opening (under 860px) stacks them: the cited folder
   above, the schedule below. The opening keeps its height throughout. The rows are the mock's own (children 1-5 the
   folders, 9 the office lease, 12 the Halden MSA), placed for the split by --b like the organized list itself */
.ord.ord-auto .ord-handle i{pointer-events:none!important;cursor:default}
[data-nov="hero"] [data-nov="win"].is-split{clip-path:inset(-80px 0 -80px -80px)}
[data-nov="hero"] [data-nov="win"].is-split.is-rest{clip-path:none}
[data-nov="hero"] [data-nov="win"].is-split.is-slid .ord>.lv{transform:translateX(calc(-1 * var(--hero-w,1000px)));transition:transform .95s cubic-bezier(.65,0,.35,1)}
[data-nov="hero"] [data-nov="win"].is-split.is-rest .ord>.lv{visibility:hidden}
[data-nov="hero"] [data-nov="win"].is-split :is(.ord-clip,.nov-hero-next){transform:translateX(var(--hero-w,1000px))!important;transition:none!important}
[data-nov="hero"] [data-nov="win"].is-split.is-slid :is(.ord-clip,.nov-hero-next){transform:none!important;transition:transform .95s cubic-bezier(.65,0,.35,1)!important}
main.main-wrapper [data-nov="hero"] [data-nov="win"].is-split .ord-app .ord-clip{clip-path:none!important}
[data-nov="hero"] [data-nov="win"].is-split :is(.ord-handle,.ord-tags,.ord-range){display:none!important}
main.main-wrapper [data-nov="hero"] [data-nov="win"].is-split:not(.is-stack) .ord-app .lv.a-skin{width:38cqw!important}
main.main-wrapper [data-nov="hero"] [data-nov="win"].is-split.is-stack .ord{height:var(--hero-h)}
[data-nov="hero"] [data-nov="win"].is-split .nov-hero-next{top:0;left:38%;right:0}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .nov-hero-next{top:var(--hero-top,39%);left:0}
[data-nov="hero"] [data-nov="win"].is-split .nov-hero-next .lv{box-shadow:none!important;border-radius:0 9px 9px 0;border-left:1px solid #E3E7ED}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .nov-hero-next .lv{border-radius:0 0 9px 9px;border-left:0;border-top:1px solid #E3E7ED}
main.main-wrapper [data-nov="hero"] [data-nov="win"].is-split .lv-organize .a-dl{-webkit-mask-image:none;mask-image:none}
/* the organized list's closed folders (app.js fold): their files are in the uploaded list, not the organized one */
.lv-organize .a-main:not(.a-orig) .a-dr.a-xfold{opacity:0!important}
/* a missing document's name wraps on a phone rather than losing its end */
.lv-missing.lv.a-sleek.a-phone .a-mrow{height:auto;min-height:40px;padding-top:9px;padding-bottom:9px}
.lv-missing.lv.a-sleek.a-phone .a-mrow .a-mtt{white-space:normal;overflow:visible;text-overflow:clip}
/* v69 clean edges (round 5): a pane's title (a document's file name) wraps to a second line rather than losing its
   end; the "+N more" rows (app.js more) read as quiet text in the list they end */
.lv.a-sleek .a-ph{height:auto!important;min-height:40px;align-items:center;flex-wrap:wrap;row-gap:2px;padding-top:9px;padding-bottom:9px}
.lv.a-sleek .a-ph .a-fn,.lv.a-sleek .a-ph .a-fn span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.lv .a-more,.lv .a-more td{color:var(--ink3,#6B7080)!important;font-weight:400!important;background:none!important}
.lv .a-sc.a-more{justify-content:flex-start}
.lv .a-ni.a-more{font-size:11px}
/* the six SAFEs all fit at every width: rows a little tighter */
:is(.lv-safes,.lv-officers).lv.a-sleek.a-tight .a-tbl td{height:var(--trh,36px)!important;padding-top:3px!important;padding-bottom:3px!important}
:is(.lv-safes,.lv-officers).lv.a-sleek.a-tight .a-tbl td :is(small,.a-sref){display:none}
/* v70 (Connor, round 5): no label row above a document ("Draft · ...", "Source document · ...", "Redline · ..."); the
   document itself starts the pane, at a page edge or a section's top (app.js snap), so its top fade is not needed */
.lv.a-sleek .a-viewer>.a-ph{display:none!important}
.lv.a-sleek .a-view::before{display:none!important}
/* v71 the cap table windows as Word pages (Connor, round 5: "should all look like a Word doc"): the tie-out page from
   nv/review/r5/cap/gen_certus.py, landscape on a computer and portrait on a phone, at the slot's full width */
.spot.doc:has(>.tie-p){max-width:none}
.spot.doc .win.tie-n{display:none}
.spot.doc{container-type:inline-size}
@container (max-width:559px){.spot.doc .win.tie-p{display:none}.spot.doc .win.tie-n{display:block}}
/* a Word picture's title bar on a phone: the file name whole, no "Read-only" pill beside it */
@container (max-width:559px){.spot.doc .wbar .wx{display:none}.spot.doc .wbar .wt{overflow:visible;white-space:normal}}
/* the request list's file rows: the date and company shorten first, the document's title stays whole */
.lv-reqlist .a-tfi .a-tfp{flex:0 100 auto;min-width:0;white-space:pre;overflow:hidden;text-overflow:ellipsis}
.lv-reqlist .a-tfi .a-tft{flex:none;overflow:visible}
.lv-reqlist .a-fs.a-fs2 p{white-space:normal!important}
.lv-reqlist.lv.a-sleek:not(.a-phone) .a-rlx{grid-template-columns:minmax(0,1fr) 262px}
.lv-reqlist.lv.a-sleek .a-fs{padding-top:5px;padding-bottom:5px}
/* r6:hero-split (written by nv/review/r5/cap/mkroom.py from certus_room.json; edit there) */
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-dr{opacity:0}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-hmore{display:none}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo0{--b:0px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo1{--b:30px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo2{--b:60px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f2.a-k0{opacity:1;--b:90px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f2.a-k1{opacity:1;--b:131.25px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f2.a-k2{opacity:1;--b:172.5px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f2.a-k3{opacity:1;--b:213.75px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo3{--b:255.0px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f3.a-k0{opacity:1;--b:285.0px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo4{--b:326.25px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f4.a-k0{opacity:1;--b:356.25px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-fo5{--b:397.5px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>.a-f5.a-k0{opacity:1;--b:427.5px!important}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>:is(.a-f2,.a-f3,.a-f4,.a-f5){height:44px;align-items:flex-start;padding-top:4px;border-radius:3px}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>:is(.a-f2,.a-f3,.a-f4,.a-f5) .a-dn{height:38px}
[data-nov="hero"] [data-nov="win"].is-split .ord .a-rows>:is(.a-f2,.a-f3,.a-f4,.a-f5) .a-d2{white-space:normal}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .ord .a-rows>:is(.a-dfo,.a-f2,.a-f3,.a-f4,.a-f5){opacity:0}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .ord .a-rows>.a-fo2{opacity:1;--b:0px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .ord .a-rows>.a-cited{opacity:1;--b:30px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack .ord .a-rows>.a-hmore{display:flex;opacity:1;--b:71.25px!important;color:var(--ink3,#6B7080);font-size:12px}
[data-nov="hero"] [data-nov="win"].is-cited .ord .a-rows>.a-cited{background:#E1E7F0}
[data-nov="hero"] [data-nov="win"] .ord .a-rows>.a-cited{transition:background-color .45s cubic-bezier(.4,0,.2,1)}
/* /r6:hero-split */
/* v72 the full pass (round 6, design and lawyer reviews of 2026-11-11) */
/* no fades: the phone windows' soft left and right edges, the organized and uploaded lists' fades, the signature list's */
main.main-wrapper .lv.a-phone::before,main.main-wrapper .lv.a-phone::after{display:none!important}
main.main-wrapper .lv-organize .a-dl,main.main-wrapper .ord-app>.lv .a-rows,.lv-docsig .a-sgl{-webkit-mask-image:none!important;mask-image:none!important}
/* one emphasis: the finding is a slate tint (with the 1.5px rule under a table cell); a link keeps its own underline,
   so a lit passage in a document is the tint alone, never a second bar under the link */
.lv.a-sleek .a-cite.a-on .a-cr{background:#E1E7F0!important;box-shadow:0 0 0 2px #E1E7F0!important}
.lv .a-bx,.lv.a-sleek .a-bx{background:#E1E7F0!important;box-shadow:0 0 0 3px #E1E7F0!important;border-radius:0!important;mix-blend-mode:multiply}
.spot.doc .win .fx{position:absolute;background:#E1E7F0;box-shadow:0 0 0 2px #E1E7F0;mix-blend-mode:multiply;pointer-events:none}
/* Word pages as Word draws them: square, a hairline edge, no shadow, on the window's grey */
.spot.doc{background:#F4F5F7}
.spot.doc .win{border-radius:0!important;box-shadow:0 0 0 1px #E3E6EB!important}
/* a phone's window chrome is sized to its content: a smaller title and buttons, and a smaller Word title bar */
.lv.a-sleek.a-phone .a-head{height:48px!important}
.lv.lv.lv.lv.a-skin.a-sleek.a-phone .a-app .a-head h1{font-size:15px!important}
.lv.a-sleek.a-phone .a-head .a-btn{font-size:11px!important;padding:5px 8px!important}
@container (max-width:559px){.spot.doc .wbar{height:32px;font-size:11.5px;padding:0 10px;gap:8px}.spot.doc .wbar .wb{width:15px;height:17px;line-height:17px;font-size:9px}
  .spot.doc .win{margin:10px 12px 0!important}}
/* two documents side by side keep a gutter at the seam: the draft shows its own margins */
.lv.a-sleek:not(.a-nar) :is(.a-split,.a-ed)>.a-l .a-pg>.a-wimg{width:106%!important;margin-left:-3%!important}
/* the editor's schedule list: wide enough to read, padded off the draft */
.lv.a-sleek:not(.a-nar) .a-ed{grid-template-columns:96px 1fr 1fr!important}
.lv.a-sleek .a-ed>.a-nav{padding:6px 10px 6px 4px;border-right:1px solid var(--line2)!important}
/* the new-schedules form: rows divided by hairlines, not cards inside cards */
.lv-upload.lv.a-sleek .a-drop{border:0!important;border-bottom:1px solid var(--line2)!important;padding:12px 0!important;background:none!important;border-radius:0!important}
.lv-upload.lv.a-sleek .a-dic{display:none!important}
.lv-upload.lv.a-sleek .a-file{border:0!important;background:none!important;padding:0!important;border-radius:0!important}
.lv-upload.lv.a-sleek.a-phone .a-drop{display:grid!important;grid-template-columns:1fr;gap:4px}
.lv-upload.lv.a-sleek.a-phone .a-drop small{display:none}
.lv-upload.lv.a-sleek.a-phone .a-file{margin-left:0!important}
/* missing documents: rows run full width (no inset box), and the open document carries the finding tint */
.lv-missing.lv.a-sleek .a-mg{border:0!important;background:none!important;margin:0!important}
.lv-missing.lv.a-sleek .a-mrow.a-mon{background:#E8ECF2!important;box-shadow:inset 0 -1.5px 0 #50607A!important}
/* missing signatures: rose text, as W5's "Missing"; the board consent carries the finding tint */
.lv-docsig .a-sig{background:none!important;padding:0!important;border-radius:0!important;height:auto!important;color:#6E3348;font-size:12px;font-weight:500;white-space:nowrap}
.lv-docsig .a-sgr.a-foc{padding-bottom:0!important;align-items:center!important;background:#E8ECF2!important;box-shadow:inset 0 -1.5px 0 #50607A}
.lv-docsig .a-nofoc .a-sgr.a-foc{background:transparent!important;box-shadow:none}
.lv-docsig .a-sgm .a-sgn{color:var(--ink3,#6B7080)!important;font-size:12px;padding-left:24px}
.lv-docsig.a-phone .a-sgn{white-space:normal!important}
/* officers: an issue reads in rose, and the table reaches the window's right edge */
.lv-officers .a-tbl td.a-gap .a-ic,.lv-officers .a-tbl td.a-gap .a-sref{color:#6E3348!important}
:is(.lv-officers,.lv-safes,.lv-matrix).lv.a-sleek .a-wsp{padding-right:14px}
/* worksheet answers are words (a check mark reads as a pass), and the safes' MFN answer is the finding */
.lv-matrix .a-tbl td .a-ic svg,.lv-safes .a-tbl td .a-ic svg{display:none}
.lv-safes .a-tbl .a-no{color:var(--ink3,#6B7080)}
/* the request list: the document's title, its date beside it; the internal note is the finding */
.lv-reqlist .a-tfi .a-tft{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.lv-reqlist .a-tfi .a-tfd{flex:none;margin-left:auto;padding-left:10px;color:var(--ink3,#6B7080);font-size:11.5px}
.lv-reqlist .a-fs.a-fnd{background:#E8ECF2;box-shadow:inset 0 -1.5px 0 #50607A}
.lv-reqlist .a-fs h4{text-transform:none!important;letter-spacing:0!important;font-size:11.5px!important}
/* the side letter redline: every change keeps its margin bar; only the added MFN clause is tinted */
.lv-safecmp .a-chg{background:none!important;border-radius:0!important}
.lv-safecmp .a-fnd{background:#E1E7F0!important}
.lv-safecmp .a-page u{text-decoration:underline;text-decoration-thickness:1px}
/* rep to schedule (W12): the schedule entry is the finding; the rep keeps its place but not a tint; on a phone the
   text is ragged-right, not justified into gaps */
.lv-repsource .a-mpg mark{background:none!important;color:inherit}
.lv-repsource .a-ent{background:#E8ECF2;box-shadow:inset 0 -1.5px 0 #50607A;padding:4px 6px;margin:0 -6px}
.lv-repsource .a-ct{color:#0563C1;text-decoration:underline;text-decoration-thickness:1px}
.lv-repsource.a-phone .a-page,.lv-repsource.a-phone .a-page p{text-align:left!important}
.lv-safes .a-tbl .a-sref{white-space:normal!important}
/* the request list drilled down: the status row gives way when the internal note would be cut (app.js dates) */
.lv-reqlist.a-fdt .a-fs:has(.a-stp){display:none}
/* r6 fill: the missing documents' opened categories show their caret open (app.js mopen opens them); the request
   list's dates give way when a title would be cut (app.js dates) */
.lv-missing .a-mg:not(.a-mcol) .a-car{transform:rotate(90deg)}
.lv-reqlist.a-nodate .a-tfi .a-tfd{display:none}
/* the request list's Folder Details hold their internal note whole in a window's height: a little less leading and
   padding in each section */
.lv-reqlist .a-fs{padding:5px 14px 6px}
.lv-reqlist .a-fs p{font-size:12px;line-height:1.34}
/* the rep and its schedule in one column: the column takes the window's width (the source page beside it is hidden),
   and the schedule takes the height its entry and note need, the agreement the rest */
.lv-repsource.lv.a-sleek.a-nar .a-rpx{grid-template-columns:minmax(0,1fr)!important}
.lv-repsource.lv.a-sleek.a-nar .a-rsl .a-ds{flex:0 0 auto;max-height:64%}
.lv-repsource.lv.a-sleek.a-nar .a-rsl .a-ds .a-view{height:auto;position:relative}
/* r6 a draft reads larger (the reviews: no page shrunk to an unreadable size): a draft alone in a medium column shows
   its page from 74 to 742 of 816 page px (its text runs 96-722), and a draft beside its cited document from 60 to 756,
   still leaving a gutter at the seam; the drafts' text is about 7% and 10% larger than before */
.lv.a-sleek.a-nar:not(.a-phone) .a-viewer.a-l :is(.a-wimg,.a-scan){width:122%;margin-left:-11%}
.lv.a-sleek:not(.a-nar) :is(.a-split,.a-ed)>.a-l .a-pg>.a-wimg{width:117.2%!important;margin-left:-8.6%!important}
/* ---- r6b documents at a real page size, and a draft's cited document as a card (Connor, Nov 11 night; app.js paper,
   excerpt, place). Every page keeps Letter proportions at 0.8 of Word's 100% (0.72 in a small slot); a pane narrower
   than the page shows its left part and a page-edge shade on the right; a pane shorter than the page ends on a blank
   band (app.js ends) under a page-edge shade at the bottom ---- */
.lv.a-sleek .a-view.a-cutr::after{content:"";position:absolute;top:0;bottom:0;right:0;width:30px;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,rgba(228,232,238,0),rgba(228,232,238,.92))}
/* the draft alone: its cited document's pane gives way to the card (the opening keeps its own layout) */
:is(.lv-workspace,.lv-report,.lv-schedule).lv.a-sleek .a-split{grid-template-columns:minmax(0,1fr)!important}
:is(.lv-workspace,.lv-report,.lv-schedule).lv.a-sleek .a-split>.a-r,.lv-editor.lv.a-sleek .a-ed>.a-r,.lv-repsource.lv.a-sleek .a-rpx>.a-r{display:none!important}
.lv-editor.lv.a-sleek:not(.a-nar) .a-ed{grid-template-columns:96px minmax(0,1fr)!important}
/* the rep's schedule alone, without the agreement above it: the schedule from its title, set as a Letter page */
.lv-repsource.lv.a-sleek .a-rpx{grid-template-columns:minmax(0,1fr)!important}
.lv-repsource.lv.a-sleek .a-rsl>.a-l{display:none!important}
.lv-repsource.lv.a-sleek .a-rsl .a-ds{flex:1 1 auto!important;max-height:none!important}
.lv-repsource.lv.a-sleek .a-rsl .a-ds .a-view{flex:1 1 auto!important;height:auto!important;position:relative}
.lv-repsource.lv.a-sleek .a-dpg{box-sizing:border-box;width:calc(816px*var(--pz,.8))!important;max-width:none!important;margin:0 auto!important;
  padding:calc(96px*var(--pz,.8)) calc(96px*var(--pz,.8)) calc(24px*var(--pz,.8))!important;font-size:calc(16px*var(--pz,.8))!important;line-height:1.3!important}
.lv-repsource.lv.a-sleek .a-dpg p{margin:0 0 .6em!important}
.lv-repsource.lv.a-sleek .a-dpg .a-dst{margin-bottom:1em!important}
.lv-repsource.lv.a-sleek .a-dpg :is(.a-ent,.a-ent p){text-align:left!important}
/* the side letter is a Letter page too: its own page size, its left part in view */
.lv-safecmp.lv.a-sleek .a-r .a-pg{padding:0!important}
.lv-safecmp.lv.a-sleek .a-rlp{box-sizing:border-box;width:calc(816px*var(--pz,.8))!important;max-width:none!important;
  padding:calc(96px*var(--pz,.8)) calc(96px*var(--pz,.8)) calc(24px*var(--pz,.8)) calc(96px*var(--pz,.8))!important;font-size:calc(16px*var(--pz,.8))!important;line-height:1.3!important}
.lv-safecmp.lv.a-sleek .a-rlp .a-dh,.lv-safecmp.lv.a-sleek .a-rlp .a-dh span{font-size:calc(16px*var(--pz,.8))!important}
.lv-safecmp.lv.a-sleek .a-rlp p{margin:0 0 .7em!important}
/* the card: the cited file's name, then its lit lines as its page draws them */
.lv .a-exc{flex:none;margin:6px 14px 14px;align-self:flex-start;background:#fff;border:1px solid #DCE1E8;border-radius:6px;
  box-shadow:0 1px 2px rgba(15,23,42,.05),0 6px 16px -10px rgba(15,23,42,.25);overflow:hidden;max-width:calc(100% - 28px);transition:opacity .45s ease}
.lv .a-exh{display:flex;align-items:center;gap:7px;height:30px;padding:0 10px;border-bottom:1px solid #E6E9EE;background:#F7F8FA;
  font:500 11.5px/1 'IBM Plex Sans',system-ui,sans-serif!important;color:#4A515E;white-space:nowrap;overflow:hidden}
.lv .a-exh span{overflow:hidden;text-overflow:ellipsis}
.lv .a-exi{width:11px;height:13px;flex:none;color:#6B7080}
.lv .a-exb{position:relative;overflow:hidden;background:#fff}
.lv .a-exb .a-exs{box-shadow:none!important;background:#fff!important}
.lv .a-exb .a-exs .a-hr{opacity:1!important}
.lv .a-exb.a-cutr::after{content:"";position:absolute;top:0;bottom:0;right:0;width:24px;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,rgba(228,232,238,0),rgba(228,232,238,.92))}
/* the card comes in with the lit entry */
.lv.a-sleek:is(.lv-workspace,.lv-report,.lv-schedule,.lv-editor):not(:has(.a-l .a-cite.a-on)) .a-exc{opacity:0}
.lv-repsource .a-nodr .a-exc{opacity:0}
/* Word pictures: the Letter page (never the narrowed one) at 0.8 of its size, centred in a wide frame; in a narrow
   frame its left part, with a page-edge shade on the right */
.spot.doc .win.tie-n{display:none!important}
.spot.doc .win.tie-p{display:block!important;width:653px!important;max-width:none!important;margin:14px auto 0!important}
.spot.doc{position:relative}
@container (max-width:690px){

  .spot.doc .wbar::after{content:"";position:absolute;right:0;top:41px;bottom:0;width:30px;z-index:3;pointer-events:none;
    background:linear-gradient(90deg,rgba(228,232,238,0),rgba(228,232,238,.92))}}

.lv.a-sleek .a-view.a-cutb::before{content:""!important;display:block!important;position:absolute;left:0;right:0;bottom:0;top:auto!important;height:var(--shb,16px)!important;z-index:3;pointer-events:none;
  background:linear-gradient(rgba(228,232,238,0),rgba(228,232,238,.85))!important}
.lv-repsource.lv.a-sleek .a-dpg{box-shadow:none!important;background:#fff}
/* ---- r6c (the coordinator's fill pass, Nov 11): W8's card is its declarations row as text, W12's schedules page runs
   on past its card, and the stacked opening wider than a phone shows the cited folder's four files ---- */
.lv .a-exc.a-ext .a-exb{padding:0}
.lv .a-exrow{display:grid;grid-template-columns:minmax(0,38%) minmax(0,62%);font:calc(13px*var(--pz,.8))/1.35 Arimo,Arial,Helvetica,sans-serif!important;color:#1f2329}
.lv .a-exrow>span{padding:calc(7px*var(--pz,.8)) calc(10px*var(--pz,.8))}
.lv .a-exrow .a-exk{font-weight:700!important;border-right:1px solid #9AA1AC}
.lv .a-exrow mark{background:#D6DDE8;color:inherit;padding:0 2px;border-radius:2px}
.lv-repsource .a-exslot{margin:0}
.lv-repsource .a-exslot .a-exc{margin:.9em 0 .4em -11px!important;max-width:none}
.lv-repsource.lv.a-sleek .a-dpg .a-dsn{margin-top:1.7em!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2{opacity:1;height:30px!important;padding-top:0!important;align-items:center!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2 .a-dn{height:20px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2 .a-d2{white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2.a-k0{--b:30px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2.a-k1{--b:60px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2.a-k2{--b:90px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-f2.a-k3{--b:120px!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack .ord .a-rows>.a-hmore{display:none!important}
[data-nov="hero"] [data-nov="win"].is-split.is-stack.is-wstack.is-wroom .ord .a-rows>.a-fo3{opacity:1;--b:150px!important}
/* ---- r6d never cut text (Nov 11): a Word picture is the Letter page at 0.8 when its frame has room, otherwise scaled
   so its text column (1-inch margins, 6.5 of 8.5 inches) fits the frame with 12px of white each side; only white
   margin is cropped, so no page-edge shade. The report's card is a three-cell row ---- */
/* (the tie-out pages have half-inch margins, 7.5 of 8.5 inches of text; the Schedule 3.9 export has 1-inch margins) */
.spot.doc .win.tie-p{--tl:.0588;--tw:.8824;--pw:min(653px,calc((100% - 24px)/var(--tw)));width:var(--pw)!important;
  margin:14px 0 0 max(calc((100% - var(--pw))/2),calc(12px - var(--pw)*var(--tl)))!important}
[data-win="11"] .spot.doc .win.tie-p,.spot.doc .win.tie-p:has(img[src*="sched-39"]){--tl:.1176;--tw:.7647}
.spot.doc .wbar::after{display:none!important}
.lv .a-exrow.a-exrow3{grid-template-columns:minmax(0,1fr) auto auto}
.lv .a-exrow.a-exrow3>span+span{border-left:1px solid #9AA1AC;text-align:right}
.lv .a-exrow.a-exrow3 .a-exk{border-right:0}
/* in a small slot a document pane runs edge to edge (no body padding, no side borders), so the page's text column
   gets the window's whole width (round 6d: the text fits whole at about 8.5px or more) */
.lv.a-sleek.a-small:is(.lv-workspace,.lv-schedule,.lv-report,.lv-editor,.lv-repsource,.lv-compare,.lv-safecmp) .a-body{padding-left:0!important;padding-right:0!important}
.lv.a-sleek.a-small:is(.lv-workspace,.lv-schedule,.lv-report,.lv-editor,.lv-repsource,.lv-compare,.lv-safecmp) .a-viewer{border-left:0!important;border-right:0!important;border-radius:0!important}
/* ---- r6e Compare (Connor, Nov 11): one group redline. The list of five customer MSAs with their match to the standard
   sits above the redline, the lowest match first and selected; the panes run edge to edge, split by a line; rows are
   plain text with right-aligned tabular percentages, the selected row a square full-row fill ---- */
.lv-compare.lv.a-sleek .a-body{padding:0!important;gap:0!important}
.lv-compare.lv.a-sleek .a-cm,.lv-compare.lv.a-sleek.a-phone .a-cm,.lv-compare.lv.a-sleek:not(.a-phone) .a-cm{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr)!important;gap:0!important;flex:1;min-height:0}
.lv-compare.lv.a-sleek .a-cm>.a-cmp,.lv-compare.lv.a-sleek.a-phone .a-cm>.a-cmp{display:block!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:#fff!important;padding:6px 0 4px!important;box-shadow:none!important}
.lv-compare.lv.a-sleek .a-cm>.a-r{border:0!important;border-radius:0!important;box-shadow:none!important}
.lv-compare .a-cbase{display:flex;align-items:baseline;gap:8px;padding:4px 16px 6px;font-size:12px;color:var(--ink3,#6B7080)}
.lv-compare .a-cbase b{font-weight:600;color:var(--ink)}
.lv-compare .a-chd{display:flex;justify-content:space-between;gap:12px;padding:5px 16px 6px;font-size:11.5px;color:var(--ink3,#6B7080);border-bottom:1px solid var(--line2)}
.lv-compare .a-chd b{font-weight:600;color:var(--ink)}
.lv-compare.lv.a-sleek .a-cmp .a-si{display:flex!important;align-items:center;justify-content:space-between;gap:12px;height:28px!important;padding:0 16px!important;margin:0!important;border-radius:0!important;font-size:12.5px!important;color:var(--ink);font-weight:400;background:none;box-shadow:none!important}
.lv-compare .a-cmp .a-si::before,.lv-compare .a-cmp .a-si::after{display:none!important}
.lv-compare .a-cmp .a-cnm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lv-compare .a-cmp .a-pct{flex:none;font-variant-numeric:tabular-nums;color:var(--ink2,#4A515E)}
.lv-compare.lv.a-sleek .a-cmp .a-si.a-sel,.lv-compare.lv.a-sleek .a-before .a-cmp .a-si.a-prev{background:#E8ECF2!important;font-weight:600;color:var(--ink)}
.lv-compare.lv.a-sleek .a-before .a-cmp .a-si.a-sel{background:none!important;font-weight:400}
.lv-compare.lv.a-sleek .a-cmp .a-si.a-sel .a-pct{color:var(--ink)}

/* ---- r7 (Nov 12): the Home opening's second step holds the organized documents beside the schedule. order.js builds
   the documents pane (.hd-docs) into .nov-hero-next and adds .hp-on from a 640px opening; under that the step shows the
   schedule alone, as before. The step's fade in and out is layer.css's (is-next, is-next-in, is-next-out). ---- */
[data-nov="hero"] .nov-hero-next .hd-docs{display:none}
[data-nov="hero"] .nov-hero-next.hp-on{display:flex;align-items:stretch;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px rgba(12,19,32,.12),0 12px 26px -18px rgba(4,10,22,.4)}
[data-nov="hero"] .nov-hero-next.hp-on>.hd-docs{display:flex;flex-direction:column;flex:0 0 clamp(316px,36%,360px);min-width:0;background:#fff;border-right:1px solid #E3E7ED;
  font:400 13px/1.45 'IBM Plex Sans',system-ui,sans-serif;color:#151B26;text-align:left}
[data-nov="hero"] .nov-hero-next.hp-on>:not(.hd-docs){flex:1 1 0;min-width:0;margin:0!important;border-radius:0!important}
[data-nov="hero"] .nov-hero-next.hp-on .lv{box-shadow:none!important;border-radius:0!important}
.nov-hero-next .hd-head{flex:none;display:flex;align-items:center;box-sizing:border-box;height:var(--hd-head,57px);padding:0 var(--hd-pad,22px);border-bottom:1px solid #EFF1F4;white-space:nowrap}
.nov-hero-next .hd-title{font:500 var(--hd-title,17px)/1 Newsreader,Georgia,'Times New Roman',serif;letter-spacing:-.01em;color:#151B26}
.nov-hero-next .hd-proj{font-size:13px;color:#687283;overflow:hidden;text-overflow:ellipsis}
.nov-hero-next .hd-proj::before{content:"";display:inline-block;width:1px;height:14px;margin:0 12px 0 14px;background:#E3E7ED;vertical-align:-2px}
.nov-hero-next .hd-list{padding:12px 12px 14px;opacity:0;transition:opacity .15s cubic-bezier(.4,0,1,1)}
[data-nov="hero"] [data-nov="win"].is-next-in:not(.is-next-out) .nov-hero-next .hd-list{opacity:1;transition:opacity .25s cubic-bezier(.2,.7,.2,1)}
.nov-hero-next .hd-fo{display:flex;align-items:center;gap:10px;height:34px;padding:0 8px}
.nov-hero-next .hd-fo b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nov-hero-next .hd-fo span{margin-left:auto;padding-left:8px;font-size:12.5px;color:#97A0AD}
.nov-hero-next .hd-docs svg{flex:none;fill:none;stroke-linejoin:round;stroke-linecap:round}
.nov-hero-next .hd-fo svg{width:17px;height:15px;stroke:#687283;stroke-width:1.25}
.nov-hero-next .hd-f{display:flex;align-items:flex-start;gap:9px;padding:5px 6px 5px 33px;border-radius:4px;font-size:12.5px;line-height:18px;color:#465061;
  transition:background-color .5s cubic-bezier(.4,0,.2,1),color .5s cubic-bezier(.4,0,.2,1)}
.nov-hero-next .hd-f svg{width:15px;height:15px;margin-top:1.5px;stroke:#97A0AD;stroke-width:1.2}
.nov-hero-next .hd-f span{min-width:0}
.nov-hero-next .hd-f+.hd-fo{margin-top:4px}
[data-nov="win"].is-cited .nov-hero-next .hd-f.is-cite{background:#E1E7F0;color:#151B26}
/* the "+3 more" row exists only for round 6's stacked split; the published sweep never shows it */
[data-nov="hero"] [data-nov="win"]:not(.is-split) .ord .a-rows>.a-hmore{display:none!important}

/* r7b (Connor, Nov 12: "the disclosure schedule should appear as part of the transition on the right-hand side"):
   from a 640px opening the divider itself reveals the pair. The documents-and-schedule window sits over the files as
   uploaded, clipped to the divider's left, so the sweep uncovers the organized documents and then the schedule; it
   rests there and the citation lights with the file it cites. The organized list the divider used to uncover is not
   shown. Dragging the divider still works: it uncovers and covers the pair. */
[data-nov="hero"] [data-nov="win"].is-hpsweep .nov-hero-next{visibility:visible!important;opacity:1!important;transform:none!important;z-index:2;
  clip-path:inset(-2px calc(100% - var(--xn,0)*100%) -2px -2px);transition:none!important}
[data-nov="hero"] [data-nov="win"].is-hpsweep .nov-hero-next :is(.lv .a-main>*,.hd-list){opacity:1!important;transition:none!important}
[data-nov="hero"] [data-nov="win"].is-hpsweep .ord-clip{visibility:hidden}
/* the divider, its grip and its labels stay on top: the files as uploaded (with the divider) sit above the pair,
   cut away left of the divider so the pair shows there */
[data-nov="hero"] [data-nov="win"].is-hpsweep .ord{z-index:3;background:transparent}
[data-nov="hero"] [data-nov="win"].is-hpsweep .nov-hero-next{z-index:2!important}
[data-nov="hero"] [data-nov="win"].is-hpsweep .ord>.lv{clip-path:inset(-2px -2px -2px calc(var(--xn,0)*100%))}

/* r7 polish (Connor, Nov 12: "more impressive and enterprise-grade, and less vibe-coded"; "remove the numbers next to
   the folders ... cruft"). The divider is a hairline with a slim white splitter handle (two grip lines), not a dark
   chevron tile; its labels are plain sentence-case text, not bordered pills; the files-as-uploaded header loses its
   grey "Organize" button; icons have square corners and line ends; the cited file is a square full-row fill; the
   schedule pane has no grey shade bar at its foot. */
[data-nov="hero"] .ord-app .ord-handle::before{width:1px;background:#1B2230}
[data-nov="hero"] .ord-app .ord-handle i{width:12px;height:34px;margin:-17px 0 0 -6px;border-radius:2px;background:#fff;
  box-shadow:0 0 0 1px #1B2230,0 8px 16px -10px rgba(4,10,22,.5)!important;transform:none!important}
[data-nov="hero"] .ord-app .ord-handle i::before{content:"";position:absolute;left:4px;right:4px;top:11px;bottom:11px;
  -webkit-mask:none!important;mask:none!important;background:linear-gradient(90deg,#1B2230 0 1px,transparent 1px 3px,#1B2230 3px 4px)!important}
[data-nov="hero"] .ord-app .ord-handle i::after{content:none!important}
[data-nov="hero"] .ord-app .ord-tags span{font:500 11px/1 'IBM Plex Sans',system-ui,sans-serif;letter-spacing:.01em;color:#6B7483;background:none;border:0;padding:0}
[data-nov="hero"] .ord .a-orgb{visibility:hidden}
.nov-hero-next .hd-docs svg{stroke-linecap:square;stroke-linejoin:miter}
.nov-hero-next .hd-fo svg{stroke:#6B7483;stroke-width:1.1}
.nov-hero-next .hd-fo b{font-weight:500}
.nov-hero-next .hd-f{margin:0 -12px;padding-left:45px;padding-right:18px;border-radius:0}
.nov-hero-next .hd-f svg{stroke:#9AA3B0;stroke-width:1}
[data-nov="hero"] .nov-hero-next .a-view::after{display:none!important}
[data-nov="hero"] .nov-hero-next .a-app{background:#fff}
[data-nov="hero"] .nov-hero-next .a-view::before{display:none!important}
[data-nov="hero"] .nov-hero-next .a-empty{background:#fff!important}

/* ---- r8 (Nov 12): documents shown as documents (Connor: "they all kind of look childish"; the brochure's pages 2 and
   5 are the model). An exhibit is one or more real Letter pages (816 x 1056 at Word's 100%, 1in margins, Times 12pt),
   stacked like sheets on the slot's field, with no title bar, label or button; the sheets fade into the field below
   the last line that matters. Geometry is set in em, 1em being the page's 12pt, and the em is 12px in every slot (one
   whole-pixel document size across the site), so a page is never reflowed, scaled down or cut through its text:
     a slot 710px wide or more holds the whole stack, centred, with its sheets stepped to the right;
     a slot 564-709px wide holds the sheets at the same size from their left edge, the right margin running past the
       slot into a soft fade (Connor 2026-11-12: "shading to the side or bottom");
     a narrower slot holds the passages instead (.ex-slips), each as live text at 14px on a small sheet, in order.
   Only the finding is lit (a soft slate tint with an underline), and every lit passage has its counterpart lit in
   the same picture. Styles here touch nothing outside .ex. ---- */
.spot.doc:has(>.ex){max-width:none!important;margin:0!important;background:transparent!important;box-shadow:none!important;
  border-radius:0!important;overflow:visible!important}
.ex,.ex *{box-sizing:border-box!important}
.ex-stack{box-sizing:content-box!important}
.ex{position:relative;container:ex/inline-size;--lit:#E1E7F0;--litu:#98A3B8;--link:#0563C1;--ink:#0B0B0B;
  -webkit-font-smoothing:antialiased;text-align:left;letter-spacing:0}
.ex.is-navy{background:#0F1D35}
/* on a dark field (the Platform overview's schedule band, a dark row's slot) the sheets cast a deeper shadow */
.nov-plat-wide:has(>[data-nov="win"][data-win="26"]){background:#0F1D35 radial-gradient(110% 95% at 78% 100%,#203252 0%,#13213A 52%,#0C1526 100%);
  padding-top:clamp(16px,3vw,44px);padding-bottom:0}
.nov-plat-wide .ex-stack{--expad:1.4em}
/* the sheets: --exspan is the stack's width in em (a page is 51em), --expad the field around it. (r8b) The stack is as
   tall as its front sheet, which ends on a whole element and then carries blank paper as long as the fade plus 1em,
   so the fade only ever crosses blank paper (the auditor's rule); a grid cell fixes the height instead, and its
   exhibits are trimmed to fit above the fade */
.ex-stack{--expad:2.6em;position:relative;margin:0 auto;padding:var(--expad) var(--expad) 0;font-size:12px;
  width:calc(var(--exspan,53.5)*1em);height:auto;overflow:hidden;
  --exmask:linear-gradient(#000 calc(100% - var(--exfade,4em)),rgba(0,0,0,.72) calc(100% - var(--exfade,4em) * .6),rgba(0,0,0,.28) calc(100% - var(--exfade,4em) * .25),transparent);
  -webkit-mask-image:var(--exmask);mask-image:var(--exmask)}
@container ex (max-width:709px){
  .ex-stack{--expad:1.4em;width:auto;margin:0;padding-right:0;
    -webkit-mask-image:var(--exmask),linear-gradient(90deg,#000 calc(100% - var(--exrf,36px)),transparent);
    -webkit-mask-composite:source-in;
    mask-image:var(--exmask),linear-gradient(90deg,#000 calc(100% - var(--exrf,36px)),transparent);
    mask-composite:intersect}
  .ex-pg{left:0!important}.ex-in>.ex-pg:last-child{margin-left:0!important}}
/* a slot from 630px holds a whole 12px page once the sheets stop stepping: no right-hand fade there */
@container ex (min-width:630px) and (max-width:709px){
  .ex-stack{--expad:.8em!important;padding-right:var(--expad);-webkit-mask-image:var(--exmask);mask-image:var(--exmask)}}
.ex-in{position:relative;height:auto;display:flow-root}
.ex-in>.ex-pg:last-child{position:relative;left:auto;top:auto;margin-left:calc(var(--exx,0)*1em);margin-top:calc(var(--exy,0)*1em);
  height:auto;padding-bottom:calc(var(--exfade,4em) + 1em)}
.ex-pg{position:absolute;left:calc(var(--exx,0)*1em);top:calc(var(--exy,0)*1em);height:66em;width:51em;box-sizing:border-box;
  padding:var(--expt,6em) 6em 0;background:#fff;overflow:hidden;color:var(--ink);
  font:1em/1.25 'Times New Roman',Tinos,Times,serif;
  box-shadow:0 0 0 1px rgba(15,23,42,.09),0 .15em .35em rgba(15,25,40,.07),0 1.4em 2.6em -1.4em rgba(15,25,40,.32)}
.ex.is-navy .ex-pg,.nov-plat-wide .ex-pg,.nov-srow-vis.is-dark .ex-pg{box-shadow:0 0 0 1px rgba(0,0,0,.22),0 .2em .5em rgba(0,0,0,.2),0 1.8em 3.2em -1.2em rgba(0,0,0,.55)}
/* an edge of a sheet further down the pile (a report's later pages) */
.ex-pg.is-edge{padding:0;background:#F3F4F6;box-shadow:0 0 0 1px rgba(15,23,42,.16)!important}
.ex-pg p{margin:0 0 .75em}
.ex-pg .c{text-align:center}.ex-pg .j{text-align:justify;hyphens:none}
.ex-pg .ind{text-indent:3em}
.ex-pg .sub{margin-left:3em}
.ex-pg .sh{text-align:center;font-weight:bold;text-decoration:underline;text-underline-offset:.1em;margin:0 0 .25em}
.ex-pg .tt{text-align:center;font-weight:bold;margin:0 0 .15em}
.ex-hdr{position:absolute;top:3.4em;left:6em;right:6em;display:flex;justify-content:space-between;line-height:1.2}
.ex-hdr>span{font-size:.8334em}
.ex-hdr>span:only-child{margin-left:auto}
.ex-pg .en{display:grid;grid-template-columns:2.25em 1fr;margin:0 0 .75em}
.ex-pg .sm{font-size:.8334em}
.ex-pg .cit a,.ex-slip .cit a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}
.ex-pg .cn,.ex-slip .cn{color:var(--link)}
.ex-pg u{text-underline-offset:.12em}
.ex-pg table{border-collapse:collapse;width:100%;font-size:1em;line-height:1.2}
.ex-pg th{font-weight:bold;text-align:left;border-top:1px solid #000;border-bottom:1px solid #000;padding:.3em .25em;vertical-align:bottom}
.ex-pg td{border-bottom:1px solid #BFC3C8;padding:.32em .25em;vertical-align:top}
.ex-pg .r{text-align:right;white-space:nowrap}
/* a note to draft, as the export sets it: italic on a light grey shading */
.ex .ntd{font-style:italic}
.ex-pg table.tight td{padding:.18em .25em}
.ex-pg table.tieout :is(th,td){padding-left:.2em;padding-right:.2em}
.ex-pg table.tieout td:last-child,.ex-pg table.tieout th:last-child{white-space:nowrap}
.ex-pg td.grp{border-bottom:0;padding-top:.6em}
.ex-pg tr.tot td{border-bottom:0;border-top:1px solid #000;font-weight:bold}
/* the lit passage: a soft slate tint with a hairline underline, carried across line breaks */
.ex mark{background:var(--lit);color:inherit;box-shadow:0 0 0 .14em var(--lit);text-decoration:underline;
  text-decoration-color:var(--litu);text-decoration-thickness:1px;text-underline-offset:.2em;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.ex tr.lit td,.ex td.lit{background:var(--lit);box-shadow:0 -1px 0 var(--litu) inset}
/* an unsigned signature line, lit: the blank line and the name under it, as one block */
.ex .sig>div.lit{background:var(--lit);box-shadow:0 0 0 .3em var(--lit)}
/* a signature block: a conformed signature ("/s/ Name") on the line, the signer's name under it */
.ex .sig{display:grid;grid-template-columns:repeat(3,1fr);gap:0 2.2em;margin-top:2em}
.ex .sig i{display:block;min-height:1.45em;border-bottom:1px solid #000;padding-bottom:.15em;font-style:normal}
.ex .sig span{display:block;padding-top:.25em}
/* a list of citations: the number, then the cited file's name as a link */
.ex .cl p{display:grid;grid-template-columns:3em 1fr;margin:0 0 .3em}
.ex-slip .cl p{grid-template-columns:30px 1fr;margin:0 0 4px;font-size:13px}
.ex mark.cn{color:var(--link)}
.ex .cl p.lit{background:var(--lit);box-shadow:0 0 0 .2em var(--lit),0 calc(.2em + 1px) 0 0 var(--litu)}
/* a report's numbered heading and its indented findings */
.ex-pg .ol{display:grid;grid-template-columns:3em 1fr;margin:0 0 .75em}
.ex-pg .fi{display:grid;grid-template-columns:3em 1fr;margin:0 0 .75em 3em}

/* ---- the narrow slot: the passages as live text, each on its own small sheet, in the stack's order ---- */
/* a 420-563px slot (a half-width cell on a 900px screen; under 564px a 12px text column and its right fade do not both fit): the same sheets at 9px from their left edge, the right
   margin running into the fade, so the cell still shows pages, not cards */
/* (the right-hand fade here covers only the page margin past the text column: 4px in, a 54px margin, a 351px column) */
/* 564-629px (the Home tour at 1140, a 2-up cell at 1280): still 12px, the page 4px from the slot's left edge so its
   468px text column ends inside the slot, the right-hand fade (20px) over the margin only */
@container ex (max-width:629px){.ex-stack{padding-left:4px!important;--exrf:20px}}
/* a grid cell's exhibit keeps the cell's 0.78 shape, which under 630px is too short for its pages at 12px: 9px there */
@container ex (max-width:629px){:is(.nov-cap-field,.nov-flow-vis) .ex-stack{font-size:9px;--exrf:12px}}
@container ex (max-width:563px){.ex-stack{font-size:9px;--expad:.8em!important;padding-left:4px!important;--exrf:12px}}
.ex-slips{display:none;padding:18px 16px 20px}
@container ex (max-width:419px){.ex-stack{display:none}.ex-slips{display:block}}
.ex-slip{position:relative;background:#fff;padding:12px 14px 13px;color:var(--ink);font:14px/1.4 'Times New Roman',Tinos,Times,serif;
  box-shadow:0 0 0 1px rgba(15,23,42,.09),0 2px 5px rgba(15,25,40,.06),0 14px 26px -18px rgba(15,25,40,.35)}
.ex.is-navy .ex-slip,.nov-plat-wide .ex-slip,.nov-srow-vis.is-dark .ex-slip{box-shadow:0 0 0 1px rgba(0,0,0,.2),0 14px 26px -14px rgba(0,0,0,.5)}
.ex-slip+.ex-slip{margin-top:10px}
.ex-slip p{margin:0}
.ex-slip p+p{margin-top:6px}
.ex-sl{display:block;margin:0 0 6px;font:500 12px/1.35 'IBM Plex Sans',system-ui,sans-serif;color:#5F6878;letter-spacing:0}
.ex.is-navy .ex-sl{color:#596273}
.ex-slip .tt{text-align:center;font-weight:bold}
.ex-slip .c{text-align:center}
.ex-slip .fi{display:grid;grid-template-columns:20px 1fr;margin:0}
.ex-slip p.fi+p.fi{margin-top:7px}
.ex-slip .sig{grid-template-columns:1fr 1fr;gap:0 16px;margin-top:16px;font-size:13px;white-space:nowrap;align-items:end}
.ex-slip .r{text-align:right;white-space:nowrap}
.ex-slip tr.th td{font-weight:bold;border-bottom:1px solid #000;padding-top:0}
.ex-slip tr.tot td{font-weight:bold;border-top:1px solid #000;border-bottom:0}
.ex-slip .sh{font-weight:bold;text-align:center;text-decoration:underline;text-underline-offset:.12em}
.ex-slip table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.3}
.ex-slip td:first-child,.ex-slip td.r{white-space:nowrap}
.ex-slip.is-wrap td:first-child{white-space:normal}
.ex-slip td{padding:3px 0;vertical-align:top;border-bottom:1px solid #D5D8DD}
.ex-slip td+td{padding-left:8px}
.ex-slip tr:last-child td{border-bottom:0}
/* ---- r8 quiet app windows (brief: "app screens stay app screens, quiet"): no counts beside folders and groups, no
   project label beside the title, no grey "Organize" button, no "+N more" rows or "+" tab, one size of filled button.
   Scoped away from the Home opening ([data-nov="hero"]), which is approved as it stands. ---- */
[data-nov="win"]:not([data-nov="hero"] *) :is(.lv-organize,.lv-docsig,.lv-missing,.lv-reqlist) :is(.a-cn,.a-mn){display:none!important}
/* (r8b) the project name stays beside a file view's title, muted, with no divider */
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-proj{font-size:13px!important;color:#5F6878!important;margin-left:12px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-proj::before{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-head .a-orgb{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-wadd,.a-sgm){display:none!important}
/* (r8b) a list cut short ends on a plain "+N more" line, so a stated total reconciles with what is listed */
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-more,[data-nov="win"]:not([data-nov="hero"] *) .lv .a-more *{font-size:12px!important;font-weight:400!important;color:#5F6878!important;background:none!important;border:0!important;box-shadow:none!important}
/* statuses are words, not check badges */
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-ck{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) .a-head .a-btn.a-pri{font-size:13px!important;padding:8px 13px!important;line-height:15px!important}
/* Missing Documents: item names at a reading weight; the lit item stays medium */
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing .a-mtt{font-weight:400!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing .a-mon .a-mtt{font-weight:500!important}
/* W6: the redline as live text at every width (the page image was a soft bitmap with heavy change bars): Times, a
   thin change bar beside each changed paragraph, deletions struck in deep red, insertions double-underlined in blue,
   the lit clause tinted with an underline as in every document */
.lv-compare .a-rlx{display:none}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-viewer .a-view{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx{display:block;padding:18px 28px 0 30px!important;color:#0B0B0B;background:#fff!important;box-shadow:none!important;text-align:justify}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare.a-small .a-rlx{padding:16px 16px 0 22px!important;text-align:left}
.lv-compare .a-rlx,.lv-compare .a-rlx *{font-family:'Times New Roman',Tinos,Times,serif!important;font-size:13px;line-height:1.35;letter-spacing:0!important}
.lv-compare.a-small .a-rlx,.lv-compare.a-small .a-rlx *{font-size:14px}
.lv-compare .a-rlx p{margin:0 0 10px;position:relative}
.lv-compare .a-rlx p.chg::before{content:"";position:absolute;left:-14px;top:2px;bottom:2px;width:1px;background:#6B7280}
.lv-compare.a-small .a-rlx p.chg::before{left:-11px}
/* r8b: the window shows as much of the negotiated deviation as it holds without cutting a line, in this order of
   preference (app.js rlfit): 9.1, 9.2 and 9.3 (rl-1); 9.1 and 9.2 (rl-2); 9.2 and 9.3 (rl-3); the lit 9.2 alone (rl-4), then without the article's title (rl-5) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx.rl-2 p.x93d,
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx.rl-3 .a-rlt+p.chg,
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx.rl-4 :is(.a-rlt+p.chg,p.x93d){display:none}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx.rl-5 :is(.a-rlt,.a-rlt+p.chg,p.x93d){display:none}
.lv-compare .a-rlx .a-rlt{text-align:center;font-weight:bold;font-size:13px!important;line-height:1.3;margin-bottom:12px}
.lv-compare .a-rlx mark{background:#E1E7F0;color:inherit;box-shadow:0 0 0 2px #E1E7F0;text-decoration:underline;text-decoration-color:#98A3B8;text-decoration-thickness:1px;text-underline-offset:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.lv-compare .a-rlx del{color:#9B1C2E;text-decoration:line-through}
.lv-compare .a-rlx ins{color:#1F4E9A;text-decoration:underline double;text-underline-offset:2px}
.lv-compare .a-rlx mark ins{text-decoration:underline double}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-viewer::after,[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-viewer .a-ph{display:none!important}
/* ---- r8 type scale for app windows (Connor, Nov 12: the fonts must look professional). One scale across every window:
   title Newsreader 18px/450; list and cell text Plex 13px/400; names that lead a row or group 13px/500; column
   headers, group headers and secondary labels 12px/500 in a muted grey; statuses 12px/500; buttons 13px/500.
   Nothing under 12px and no 600/700 weights in chrome. Document pages keep their own type. Not the Home opening. ---- */
[data-nov="win"]:not([data-nov="hero"] *) .lv.lv.lv.lv.lv.a-skin.a-sleek .a-app .a-head h1{font-family:Newsreader,'Source Serif 4',Georgia,serif!important;font-weight:450!important;font-size:18px!important;line-height:1.2!important;letter-spacing:-.005em!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-app :is(b,strong):not(.a-page *):not(.a-wimg *):not(.a-pg *){font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) :is(.a-dn,.a-d2,.a-sgn,.a-mtt,.a-cnm,.a-pct,.a-tbl td){font-size:13px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) :is(.a-dfo b,.a-sgf b){font-size:13px!important;font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-chd,.a-chd b,.a-tbl th,.a-mgh,.a-mgh span){font-size:12px!important;font-weight:500!important;color:#5F6878!important;letter-spacing:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-chd b{color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-miss,.a-sig){font-size:12px!important;font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-wtabs span{font-size:13px!important;font-weight:400!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-wtabs .a-on{font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-si.a-sel .a-cnm,.a-si.a-sel .a-pct,.a-mon .a-mtt){font-weight:500!important}
/* the tour's other two tabs end at the same height, so switching tabs never changes the box */
[data-nov="tour"] .ex .ex-stack{--exfade:3em!important}
/* in Home's grid of windows an exhibit takes the slot's shape (0.78 of its width, at most 560px), as the app windows
   beside it do, so the captions under the row line up */
.nov-cap-field .ex-stack,.nov-flow-vis .ex-stack{height:calc(min(78cqw,560px) - var(--expad))}
/* an exhibit's poster (shown until the windows' script puts the exhibit in place): the sheets on a transparent field,
   at their own shape, with no window frame */
:is(.nov-win,.nov-prodv-win,.nov-walk-win):is([data-win="1"],[data-win="3"],[data-win="7"],[data-win="11"],[data-win="12"],[data-win="18"],[data-win="19"],[data-win="20"],[data-win="16"],[data-win="26"],[data-win="27"],[data-win="28"])>.nov-win-poster{aspect-ratio:auto!important;
  height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
/* ---- r8 round 2 (design critique, Nov 12) ---- */
/* one highlight in app rows: the slate tint as a full-row fill, no underline (documents keep tint plus underline) */
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-mon,.a-foc,.a-si.a-sel,.a-tbl tr.a-sel,.a-tbl tr.a-sel td){box-shadow:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-mon,.a-foc,.a-si.a-sel,.a-tbl tr.a-sel td,.a-mwhy,.a-qt td){background:#E1E7F0!important}
/* Missing Documents: plain page icons; the lit item's reason on a muted line under it */
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing .a-mic path{stroke-dasharray:none!important}
.lv-missing .a-mwhy{display:block!important;height:auto!important;min-height:0!important;margin-top:-1px;padding:0 12px 9px 39px!important;
  font:400 12px/1.35 'IBM Plex Sans',system-ui,sans-serif!important;color:#5F6878!important;border:0!important}
/* Document Analysis: statuses as words; the lit row's answering clause quoted under it, in the document's type */
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix .a-ri2{display:none!important}
.lv-matrix .a-qq{display:block;margin:5px 0 2px 20px;white-space:normal;background:transparent!important;box-shadow:none!important;padding:0!important}
.lv-matrix .a-qq,.lv-matrix .a-qq *{font-family:'Times New Roman',Tinos,Times,serif!important;font-size:13px!important;line-height:1.35!important;color:#1B2230!important;letter-spacing:0!important;font-weight:400!important}
.lv-matrix .a-qq b{font-weight:700!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix .a-tbl tr.a-sel td{vertical-align:top!important;white-space:normal!important;height:auto!important}
/* the file lists: names in primary ink, icons with square ends in one grey, one 32px row pitch */
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-d2,.a-sgn,.a-dn){color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-fi,.a-mic,.a-dic svg) :is(path,circle,rect){stroke-linecap:square!important;stroke-linejoin:miter!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv :is(.a-fi,.a-mic){stroke:#8A93A3!important;stroke-width:1.25px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig :is(.a-sgr,.a-sgf){height:32px!important;min-height:32px!important;padding-top:0!important;padding-bottom:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig:not(.a-small) .a-sgr .a-sgn{white-space:nowrap!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig.a-small :is(.a-sgr,.a-sgf){height:auto!important;min-height:30px!important;padding-top:6px!important;padding-bottom:6px!important;align-items:flex-start!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig.a-small .a-sgr .a-sgn{white-space:normal!important;overflow:visible!important;line-height:1.3!important;position:static!important}
/* one app-window shell: a 56px title bar with the title 20px in, lists running edge to edge with their text 20px in */
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) .a-head{height:56px!important;min-height:56px!important;padding-left:20px!important;padding-right:16px!important;box-sizing:border-box!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) :is(.a-mx,.a-mlw,.a-mgs){padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing:not(.a-small) .a-body{padding-left:0!important;padding-right:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing:not(.a-small) :is(.a-mgh,.a-mrow){padding-left:20px!important;padding-right:20px!important;border-radius:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-missing:not(.a-small) .a-mwhy{padding-left:44px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare:not(.a-small) :is(.a-chd,.a-si){padding-left:20px!important;padding-right:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix:not(.a-small) .a-wsp{padding-left:20px!important;padding-right:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix:not(.a-small) .a-tbl{margin-left:-20px!important;margin-right:-20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix:not(.a-small) .a-tbl :is(th,td):first-child{padding-left:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix:not(.a-small) .a-tbl :is(th,td):last-child{padding-right:20px!important}
/* the schedule editor and the upload form on the same scale: nav and secondary text 12px, rows 13px, the selected
   schedule at 500, the source card's row at 12px */
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) .a-nav .a-ni{font-size:12px!important;font-weight:400!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-nav .a-ni.a-sel{font-weight:500!important;color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-navh{font-size:12px!important;font-weight:500!important;color:#5F6878!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) :is(.a-exh span,.a-exk,.a-exv){font-size:12px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-exk{font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) .a-sc{font-size:13px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) :is(.a-sc .a-no,.a-sc .a-en2,.a-drop small,.a-file){font-size:12px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-sc.a-sel,[data-nov="win"]:not([data-nov="hero"] *) .lv .a-sc.a-sel *{font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:not(.a-small) .a-file{font-size:13px!important}
/* W8 on a phone: the schedule page image would set its text at 7.9px, so the editor shows the schedule as live text
   (the policy table with the cited Harbor Mutual row lit, and the declarations line that answers it) */
.lv-editor .a-mob{display:none}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor.a-small .a-viewer.a-l .a-view,[data-nov="win"]:not([data-nov="hero"] *) .lv-editor.a-small .a-exc{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor.a-small .a-mob{display:block;padding:16px 16px 4px!important;background:#fff!important;box-shadow:none!important;color:#0B0B0B}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor.a-small .a-viewer.a-l{height:auto!important;max-height:none!important;overflow:visible!important;flex:1 1 auto!important}
.lv-editor .a-mob,.lv-editor .a-mob *{font-family:'Times New Roman',Tinos,Times,serif!important;font-size:15.5px;line-height:1.35;letter-spacing:0!important}
.lv-editor .a-mob .a-mt{text-align:center;font-weight:bold;text-decoration:underline;text-underline-offset:2px;margin:0 0 10px}
.lv-editor .a-mob table{border-collapse:collapse;width:100%}
.lv-editor .a-mob td{padding:5px 0;vertical-align:top;border-bottom:1px solid #D5D8DD}
.lv-editor .a-mob td+td{padding-left:10px}
.lv-editor .a-mob td.r{text-align:right;white-space:nowrap}
.lv-editor .a-mob tr.th td{font-weight:bold;border-top:1px solid #000;border-bottom:1px solid #000}
.lv-editor .a-mob tr.lit td{background:#E1E7F0;box-shadow:0 -1px 0 #98A3B8 inset}
.lv-editor .a-mob .cit a{color:#0563C1;text-decoration:underline}
.lv-editor .a-mob .a-msrc{margin-top:14px;padding:10px 12px;background:#F6F7F9;box-shadow:0 0 0 1px #E3E6EB}
.lv-editor .a-mob .a-msf{display:block;margin-bottom:4px;font-family:'IBM Plex Sans',system-ui,sans-serif!important;font-size:13.5px!important;font-weight:500;color:#5F6878}
.lv-editor .a-mob .a-msrc p{margin:0}
.lv-editor .a-mob mark{background:#E1E7F0;box-shadow:0 0 0 2px #E1E7F0;text-decoration:underline;text-decoration-color:#98A3B8;text-underline-offset:3px;color:inherit}
/* W24 (side letters compared): the redlined letter at the reading size of the other redlines (12px Times) instead of a
   page shrunk to 9px; it is the viewer's text, so it reflows to the pane, with the lit clause in view */
[data-nov="win"]:not([data-nov="hero"] *) .lv-safecmp:not(.a-small) .a-page.a-rlp{--pz:.75!important;padding-top:22px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-safecmp.a-small .a-page.a-rlp{--pz:.8125!important;padding-top:16px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-safecmp .a-navh{font-size:12px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-safecmp:not(.a-small) .a-si :is(span,.a-cn){font-size:12px!important;font-weight:400!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-safecmp .a-si.a-sel :is(span,.a-cn){font-weight:500!important}
/* W21 (request list): sentence-case labels at 12px/500 in the muted grey, file rows without icons as in the other
   file lists, the lit note a tint without an underline, no 600 weights */
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-fs h4{text-transform:none!important;letter-spacing:0!important;font-size:12px!important;font-weight:500!important;color:#5F6878!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist :is(.a-fdh,.a-tfo.a-sel span,.a-tfo.a-sel b){font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-fdh{font-size:13px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-tr{color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-fs p{font-size:12.5px!important;line-height:1.36!important;color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-fs{padding-top:7px!important;padding-bottom:7px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-fs.a-fnd{box-shadow:none!important;background:#E1E7F0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-stp{background:none!important;border:0!important;padding:0!important;font-size:13px!important;font-weight:400!important;color:#1B2230!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-tfi.a-lit{background:#E1E7F0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-reqlist .a-tfo.a-sel{box-shadow:none!important;background:#EEF1F5!important}
/* the worksheets (officers, safes): the lit answer a tint without an underline, statuses without badge icons,
   secondary lines at 12px, the table edge to edge like Document Analysis */
[data-nov="win"]:not([data-nov="hero"] *) .lv td.a-gap{box-shadow:none!important;background:#E1E7F0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes) .a-ri2{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes) :is(small,.a-sref){font-size:12px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes):not(.a-small) .a-wsp{padding-left:20px!important;padding-right:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes):not(.a-small) .a-tbl{margin-left:-20px!important;margin-right:-20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes):not(.a-small) .a-tbl :is(th,td):first-child{padding-left:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes):not(.a-small) .a-tbl :is(th,td):last-child{padding-right:20px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes) .a-who b{font-weight:500!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix.a-small .a-sfx{display:none}
/* the officers worksheet in a small slot: headers and titles wrap instead of ending in an ellipsis */
[data-nov="win"]:not([data-nov="hero"] *) .lv-officers.a-small :is(th,.a-who small,.a-who b){white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
/* r8b: a tree's new file name keeps its extension; a cut name ends on one ellipsis before ".pdf" */
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-dr:not(.a-orig *) .a-d2:has(>.a-fx){display:flex!important;text-overflow:clip}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-d2>.a-fnm{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-nov="win"]:not([data-nov="hero"] *) .lv .a-d2>.a-fx{flex:none}
/* r8b: the tie-out's right-aligned Shares column gets a gutter before the left-aligned Approval column */
.ex-pg table.tieout :is(td,th).r{padding-right:1.4em}
/* r8b: the phone signature card shows all three signature blocks, two to a row so each name keeps one line */
.ex-slip .sig{grid-template-columns:1fr 1fr;gap:14px 16px}
/* r8b: W8/W29 phone: the Note to Draft beside the source, bracketed italic text */
.lv-editor .a-mob .a-mnote{margin:10px 0 0;font-style:italic}
/* r8b: W29's poster rests in the editor's shape (app.js WSHAPE), as its live window does */
:is(.nov-win,.nov-prodv-win,.nov-walk-win)[data-win="29"]>.nov-win-poster{aspect-ratio:1/.62!important;max-height:620px!important;object-fit:cover;object-position:0 0}
/* r8b: W8/W29: no "page continues" shade across the document pane above the source card (it read as a stray grey band) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-view.a-cutb::before{display:none!important}
/* r8b: the italic r of "broker’s" pulled in, so the apostrophe sits on its word at 1x */
.ex .ap{letter-spacing:-.06em}
/* r8b: grid cells have a fixed height, so each exhibit there ends on a whole element above its fade:
   W7/W16 drop the report's running header (the lit ledger row then ends above the fade); W1 takes the short fade and
   ends on finding 3 (12px), finding 4 (9px) or finding 3 again in the narrowest cells */
/* round 12: the report page stands alone, so in a grid cell it keeps its running header and runs on as blank paper into
   the cell's fade, as a Word page does */
:is(.nov-cap-field,.nov-flow-vis) .ex.is-reportcap .ex-in>.ex-pg:last-child{--expt:5.2em!important;padding-bottom:calc(var(--exfade,2.2em) + 16em)}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .ex-stack{--exfade:3.4em!important}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .s2{display:none}
@container ex (min-width:630px){:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .f4{display:none}}
@container ex (max-width:529px){:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .f4{display:none}}
/* r8b (item 14): W15's opened row gets room above its first line; the worksheets' tab rules and tables reach the
   same edges as the table's header band (W15, W22, W23) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix .a-tbl tr.a-sel td{padding-top:9px!important;padding-bottom:10px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix:not(.a-small) .a-wtabs{margin:0 -20px;padding:0 20px}
[data-nov="win"]:not([data-nov="hero"] *) .lv-matrix.a-small .a-wtabs{margin:0 -14px;padding:0 14px}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes):not(.a-small) .a-wtop{margin:0 -20px;padding:0 20px}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes).a-small .a-wtop{margin:0 -14px;padding:0 14px}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes).a-sleek.a-phone:not(.a-small) .a-wsp>.a-tbl{width:calc(100% + 40px)!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv:is(.lv-officers,.lv-safes).a-sleek.a-phone.a-small .a-wsp>.a-tbl{width:calc(100% + 28px)!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv.a-noext .a-d2>.a-fx{display:none}
/* r8b: W25: the lit file name wraps rather than running into its "Missing signature" label (on a phone the slot is
   taller, app.js SMALLH, so the whole list shows) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig:not(.a-small) .a-sgr.a-ms{height:auto!important;min-height:40px;padding-top:6px;padding-bottom:6px}
[data-nov="win"]:not([data-nov="hero"] *) .lv-docsig:not(.a-small) .a-sgr.a-ms .a-sgn{white-space:normal!important;overflow:visible;line-height:17px}
/* r8b: W23: a triggered MFN keeps its basis on a narrow worksheet, where the other secondary lines give way */
[data-nov="win"]:not([data-nov="hero"] *) .lv-safes.a-tight .a-tbl td.a-gap .a-sref{display:block!important}
/* r8b (item 4): in a dark section's grid of windows an exhibit sits on the pale stage the other document windows use,
   so its sheets fade into pale, not through grey into navy (designer, pairs 07 and 20: W7, W16; also W1 and W19 in
   the flows); its poster rests on the same stage. The full-width navy bands keep their approved navy: the Platform
   overview's (W26, and its dark row's W1) and the walk-throughs' (W12, the designer's pair 11) */
:is(.nov-cap-field,.nov-flow-vis) [data-nov="win"] .ex{background:#EFF2F7;border-radius:10px;overflow:hidden}
:is(.nov-cap-field,.nov-flow-vis) [data-nov="win"]>.nov-win-poster{background:#EFF2F7}
/* r8c: the W3 and W19 phone tie-out cards end on their finding */
.ex-slip p.sfind{margin:12px 0 0}
/* ==== Connor, first review (Nov 12: Home and Platform overview, then Disclosure Schedules). One block per window,
   so later reviews can add to it. ==== */
/* Home tour, tab switch: every panel fills the tour's stage and carries the stage's own colour, so the incoming
   panel covers the outgoing one completely as it fades in (no window shows through another, and nothing pops when
   the old panel is hidden at the end), and each window sits at the top of its panel, so its top edge never moves */
[data-nov="tour"] .nov-tour-panel{align-self:stretch;background:#EFF2F7}
/* W1 (is-fill), and every page in the Home tour (round 9: "why is the disclosure schedule document so much smaller than
   the diligence report"), so its three tabs share one page width, type size and fade: the page fills its slot: whole-pixel type from 12px up to 15px as the slot widens, the
   field trimmed to a margin */
:is(.ex.is-fill,[data-nov="tour"] .ex) .ex-stack{--expad:1.2em}
@container ex (min-width:712px){:is(.ex.is-fill,[data-nov="tour"] .ex) .ex-stack{font-size:13px}}
@container ex (min-width:767px){:is(.ex.is-fill,[data-nov="tour"] .ex) .ex-stack{font-size:14px}}
@container ex (min-width:822px){:is(.ex.is-fill,[data-nov="tour"] .ex) .ex-stack{font-size:15px}}
/* W8, W29 (the schedule editor): the schedule page alone, no source card and nothing lit; the Note to Draft stays as
   the page's own text; on a phone, the schedule and its note */
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor :is(.a-exc,.a-cite){display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-mob .a-msrc{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-mob tr.lit td{background:none!important;box-shadow:none!important}
/* W19 in a grid cell (Solutions, Startup & venture): the cell's fixed height holds the tie-out page down to its
   finding once the subtitle gives way and the fade is shorter */
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .tsub{display:none}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .ex-stack{--exfade:3em!important}
/* W9 (round 9): the upload plays once and rests on its result (app.js upload). At rest (a-fin, also the still and the
   poster): Open Drafts, "First draft ready: 22 schedules" and a plain list of schedules, each with a check, ending
   "+N more". While it plays: the files land (w-f1, w-f2), the button goes down, "Reading 1,284 documents" over a filling
   bar (a-run, w-bar), then the rows appear one by one (w-list, a-in) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main:not(.a-run) .a-prog{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main:not(.a-fin) :is(.a-done,.a-b2){display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main:not(.a-fin) .a-b1{display:inline!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main:not(.a-fin):not(.w-list) .a-scheds{visibility:hidden}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main:not(.a-fin) .a-more{visibility:hidden}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main.w-list:not(.a-fin) .a-sc:not(.a-in):not(.a-more){opacity:0}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-sc{transition:opacity .25s ease-out}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-drop .a-file{transition:opacity .35s ease-out,transform .35s ease-out}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main.w-e0:not(.w-f1):not(.w-f2) .a-drop .a-file,
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main.w-f1:not(.w-f2) .a-drop:nth-child(2) .a-file{opacity:0;transform:translateY(4px)}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main.a-run .a-bar i{width:0!important;transition:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-main.a-run.w-bar .a-bar i{width:100%!important;transition:width 2.2s cubic-bezier(.3,.1,.3,1)!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-run .a-gobtn{background:#6B7080;border-color:#6B7080}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-en2{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-sc:not(.a-more)::after{content:""!important;display:block!important;flex:none;width:9px;height:5px;margin:0 3px 3px auto;
  border-left:1.5px solid #4B7F52;border-bottom:1.5px solid #4B7F52;transform:rotate(-45deg);background:none!important;border-radius:0!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-scheds{opacity:1!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-upload .a-sc.a-sel{background:none!important;font-weight:400!important;box-shadow:none!important}
/* W9's poster rests in its window's shape (app.js WSHAPE, 0.62 of its width) */
.nov-win[data-win="9"]>.nov-win-poster{aspect-ratio:1/.62!important;max-height:560px!important;object-fit:cover;object-position:0 0}
/* ==== Round 9 (Connor's review of the shipped round 8) ==== */
/* the opening's schedule: a whole Letter page with a soft edge on Word's light grey print-layout canvas (app.js paper and
   aim size it and open it at its top); the page is all Times, as rendered */
[data-nov="hero"] .nov-hero-next .a-view{background:#E9EBEF!important}
[data-nov="hero"] .nov-hero-next .a-pg{padding:16px 0 40px!important}
[data-nov="hero"] .nov-hero-next .a-wimg{box-shadow:0 0 0 1px rgba(17,24,39,.08),0 2px 8px rgba(17,24,39,.10)!important}
[data-nov="hero"] .nov-hero-next .a-empty{background:#E9EBEF!important}
/* W6 (round 9: "make it look cleaner, like it was"): one Word-style redline, the 9.2 cap struck in red and the new figure
   underlined in blue; no tint, no change bars; Keystone stays the selected row while the window plays */
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx p.chg::before{display:none!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-rlx ins{text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:2px}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare.lv.a-sleek .a-before .a-cmp .a-si.a-sel{background:#E8ECF2!important;font-weight:600!important;color:var(--ink)!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare.lv.a-sleek .a-before .a-cmp .a-si.a-prev{background:none!important;font-weight:400!important}
/* W8, W29 (round 9: "it doesn't look like a page of a disclosure schedule"): the schedule as a whole Letter page with a
   running header on Word's grey canvas, as in the opening (app.js wpage); the page before it is not shown */
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-viewer .a-view{background:#E9EBEF!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-viewer .a-pg{padding:16px 0 40px!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-viewer .a-wimg{box-shadow:0 0 0 1px rgba(17,24,39,.08),0 2px 8px rgba(17,24,39,.10)!important}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-wstack>.a-wimg:first-child{display:none!important}
/* the opening's documents pane (round 9b, Connor: "i still dont love the font of the file list"): Inter, the app list's
   face, at 13.5px with slightly tighter tracking; folders 500, files 400; the pane title stays as it is */
[data-nov="hero"] .nov-hero-next .hd-list,[data-nov="hero"] .nov-hero-next .hd-list *{font-family:Inter,'Helvetica Neue',Arial,sans-serif!important}
[data-nov="hero"] .nov-hero-next .hd-fo b{font-size:13.5px;font-weight:500;letter-spacing:-.01em;color:#151B26}
[data-nov="hero"] .nov-hero-next .hd-f{font-size:13.5px;line-height:19px;font-weight:400;letter-spacing:-.01em;color:#465061}
/* under an opening of about 1100px the pane is at its narrowest and 03's names take three lines: the extra open
   folders stay closed there, so the list still ends at the pane's foot */
@media (max-width:1099px){[data-nov="hero"] .nov-hero-next .hd-f.hd-x{display:none}}
/* round 9b (Connor: "the original font should match the revealed font"): the opening's files as uploaded, and the
   organized folders the divider uncovers, in the revealed Documents list's type, so the sweep changes only the names */
[data-nov="hero"] .ord .lv.a-skin.a-sleek .a-app :is(.a-dr,.a-dn,.a-d1,.a-d2):not(.a-wimg *){font-family:Inter,'Helvetica Neue',Arial,sans-serif!important;font-size:13.5px!important;
  font-weight:400!important;color:#465061!important;letter-spacing:-.01em!important;line-height:19px!important}
[data-nov="hero"] .ord .lv .a-dn{height:19px!important}
[data-nov="hero"] .ord .lv.a-skin.a-sleek .a-app :is(.a-dfo,.a-dfo b):not(.a-wimg *){font-family:Inter,'Helvetica Neue',Arial,sans-serif!important;font-size:13.5px!important;letter-spacing:-.01em!important}
[data-nov="hero"] .ord .lv .a-dfo b{font-weight:500!important;color:#151B26!important}
/* round 9b (the published-site gate): the documents-and-schedule pair is exactly the opening's height, and the filled
   list is clipped inside its pane; order.js hides each row from the first one that would be cut (.hd-cut), so the
   list ends on a whole row */
[data-nov="hero"] .nov-hero-next.hp-on{bottom:0}
[data-nov="hero"] .nov-hero-next.hp-on>.hd-docs{overflow:hidden}
[data-nov="hero"] .nov-hero-next .hd-list{flex:1 1 auto;min-height:0;overflow:hidden}
[data-nov="hero"] .nov-hero-next .hd-list>.hd-cut{visibility:hidden}
/* round 9b: in the Home tour every page fills its tab's box (the tallest tab sets it), running on as blank paper into
   the fade the way a Word page runs on below its last line, so no tab shows a short page over empty grey */
[data-nov="tour"] .nov-tour-panel{display:flex;flex-direction:column}
[data-nov="tour"] .nov-tour-panel>[data-nov="win"]{flex:1 1 auto;display:flex;flex-direction:column}
[data-nov="tour"] [data-nov="win"]>.spot.doc{flex:1 1 auto;display:flex;flex-direction:column}
[data-nov="tour"] .spot.doc>.ex{flex:1 1 auto;display:flex;flex-direction:column}
[data-nov="tour"] .ex>.ex-stack{flex:1 1 auto;display:flex;flex-direction:column}
[data-nov="tour"] .ex-stack>.ex-in{flex:1 1 auto;display:flex;flex-direction:column}
[data-nov="tour"] .ex-in>.ex-pg:last-child{flex:1 1 auto}
@container ex (max-width:419px){[data-nov="tour"] .ex>.ex-stack{display:none}
  [data-nov="tour"] .ex>.ex-slips{display:flex;flex-direction:column;flex:1 1 auto}
  [data-nov="tour"] .ex-slips>.ex-slip:last-child{flex:1 1 auto}}
/* ==== Round 10 ==== */
/* the tie-out (W3, W18-W20) as one document: a subtotal per class, then the total outstanding under a double rule */
.ex-pg tr.tot.gt td{border-top:3px double #000}
.ex-pg table.tieout td{padding-top:.2em;padding-bottom:.2em}
.ex-pg table.tieout td.grp{padding-top:.55em}
.ex-pg p.tfind{margin-top:1.1em!important}
/* in a grid cell (Solutions, Startup & venture: W19) the fixed height holds the page down to its total outstanding: the
   findings give way, as the subtitle already does, so the fade crosses blank paper */
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .tfind{display:none}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .ex-in>.ex-pg:last-child{--expt:3.5em!important;padding-bottom:calc(var(--exfade,3em) + 14em)}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .ex-hdr{display:none}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tieout .ex-pg table.tieout td{padding-top:.12em;padding-bottom:.12em}
/* W6 (round 10): the play's starting states (app.js compare); without c6-on every rule falls away, so the rest frame
   is round 9's clean redline. The old cap is plain ink until it is struck; the new figure is clipped from the right
   until it writes in, holding its place so the clause never reflows */
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-cmp .a-si{transition:opacity .35s ease,transform .35s ease,background-color .3s ease}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-cmp .a-si.c6-h{opacity:0;transform:translateY(5px)}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-cmp .a-si .a-pct{transition:opacity .3s ease}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-cmp .a-si.c6-p .a-pct{opacity:0}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx{transition:opacity .45s ease}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx.c6-h{opacity:0}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx del{transition:color .5s ease,text-decoration-color .5s ease}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx del.c6-h{color:#0B0B0B;text-decoration-color:transparent}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx ins{clip-path:inset(-6px 0 -8px 0);transition:clip-path .6s cubic-bezier(.4,0,.2,1)}
[data-nov="win"]:not([data-nov="hero"] *) .lv-compare .a-main.c6-on .a-rlx ins.c6-h{clip-path:inset(-6px 100% -8px 0)}
/* Platform overview (round 10, navy kept, geometry fixed). The report row: its lead follows the chapter title as a
   deck, and under 1280px, where the column beside the words cannot hold a whole page, the words go above and the
   report takes the row's width, so its page is whole and centred at the tour's sizes (is-fill: 12 to 15px) instead
   of cropped at the right with a hard edge */
.nov-caps:has(.nov-srow-vis.is-dark){padding-top:clamp(8px,1.1vw,16px)}
@media (max-width:1279px){.nov-caps .nov-srow-grid.is-top:has(.nov-srow-vis.is-dark){grid-template-columns:minmax(0,1fr)}}
/* the schedule band: the navy frame hugs the page with even margins (the page at 14px from 767px of frame, as the report
   beside it) instead of a full-width slab around a small page */
.nov-ml-ds .nov-plat-wide:has(>[data-nov="win"][data-win="26"]){max-width:930px;margin-left:auto;margin-right:auto;padding-top:clamp(16px,4vw,60px);padding-right:clamp(16px,4vw,60px);padding-left:clamp(16px,4vw,60px)}
.nov-ml-ds .ex .ex-stack{--expad:1.2em}
@container ex (min-width:712px){.nov-ml-ds .ex .ex-stack{font-size:13px}}
@container ex (min-width:767px){.nov-ml-ds .ex .ex-stack{font-size:14px}}
/* the pale-stage option for both sections (Connor's call): OFF. To switch it on, change "not all" to "all" */
@media not all{
  .nov-srow-vis.is-dark{background-color:#EFF2F7!important;border-radius:10px}
  .nov-ml-ds .nov-plat-wide:has(>[data-nov="win"][data-win="26"]){background:#E3E8F0!important;border-radius:10px}
  :is(.nov-srow-vis.is-dark,.nov-plat-wide) .ex-pg{box-shadow:0 0 0 1px rgba(15,23,42,.09),0 .15em .35em rgba(15,25,40,.07),0 1.4em 2.6em -1.4em rgba(15,25,40,.32)!important}
  :is(.nov-srow-vis.is-dark,.nov-plat-wide) .ex-slip{box-shadow:0 0 0 1px rgba(15,23,42,.09),0 2px 5px rgba(15,25,40,.06),0 14px 26px -18px rgba(15,25,40,.35)!important}
  :is(.nov-srow-vis.is-dark,.nov-plat-wide) .ex-pg.is-edge{box-shadow:0 0 0 1px rgba(15,23,42,.16)!important}
}
/* round 12, Cap table: W19 is the tie-out's findings (is-tfind) and W20 the tie-out in its app view (is-appx): a title
   bar with Export to Word over the table page on Word's grey canvas. In a grid cell a page runs on into the fade */
:is(.nov-cap-field,.nov-flow-vis) .ex.is-tfind .ex-in>.ex-pg:last-child{padding-bottom:calc(var(--exfade,5em) + 16em)}
.ex.is-appx{background:#E9EBEF;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px rgba(15,23,42,.10),0 18px 40px -26px rgba(15,25,40,.45)}
.ex.is-appx>.exa-bar{display:flex;align-items:center;height:52px;padding:0 18px 0 22px;box-sizing:border-box;background:#fff;border-bottom:1px solid #E3E7ED;
  font:400 13px/1 Inter,'Helvetica Neue',Arial,sans-serif;color:#687283;white-space:nowrap}
.ex .exa-t{font:500 17px/1 Newsreader,Georgia,serif;letter-spacing:-.01em;color:#151B26}
.ex .exa-co::before{content:"";display:inline-block;width:1px;height:14px;margin:0 12px 0 14px;background:#E3E7ED;vertical-align:-2px}
.ex .exa-btn{display:inline-block;margin-left:auto;padding:9px 14px;border-radius:6px;background:#0C1320;color:#fff;font:500 12.5px/1 Inter,'Helvetica Neue',Arial,sans-serif;white-space:nowrap}
.ex-slip .exa-sbtn{display:flex;justify-content:flex-end;margin-top:12px}
@container ex (max-width:559px){.ex .exa-co{display:none}}
@container ex (max-width:419px){.ex.is-appx>.exa-bar{display:none}}
/* round 12 (Connor: "the screenshot doesn't look good"): in a card or row between 486px and 629px the report page was
   cropped at the right, set at the card's left with a grey strip beside it and its sheets cut across the top; it now
   shows whole and centred, its type a little under 12px so it fits */
@container ex (min-width:486px) and (max-width:709px){
  :is(.nov-cap-field,.nov-flow-vis,.nov-srow-vis) .ex:is(.is-report,.is-reportcap) .ex-stack{font-size:clamp(9px,calc((100cqi - 6px) / 54),12px)!important;--expad:.8em!important;width:calc(var(--exspan,53.5)*1em)!important;margin:0 auto!important;
    padding:var(--expad) var(--expad) 0!important;-webkit-mask-image:var(--exmask)!important;mask-image:var(--exmask)!important}
  :is(.nov-cap-field,.nov-flow-vis,.nov-srow-vis) .ex:is(.is-report,.is-reportcap) .ex-pg{left:calc(var(--exx,0)*1em)!important}
  :is(.nov-cap-field,.nov-flow-vis,.nov-srow-vis) .ex:is(.is-report,.is-reportcap) .ex-in>.ex-pg:last-child{margin-left:calc(var(--exx,0)*1em)!important}}
/* round 13: the report's later page (W7, W16) keeps its running header in the top margin, clear of the body */
.ex.is-reportcap .ex-hdr{top:2.3em}
:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .ex-in>.ex-pg:last-child{padding-bottom:calc(var(--exfade,4em) + 16em)}
@container ex (min-width:486px) and (max-width:629px){:is(.nov-cap-field,.nov-flow-vis) .ex.is-report .f4{display:none}}
/* round 13: the editor's page runs off the bottom of its canvas into a fade (app.js ends and paper) */
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-viewer .a-view{position:relative}
[data-nov="win"]:not([data-nov="hero"] *) .lv-editor .a-viewer .a-view::before{content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;top:auto!important;bottom:0!important;height:72px!important;z-index:4!important;pointer-events:none!important;background:linear-gradient(rgba(233,235,239,0),rgba(233,235,239,.85) 55%,#E9EBEF 82%)!important}
/* ==== Round 14: W30, the public-records searches (app.js searches) ==== */
.lv.lv-searches .s-body{display:flex!important;flex-direction:row!important;align-items:stretch!important;padding:0!important;gap:0!important;flex:1 1 auto;min-height:0;box-sizing:border-box}
.lv.lv-searches .s-pane{flex:0 0 352px;box-sizing:border-box;padding:18px 20px 0 22px;background:#fff;border-right:1px solid #E6E9EE;overflow:hidden;text-align:left}
.lv.lv-searches.a-skin.a-sleek .a-app .a-main .s-body .s-pane,.lv.lv-searches.a-skin.a-sleek .a-app .a-main .s-body .s-pane *{font-family:Inter,'Helvetica Neue',Arial,sans-serif!important;letter-spacing:-.005em!important}
.lv.lv-searches .s-ph b{display:block;font-size:14px;font-weight:500;line-height:1.3;color:#151B26}
.lv.lv-searches .s-ph span{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:#687283}
.lv.lv-searches .s-list{list-style:none;margin:12px 0 0;padding:0}
.lv.lv-searches .s-r{display:grid;grid-template-columns:18px minmax(0,1fr);column-gap:11px;padding:7px 0;border-top:1px solid #EEF0F3;font-size:13px;line-height:1.35;color:#151B26;transition:color .3s ease}
.lv.lv-searches .s-n small{display:inline;margin-left:6px;font-size:11.5px;line-height:1.35;color:#7A8392}
.lv.lv-searches .s-st{grid-column:2;margin-top:2px;font-size:12.5px;line-height:1.35;color:#465061}
.lv.lv-searches .s-st i{font-style:normal}
.lv.lv-searches .s-run{display:none;color:#7A8392}
.lv.lv-searches .s-ic{display:grid;place-items:center;width:18px;height:18px;margin-top:1px;border-radius:50%;box-shadow:inset 0 0 0 1.3px #C9CED6;transition:background-color .25s ease,box-shadow .25s ease}
.lv.lv-searches .s-ic svg{width:12px;height:12px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .25s ease}
.lv.lv-searches .s-done .s-ic{background:#151B26;box-shadow:none}
.lv.lv-searches .s-done .s-ic svg{opacity:1}
.lv.lv-searches :is(.s-wait,.s-going) .s-res{display:none}
.lv.lv-searches .s-wait{color:#9AA1AC}
.lv.lv-searches .s-wait .s-n small{color:#B9BEC6}
.lv.lv-searches .s-going .s-run{display:inline}
.lv.lv-searches .s-going .s-ic{box-shadow:inset 0 0 0 1.3px #151B26}
.lv.lv-searches .s-doc{position:relative;flex:1 1 auto;min-width:0;box-sizing:border-box;padding:0;background:#E9EBEF;overflow:hidden;container-type:inline-size}
/* round 14b: one Word page per section on the canvas, Letter-shaped, Word's gap between them; at rest the canvas has
   scrolled down to the 2.10 page (app.js pagerest puts its top 80px below the canvas top, so the break shows) */
.lv.lv-searches .s-pages{--sy:0px;padding:16px 20px 0;transform:translateY(var(--sy))}
.lv.lv-searches .s-pages.s-top{--sy:0px!important}
.nov-win[data-win="30"]>.nov-win-poster{aspect-ratio:1/.86!important;max-height:600px!important;object-fit:cover;object-position:0 0}
.lv.lv-searches .a-main.s-on .s-pages{transition:transform 2.6s cubic-bezier(.45,0,.2,1)}
.lv.lv-searches .s-pane{position:relative}
.lv.lv-searches .s-pane::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40px;pointer-events:none;background:linear-gradient(rgba(255,255,255,0),#fff 85%)}
.lv.lv-searches .s-doc::after{content:"";position:absolute;left:0;right:0;bottom:0;height:64px;pointer-events:none;background:linear-gradient(rgba(233,235,239,0),rgba(233,235,239,.85) 55%,#E9EBEF 82%)}
.lv.lv-searches .s-pg{position:relative;aspect-ratio:8.5/11;margin:0 0 14px;box-sizing:border-box;padding:44px 50px 60px;background:#fff;box-shadow:0 0 0 1px rgba(17,24,39,.08),0 2px 8px rgba(17,24,39,.10);
  color:#0B0B0B;text-align:left}
.lv.lv-searches .s-pg,.lv.lv-searches .s-pg *{font-family:'Times New Roman',Tinos,Times,serif!important;letter-spacing:0!important}
.lv.lv-searches .s-pg{font-size:12px;line-height:1.27}
.lv.lv-searches .s-hdr{text-align:right;font-size:10px;margin-bottom:20px}
.lv.lv-searches .s-ftr{position:absolute;left:0;right:0;bottom:26px;text-align:center;font-size:10px}
.lv.lv-searches .s-pg p{margin:0 0 .6em}
.lv.lv-searches .s-pg .sh{text-align:center;font-weight:bold;text-decoration:underline;text-underline-offset:.12em;margin:0}
.lv.lv-searches .s-pg .s-sh2{margin-bottom:.8em}
.lv.lv-searches .s-pg .s-gap{margin-top:1em}
.lv.lv-searches .s-pg .en{display:grid;grid-template-columns:2em minmax(0,1fr);margin:0 0 .6em}
.lv.lv-searches .s-pg .ntd{font-style:italic}
.lv.lv-searches .s-pg .cit a{color:#0563C1;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}
.lv.lv-searches .s-hide{display:none!important}
.lv.lv-searches .a-main.s-on :is(.s-new1,.s-new2):not(.s-hide){animation:sLand .7s cubic-bezier(.2,.7,.2,1) both}
.lv.lv-searches.a-nar .s-pane{flex-basis:300px}
.lv.lv-searches.a-nar .s-n small{display:none}
.lv.lv-searches.a-nar .s-ph span{font-size:11px;line-height:1.4}
.lv.lv-searches.a-nar .s-pane{padding-top:14px}
.lv.lv-searches.a-nar .s-list{margin-top:8px}
.lv.lv-searches.a-nar .s-r{padding:5px 0;font-size:12.5px}
.lv.lv-searches.a-nar .s-st{font-size:12px;margin-top:1px}
@keyframes sLand{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
/* a phone: the searches above the schedule, each on one line with what it found */
.lv.lv-searches.a-small .s-body{flex-direction:column!important}
.lv.lv-searches.a-small .s-pane{flex:none;padding:14px 16px 10px;border-right:0;border-bottom:1px solid #E6E9EE}
.lv.lv-searches.a-small .s-pane::after{display:none}
.lv.lv-searches.a-small .s-ph span{display:none}
.lv.lv-searches.a-small .s-list{margin-top:8px}
.lv.lv-searches.a-small .s-r{padding:6px 0;font-size:14px}
.lv.lv-searches.a-small .s-n small{display:none}
.lv.lv-searches.a-small .s-st{font-size:13px}
.lv.lv-searches.a-small .s-pages{--sy:0px!important;padding:12px 12px 0}
.lv.lv-searches.a-small .s-pg{padding:22px 20px 40px}
.lv.lv-searches.a-small .s-ftr{bottom:14px;font-size:11px}
.lv.lv-searches .s-ftr.s-off{visibility:hidden}
.lv.lv-searches.a-small .s-pg{font-size:12.5px}
.lv.lv-searches.a-small .s-hdr{font-size:11px;margin-bottom:12px}
/* round 11: a row the window's edge would cut is hidden with the rows after it (app.js rowcut) */
.lv .a-rcut{visibility:hidden!important}
/* ==== Round 11 (Connor's option 1): the opening in the app's frame ==== */
/* the frame is the window's main pane (the design's 1000 x 640) plus the browser bar above it and the sidebar beside
   it, so the panes inside keep their round-9b sizes at 1440; the poster takes the same shape */
[data-nov="hero"] .nov-hero-window{max-width:min(1188px,100%)}
@media (min-width:768px) and (max-width:1099px){[data-nov="hero"] .nov-hero-window{max-width:min(1188px,92vw)}}
[data-nov="hero"] .nov-hero-window>.nov-win-poster{aspect-ratio:1188/678!important;max-height:none!important}
@media (max-width:1199px){[data-nov="hero"] .nov-hero-window>.nov-win-poster{aspect-ratio:146/100!important}}
@media (max-width:767px){[data-nov="hero"] .nov-hero-window>.nov-win-poster{aspect-ratio:350/460!important}}
[data-nov="hero"] .nov-hero-window.hf-on{--hfb:38px;--hfs:188px;box-sizing:border-box;padding:var(--hfb) 0 0 var(--hfs);background:#fff;border-radius:12px;overflow:hidden;
  box-shadow:0 0 0 1px rgba(12,19,32,.14),0 30px 70px -30px rgba(4,10,22,.62);transform-origin:50% 0}
[data-nov="hero"] .nov-hero-window.hf-on .ord,[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next.hp-on,[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next .lv{box-shadow:none!important;border-radius:0!important}
[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next{top:var(--hfb)!important;left:var(--hfs)!important;right:0!important}
[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next.hp-on{bottom:0!important}
[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next.hp-on>.hd-docs{flex:0 0 300px}
/* the schedule's grey canvas fills its pane, as Word's does, so the page is as large as the pane allows */
[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next.hp-on .a-body{padding:0!important}
[data-nov="hero"] .nov-hero-window.hf-on .nov-hero-next.hp-on>:not(.hd-docs){border-left:0}
[data-nov="hero"] .nov-hero-window.hf-on>.hf-bar{position:absolute;top:0;left:0;right:0;z-index:4;display:flex;align-items:center;gap:16px;height:var(--hfb);box-sizing:border-box;padding:0 14px;
  background:#F3F4F6;border-bottom:1px solid #E2E5EA}
[data-nov="hero"] .nov-hero-window.hf-on .hf-tl{display:flex;gap:7px}
[data-nov="hero"] .nov-hero-window.hf-on .hf-tl i{width:11px;height:11px;border-radius:50%;background:#DADDE2}
[data-nov="hero"] .nov-hero-window.hf-on .hf-arr{display:flex;gap:6px}
[data-nov="hero"] .nov-hero-window.hf-on .hf-bar svg{width:15px;height:15px;fill:none;stroke:#9AA1AC;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
[data-nov="hero"] .nov-hero-window.hf-on .hf-url{position:absolute;left:50%;top:7px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:6px;
  width:min(420px,60%);height:24px;box-sizing:border-box;padding:0 12px;border-radius:6px;background:#fff;box-shadow:0 0 0 1px #E2E5EA;
  font:400 12.5px/24px Inter,'Helvetica Neue',Arial,sans-serif;letter-spacing:-.005em;color:#5F6878;white-space:nowrap;overflow:hidden}
[data-nov="hero"] .nov-hero-window.hf-on .hf-url svg{width:12px;height:12px;flex:none}
[data-nov="hero"] .nov-hero-window.hf-on .hf-url>span{overflow:hidden;text-overflow:ellipsis}
[data-nov="hero"] .nov-hero-window.hf-on .hf-url b{font-weight:400}
[data-nov="hero"] .nov-hero-window.hf-on .hf-u2,[data-nov="hero"] .nov-hero-window.hf-on.hf-ds .hf-u1{display:none}
[data-nov="hero"] .nov-hero-window.hf-on.hf-ds .hf-u2{display:inline}
[data-nov="hero"] .nov-hero-window.hf-on>.hf-side{position:absolute;top:var(--hfb);left:0;bottom:0;z-index:4;display:flex;flex-direction:column;width:var(--hfs);box-sizing:border-box;padding:16px 10px 14px;
  background:#F7F8FA;border-right:1px solid #E5E8ED;font:400 13px/1.3 Inter,'Helvetica Neue',Arial,sans-serif;letter-spacing:-.01em;color:#465061;text-align:left}
[data-nov="hero"] .nov-hero-window.hf-on .hf-brand{display:flex;align-items:center;gap:10px;margin:0 4px 18px}
[data-nov="hero"] .nov-hero-window.hf-on .hf-m{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:6px;background:#0C1320;color:#fff;font:500 15px/1 Newsreader,Georgia,serif}
[data-nov="hero"] .nov-hero-window.hf-on .hf-co{display:flex;flex-direction:column;font-weight:500;color:#151B26;white-space:nowrap}
[data-nov="hero"] .nov-hero-window.hf-on .hf-co small{font-size:11px;font-weight:400;color:#7A8392}
[data-nov="hero"] .nov-hero-window.hf-on .hf-nvs{display:flex;flex-direction:column;gap:2px}
[data-nov="hero"] .nov-hero-window.hf-on .hf-nv{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:6px;white-space:nowrap;transition:background-color .3s ease,color .3s ease}
[data-nov="hero"] .nov-hero-window.hf-on .hf-nv svg{flex:none;width:15px;height:15px;fill:none;stroke:#7A8392;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
[data-nov="hero"] .nov-hero-window.hf-on:not(.hf-ds) .hf-d1,[data-nov="hero"] .nov-hero-window.hf-on.hf-ds .hf-d2{background:#E8ECF2;color:#151B26;font-weight:500}
[data-nov="hero"] .nov-hero-window.hf-on:not(.hf-ds) .hf-d1 svg,[data-nov="hero"] .nov-hero-window.hf-on.hf-ds .hf-d2 svg{stroke:#151B26}
[data-nov="hero"] .nov-hero-window.hf-on .hf-me{display:flex;align-items:center;gap:9px;margin-top:auto;padding:0 6px;white-space:nowrap}
[data-nov="hero"] .nov-hero-window.hf-on .hf-av{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#E3E7EE;font-size:10.5px;font-weight:500;color:#465061}
/* 768-1199: the sidebar is an icon rail, so the panes keep their room */
@media (max-width:1199px){[data-nov="hero"] .nov-hero-window.hf-on{--hfs:56px}
  [data-nov="hero"] .nov-hero-window.hf-on .hf-co,[data-nov="hero"] .nov-hero-window.hf-on .hf-nv>span,[data-nov="hero"] .nov-hero-window.hf-on .hf-me>span:last-child{display:none}
  [data-nov="hero"] .nov-hero-window.hf-on .hf-brand{justify-content:center;margin:0 0 18px} [data-nov="hero"] .nov-hero-window.hf-on .hf-nv{justify-content:center;padding:8px 0} [data-nov="hero"] .nov-hero-window.hf-on .hf-me{justify-content:center;padding:0}}
/* a phone: the browser bar alone, smaller; no sidebar */
@media (max-width:767px){[data-nov="hero"] .nov-hero-window.hf-on{--hfb:30px;--hfs:0px;border-radius:10px} [data-nov="hero"] .nov-hero-window.hf-on>.hf-side{display:none}
  [data-nov="hero"] .nov-hero-window.hf-on .hf-arr{display:none} [data-nov="hero"] .nov-hero-window.hf-on .hf-url{top:4px;height:22px;width:min(300px,74%);font-size:11px;line-height:22px}}
/* on a computer the window rests a little smaller under the words and grows as the page scrolls (order.js): its rest
   scale, the room it grows into (margin) and the photograph behind its full size are set here, so they are in place
   before the script runs and the photograph never moves at load */
@media (min-width:768px) and (prefers-reduced-motion:no-preference){[data-nov="hero"] .nov-hero-window{transform:scale(.89);transform-origin:50% 0;margin-bottom:41px}
  [data-nov="hero"] [data-nov="hero-clip"]{height:100%}}
[data-nov="hero"] .nov-hero-window{will-change:auto}
[data-nov="hero"].hf-grow .nov-hero-window{will-change:transform}
[data-nov="hero"].hf-grow [data-nov="hero-words"]{will-change:opacity}
/* ---- r8 exhibits end ---- */

/* R5P (Nov 12): on short screens (phones held sideways) the hero's documents-and-schedule pair stays inside its
   window instead of hanging 34px below it. Also live as Home head code. */
@media (max-height:500px){[data-nov="hero"] .nov-hero-next.hp-on{bottom:0}}

.page-wrapper.is-nov{
  --ink:#0C1320; --ink-2:#394252; --ink-3:#667085;
  --line:#D8DEE7; --line-2:#E8ECF2; --rule:#0C1320;
  --paper:#FFFFFF; --mist:#EFF2F7; --mist-2:#E4E9F1;
  --night:#07101E; --night-2:#0D1A2E; --sky:#A9C3E2; --ember:#C97C5D;
  --serif:'Newsreader','Source Serif 4',Georgia,'Times New Roman',serif;
  --sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --gut:clamp(20px,4.4vw,72px); --max:1440px;
  --pad:max(var(--gut),calc((100vw - var(--max))/2));
  --padl:max(var(--pad),env(safe-area-inset-left,0px)); --padr:max(var(--pad),env(safe-area-inset-right,0px));
  --sec:clamp(84px,9.6vw,160px); --lead:clamp(44px,5.2vw,84px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --stage-bg:var(--mist);
}

:where([data-nov="win"]) img{max-width:100%}
[data-nov="win"] [hidden]:not([hidden=until-found i]){display:none!important}
main :where([data-nov="win"] *){box-sizing:border-box}
:where([data-nov="win"]) :is(h2,h3,h4,p,blockquote,figure,ol,ul,dl,dd){margin:0}
main :where([data-nov="win"]) :is(h2,h3){font-family:var(--serif);font-optical-sizing:auto;font-weight:430;letter-spacing:-.026em;text-wrap:balance;color:inherit}
main .spot h2,main .spot h3{font-family:inherit;letter-spacing:normal;text-wrap:initial}

/* The home page's motion layer: what a Webflow class cannot hold. It adds movement, script-driven states, hover
   effects that reach a child, and the product windows' own rules. It never restyles what a nov- class sets, except
   under a state the script sets (html.nov-film, .is-open on the header) or a condition Webflow has no breakpoint
   for (touch screens, reduced motion, the 992 to 1279px window field).
   build.py puts the product windows' stylesheet in front of this file. */

html{scroll-behavior:smooth;scroll-padding-top:84px}
.page-wrapper.is-nov{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.page-wrapper.is-nov ::selection{background:#C9DAF1;color:#0C1320}

/* ---------- keyboard focus */
.page-wrapper.is-nov :focus-visible{outline:2px solid #0C1320!important;outline-offset:3px!important}
/* white on the photographs, the dark sections and bands, the footer and the clear header. Each selector starts from
   the page wrapper so it outranks the rule above; the open header menus are white panels, so they go back to ink. */
.page-wrapper.is-nov :is(.nov-hero,.nov-phero,.nov-chapter,.nov-dark,.nov-flow,.nov-practice,.nov-sol-band.is-dark,.nov-demo-pic,.nov-close,.nov-footer,.nov-nav:not(.is-solid)) :focus-visible{outline-color:#fff!important}
.page-wrapper.is-nov .nov-nav:not(.is-solid) .nov-nav-menu :focus-visible,.page-wrapper.is-nov .nov-nav .nov-nav-menu :focus-visible{outline-color:#0C1320!important}
/* a section reached by an in-page link takes focus without drawing a ring around the whole section */
.page-wrapper.is-nov [tabindex="-1"]:focus,.page-wrapper.is-nov [tabindex="-1"]:focus-visible{outline:none!important}

/* ---------- header: a hover reaches the underline and the menu arrows; the open sheet hides the header's demo button */
.nov-nav-link:hover .nov-nav-line,.nov-nav-link[aria-current="page"] .nov-nav-line,.nov-nav-link[data-here] .nov-nav-line{transform:scaleX(1)}
.nov-nav-menu-link:hover .nov-nav-menu-arrow{transform:translateX(3px);color:#0C1320}
.nov-nav.is-open [data-nov="nav-light"]{visibility:hidden}
[data-nov="nav-top"],[data-nov="burger"],[data-nov="tabs"] [role="tab"]{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}

/* ---------- text links: the arrow steps forward */
.nov-link:hover .nov-link-arrow{transform:translateX(5px)}

/* The header stays in view only where the script runs, because the script is what switches its colours as the page
   scrolls. Without it (a browser with scripts off, and the Designer canvas) the class leaves the header at the top
   of the page, over the photograph it is drawn for, and it scrolls away with the page. */
html.nov-wait .nov-nav,html.nov-js .nov-nav{position:fixed}
/* the header turns white, or back, in one frame (nov.js sets nov-swap for two frames); its slide and the menu
   button's turn into a cross keep their ease, and hovers keep their transitions */
.nov-nav.nov-swap{transition:transform .35s cubic-bezier(.2,.7,.2,1)!important}
.nov-nav.nov-swap *:not(.nov-nav-bar){transition:none!important}
/* the opening photograph closes in very slowly (the only photograph that moves; none moves with the scroll) */
html.nov-js [data-nov="hero"] [data-nov="photo"]{animation:nov-drift 40s ease-in-out infinite alternate}
@keyframes nov-drift{from{transform:scale(1.02)}to{transform:scale(1.1)}}

/* ---------- the opening's words rise in once, starting when the page stops waiting (see html.nov-wait below), so
   the rise is never spent while they are hidden */
html.nov-js:not(.nov-wait):not(.nov-late) [data-nov="hero-words"]>*{animation:nov-rise .9s cubic-bezier(.2,.7,.2,1) both}
html.nov-js:not(.nov-wait):not(.nov-late) [data-nov="hero-words"]>h2{animation:nov-unmask 1.1s cubic-bezier(.2,.7,.2,1) both}
html.nov-js:not(.nov-wait):not(.nov-late) [data-nov="hero-words"]>p{animation-delay:.08s}
html.nov-js:not(.nov-wait):not(.nov-late) [data-nov="hero-words"]>div{animation-delay:.16s}
@keyframes nov-unmask{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(.28em)}to{opacity:1;clip-path:inset(-.25em -.1em);transform:none}}
@keyframes nov-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}


/* ---------- the opening waits for the script. The page's head code adds html.nov-wait before anything is drawn; the
   opening's words and window appear together once the script has laid the scene out, so nothing jumps. If the script
   has not started after 2.5 seconds the head code takes the mark off, and the page stands as it does without
   scripts; a script that starts after that adds html.nov-late, so the words do not make their entrance twice.
   Without scripts the class is never added. */
html.nov-wait [data-nov="hero-words"],html.nov-wait [data-nov="hero"] [data-nov="win"]{opacity:0}
html.nov-in [data-nov="hero"] [data-nov="win"]{transition:opacity .6s cubic-bezier(.2,.7,.2,1)}
/* The header's words wait with them, so they are first drawn in their own typeface (the script lets everything in
   once the opening's fonts have arrived, or after 0.7 seconds). The logo, a picture, shows from the first frame. */
html.nov-wait .nov-nav-links,html.nov-wait .nov-nav-cta{opacity:0}
html.nov-in .nov-nav-links,html.nov-in .nov-nav-cta{transition:opacity .6s cubic-bezier(.2,.7,.2,1)}
/* The waiting photograph is drawn at the size its slow drift starts from, so it does not step when the drift begins;
   on a late start (see above) there is no drift, because the visitor is already looking at the photograph at rest. */
html.nov-wait [data-nov="hero"] [data-nov="photo"]{transform:scale(1.02)}
html.nov-late [data-nov="hero"] [data-nov="photo"]{animation:none}

/* ---------- security columns: still drawings, no pointer effects (Connor 2026-11-11: the hover animations were unnecessary).
   The script swaps each still picture (what the Designer shows) for the same drawing as page elements. */
.nov-sec-art>svg{position:absolute;top:0;left:0;display:block;width:100%;height:100%}
.nov-sec-art .rings circle{fill:none;stroke:rgba(22,24,29,.06);stroke-width:1}
.nov-sec-art .ic{fill:none;stroke:#23262D;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.nov-sec-art .ic .faint{stroke:rgba(35,38,45,.5)}
.nov-sec-art .ic .hatch{stroke:rgba(35,38,45,.14);stroke-width:1}
.nov-sec-art .ic .dot{fill:#23262D;stroke:none}



/* ---------- tabs: on a phone the strip scrolls sideways and fades whichever edge has tabs beyond it (--fl, --fr) */
@media (max-width:767px){
  [data-nov="tabs"]{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl,0px),#000 calc(100% - var(--fr,0px)),transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl,0px),#000 calc(100% - var(--fr,0px)),transparent 100%)}
  [data-nov="tabs"]::-webkit-scrollbar{display:none}
}


/* ---------- touch tablets: text links, tabs and footer links get a taller hit area */
@media (hover:none) and (max-width:1100px){
  .nov-link{display:inline-block;padding:11px 0}
  .nov-tab{padding-top:14px}
  .nov-footer-link{display:inline-block;padding:10px 0}
  .nov-footer-list{gap:0}
  .nov-nav-link{padding:14px 0}
  .nov-nav-logo{padding:12px 0}
}

/* ---------- product windows: each slot holds a still picture until the script puts the live window in.
   These rules are the mock's page-level rules for windows with the same weight they had there: `main` is the page's
   main element, and `main.main-wrapper` stands where the mock wrote `main.v-apps`. */
[data-nov="win"].is-live>.nov-win-poster{display:none}
main .spot *{box-sizing:content-box}
main .lv,main .lv .box{box-sizing:border-box}
main .spot{margin:0}
main .lv{margin-inline:auto}
main .lv .v-appw,main .lv .v-appw *{border-radius:0!important}
main .lv .v-appw{border-radius:5px!important}
main .lv .v-veil{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
main .lv .v-logo{font-family:'Libre Baskerville',Georgia,serif}
main.main-wrapper .spot.live{position:static!important;width:auto!important;max-width:none!important;margin:0!important;transform:none!important;top:auto;left:auto}
main.main-wrapper .lv.a-skin{width:100%!important;max-width:1000px!important;margin:0 auto!important}
main.main-wrapper .lv .a-win{box-shadow:0 0 0 1px rgba(12,19,32,.1),0 30px 60px -34px rgba(4,10,22,.42),0 10px 24px -16px rgba(4,10,22,.2)}
main.main-wrapper .lv .a-url{font-family:Inter,'Helvetica Neue',Arial,sans-serif;letter-spacing:0}
main.main-wrapper .lv-organize .a-srch{flex:0 0 auto;width:auto;min-width:300px;max-width:none;white-space:nowrap;overflow:visible}
main.main-wrapper .lv-organize .a-dl{-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 38px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 38px),transparent)}
/* a window is never drawn larger than life: with less than 900px of room it is the 780px layout at 1:1 or smaller */
@container (max-width:899px){
  main.main-wrapper .lv.a-skin{max-width:780px!important}
}
main.main-wrapper .nov-dark .lv .a-win{box-shadow:0 0 0 1px rgba(255,255,255,.07),0 36px 70px -34px rgba(0,0,0,.75)}

/* ---------- the opening: the Data Room window as a split view (the same files named and filed on the left, the
   upload as it arrived on the right; the divider can be dragged, and in the scroll scene it keeps moving right) */
.ord{--xn:.52;position:relative;z-index:2;container-type:inline-size;overflow:hidden;background:#fff;text-align:left;border-radius:5px;
  box-shadow:0 0 0 1px rgba(12,19,32,.1),0 60px 120px -50px rgba(4,10,22,.75),0 18px 40px -22px rgba(4,10,22,.4)}
.ord .lv{max-width:none!important;width:max(100cqw,720px)!important;margin:0!important}
.ord .lv .v-appw{box-shadow:none!important;border-color:transparent!important}
.ord .lv .v-btnp,.ord .lv .v-prog,.ord .lv .v-seg{display:none}
.ord-clip{position:absolute;inset:0 auto 0 0;width:calc(var(--xn)*100%);overflow:hidden}
.ord>.lv .v-list{transform:translateX(calc(var(--xn)*880px + 16px))}
.ord .lv .v-r,.ord .lv .v-fh{transition:none!important}
.ord-range{position:absolute;left:0;right:0;top:calc(clamp(64px,24%,180px) - 23px);width:100%;height:46px;margin:0;opacity:0;z-index:2;pointer-events:none}
.ord-handle{position:absolute;top:0;bottom:0;left:calc(var(--xn)*100%);width:0;z-index:3;pointer-events:none;opacity:calc((1 - var(--xn))*16)}
.ord-tags{position:absolute;inset:0 0 auto 0;height:5cqw;z-index:3;pointer-events:none;font:500 clamp(11px,1.25cqw,13.5px)/1 'IBM Plex Sans',system-ui,sans-serif;color:#394252}
.ord-tags span{position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap}
.ord-tags span:first-child{right:calc(100% - var(--xn)*100% + 16px);opacity:calc((var(--xn) - .3)*10)}
.ord-tags span:last-child{left:calc(var(--xn)*100% + 16px);opacity:min(calc((.9 - var(--xn))*10),calc((var(--xn) - .3)*10))}
.ord-handle::before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#0C1320}
.ord-handle i{position:absolute;top:clamp(64px,24%,180px);left:0;width:46px;height:46px;margin:-23px 0 0 -23px;background:#0C1320;box-shadow:0 0 0 4px #fff,0 14px 28px -10px rgba(4,10,22,.55);
  transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.ord-handle i::before{content:"";position:absolute;inset:0;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46'%3E%3Cpath d='M19 16l-7 7 7 7M27 16l7 7-7 7' fill='none' stroke='%23000' stroke-width='1.7'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46'%3E%3Cpath d='M19 16l-7 7 7 7M27 16l7 7-7 7' fill='none' stroke='%23000' stroke-width='1.7'/%3E%3C/svg%3E") center/contain no-repeat}
.ord-handle i{pointer-events:auto;cursor:ew-resize;touch-action:none;left:max(0px,calc(27px - var(--xn)*100cqw))}
.ord-handle i:hover{transform:scale(1.08)}
.ord-handle{transition:opacity .3s}
.ord-range:focus-visible+.ord-handle{opacity:1}
.ord-range:focus-visible+.ord-handle i{outline:2px solid #0C1320;outline-offset:7px}
@container (max-width:720px){
  .ord>.lv .v-list{transform:translateX(calc(var(--xn)*122.222cqw + 14px))}
  .ord-tags{height:36px}
}
@media (max-width:719px){
  .ord{--xn:1}
  .ord-range,.ord-tags{display:none}
  .ord::after{content:none}
}
@media (max-width:720px){
  .ord-handle i{width:40px;height:40px;margin:-20px 0 0 -20px}
  .nov-hero-window .ord{box-shadow:0 0 0 1px rgba(12,19,32,.12),0 12px 26px -18px rgba(4,10,22,.4)}
}
.ord-app{border-radius:9px}
main.main-wrapper .ord-app .lv.a-skin{width:100cqw!important;max-width:none!important;margin:0!important}
.ord-app .lv .a-win{box-shadow:none!important;border:0!important}
main.main-wrapper .ord-app .ord-clip{width:100%;clip-path:inset(var(--line-top,0px) calc(100% - var(--xn)*100%) 0 0)}
.ord-app>.lv .a-orig .a-dr{transform:translate(var(--shift,0px),var(--a))}
main.main-wrapper .ord-app>.lv .a-rows{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 46px),transparent calc(100% - 4px)),linear-gradient(180deg,#000 calc(100% - 38px),transparent);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,#000 calc(100% - 46px),transparent calc(100% - 4px)),linear-gradient(180deg,#000 calc(100% - 38px),transparent);mask-composite:intersect;
  opacity:calc((.93 - var(--xn))*14)}
.ord-app .ord-handle{top:var(--line-top,0px);bottom:var(--line-bot,0px);opacity:calc((.985 - var(--xn))*60)}
.ord-app .ord-handle::before{width:1px;left:0;top:var(--grip-top,19px);background:#181D27}
.ord-app .ord-handle i{top:var(--grip-top,120px);left:0;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:4px;background:#181D27;
  box-shadow:0 0 0 3px #fff,0 6px 14px -6px rgba(10,13,18,.45)}
.ord-app .ord-handle i::before{-webkit-mask-size:28px 28px;mask-size:28px 28px}
/* until the divider sets off (order.js) it is not drawn: the first view is simply the files as they arrived */
.ord.ord-idle .ord-handle{opacity:0}
.ord-app .ord-range{top:calc(var(--line-top,0px) + var(--grip-top,120px) - 16px);height:32px}
.ord-app .ord-range:focus-visible+.ord-handle i{outline-offset:3px}
.ord-app .ord-tags{inset:var(--tags-top,0px) 0 auto 0;height:auto}
.ord-app .ord-tags span{top:0;transform:none;font:500 11.5px/1 Inter,'Helvetica Neue',Arial,sans-serif;color:#535862;background:#fff;padding:5px 7px;border:1px solid #E9EAEB;border-radius:4px}
.ord-app{--xn:.7}
.ord-app .ord-tags span:first-child{right:calc(100% - var(--xn)*100% + 24px);opacity:min(calc((var(--xn) - .46)*70),calc((.95 - var(--xn))*70))}
.ord-app .ord-tags span:last-child{left:calc(var(--xn)*100% + 24px);opacity:min(calc((.86 - var(--xn))*70),calc((var(--xn) - .3)*70))}
/* the full sidebar is 8px wider, so its longest item clears the pill's edge */
main.main-wrapper .lv.a-skin:not(.a-nar):not(.a-phone) .a-side{width:186px}
/* phones: every window is shown from its left edge at a readable size and cropped on the right with a soft edge */
main.main-wrapper .lv.a-phone{height:430px!important}
main.main-wrapper .lv.a-phone .box{transform:scale(.86)!important;transform-origin:0 0}
main.main-wrapper .lv.a-phone .a-cur{display:none}
main.main-wrapper .lv.a-phone::after{content:"";position:absolute;inset:0 0 0 auto;width:44px;z-index:9;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0),#fff)}
main.main-wrapper .ord-app .lv.a-phone::after{display:none}
main.main-wrapper .lv-matrix.a-phone .a-tbl table{width:312px}
main.main-wrapper .lv-matrix.a-phone .a-tbl th:nth-child(2),main.main-wrapper .lv-matrix.a-phone .a-tbl td:nth-child(2),
main.main-wrapper .lv-matrix.a-phone .a-tbl th:nth-child(3),main.main-wrapper .lv-matrix.a-phone .a-tbl td:nth-child(3){display:none}
main.main-wrapper .lv-matrix.a-phone .a-tbl th:nth-child(1){width:54%!important}
main.main-wrapper .lv-matrix.a-phone .a-ask{left:8px!important;right:auto!important;width:280px}
main.main-wrapper .lv-compare.a-phone .a-cm{grid-template-columns:300px 1fr}
main.main-wrapper .lv-compare.a-phone .a-cmp{padding-right:26px}
main.main-wrapper .lv-matrix .a-tbl td>.a-ic:not(.a-v){display:inline;white-space:nowrap}
main.main-wrapper .lv-matrix .a-tbl td>.a-ic:not(.a-v) svg{vertical-align:-2px;margin-right:6px}

/* ---------- reduced motion */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .page-wrapper.is-nov *,.page-wrapper.is-nov *::before,.page-wrapper.is-nov *::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
  [data-nov="photo"]{transform:none!important}
}

/* ---------- belts: the client names and the client quotes move across slowly (the script copies the row until it
   fills the belt, measures one set and adds is-moving). They stop under the pointer or keyboard focus. Without the
   script, with "reduce motion" on, and for the quotes on touch screens, the row stands still (the quotes swipe). */
.nov-quotes-belt::-webkit-scrollbar{display:none}
/* the names and quotes fade at the belt's ends; the rules above and below it run to the ends (two 1px mask strips) */
[data-nov="belt"].is-moving{overflow:hidden;-webkit-mask-image:linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(90deg,transparent 0,#000 clamp(20px,8%,120px),#000 calc(100% - clamp(20px,8%,120px)),transparent 100%);
  mask-image:linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(90deg,transparent 0,#000 clamp(20px,8%,120px),#000 calc(100% - clamp(20px,8%,120px)),transparent 100%);
  -webkit-mask-size:100% 1px,100% 1px,100% 100%;mask-size:100% 1px,100% 1px,100% 100%;
  -webkit-mask-position:0 0,0 100%,0 0;mask-position:0 0,0 100%,0 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
[data-nov="belt"].is-moving>*{display:flex;flex-wrap:nowrap;justify-content:flex-start;width:max-content;animation:nov-belt var(--belt-t,60s) linear infinite}
[data-nov="belt"].is-moving:hover>*,[data-nov="belt"].is-moving:focus-within>*{animation-play-state:paused}
[data-nov="belt"].is-moving>.nov-proof-list{column-gap:clamp(44px,4.6vw,72px)}
[data-nov="belt"].is-moving .nov-proof-name{white-space:nowrap}
@keyframes nov-belt{to{transform:translate3d(calc(var(--belt-w,0px)*-1),0,0)}}

/* ---------- security drawings on phones: the drawing itself is enlarged like its still picture, so the symbol
   reads in the small square at the left of each row */
@media (max-width:767px){.nov-sec-art>svg{transform:scale(2.3)}}

/* ---------- the opening's second step. Once the data room is sorted, the window turns to the disclosure schedule
   drafted from it (a second product window laid over the first, added by the script; order.js runs the sequence),
   then back to the files as uploaded, and round again. */
/* While it waits, the schedule window keeps its layout (so the windows' script can size it) but sits far above the
   page, where the script sees it as off screen and keeps it wound back; brought into place, it starts from the top. */
.nov-hero-next{position:absolute;top:0;right:0;left:0;z-index:3;visibility:hidden;opacity:0;pointer-events:none;transform:translate3d(0,-300vh,0)}
[data-nov="hero"] [data-nov="win"].is-next .nov-hero-next{visibility:visible;transform:none}
[data-nov="hero"] [data-nov="win"].is-next-in .nov-hero-next{opacity:1}
/* the turn swaps only the window's content (order.js): the data room's content fades out over .15 s, the schedule's
   window, whose chrome and sidebar match it, is put in place at once, and its content fades in over .25 s; the way
   back is the same. The chrome and the sidebar never fade. */
[data-nov="hero"] .ord .lv .a-main>*{transition:opacity .25s cubic-bezier(.2,.7,.2,1)}
[data-nov="hero"] [data-nov="win"].is-out .ord .lv .a-main>*{opacity:0;transition:opacity .15s cubic-bezier(.4,0,1,1)}
[data-nov="hero"] .nov-hero-next .lv .a-main>*{opacity:0;transition:opacity .15s cubic-bezier(.4,0,1,1)}
[data-nov="hero"] [data-nov="win"].is-next-in:not(.is-next-out) .nov-hero-next .lv .a-main>*{opacity:1;transition:opacity .25s cubic-bezier(.2,.7,.2,1)}
.nov-hero-window .nov-hero-next .lv{box-shadow:0 0 0 1px rgba(12,19,32,.12),0 12px 26px -18px rgba(4,10,22,.4)}

/* ---------- inner pages: product windows on fields and the story cards' arrow */
.nov-prodv-win .lv{box-shadow:0 0 0 1px rgba(12,19,32,.1),0 50px 100px -50px rgba(4,10,22,.6),0 18px 40px -22px rgba(4,10,22,.35)}
.nov-card .nov-link-arrow{transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.nov-card:hover .nov-link-arrow,.nov-card:focus-visible .nov-link-arrow{transform:translateX(5px)}

/* ---------- Book a demo and Contact: the page's own form code block, restyled to the site (its own <style> block is
   left as it is; these rules only win inside .nov-demo-form) */
.nov-demo-form .mv-form-container{max-width:640px;margin:0;font-family:'IBM Plex Sans',system-ui,sans-serif}
.nov-demo-form .mv-form-label,.nov-demo-form .mv-checkbox-group-label{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:14px;font-weight:500;line-height:1.3;letter-spacing:0;color:#0C1320;text-transform:none}
.nov-demo-form .mv-required{color:#6E3348}
.nov-demo-form .mv-form-input,.nov-demo-form .mv-form-select,.nov-demo-form .mv-form-textarea{border:1px solid #CDD4DF;border-radius:2px;background-color:#fff;font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:16px;color:#0C1320;box-shadow:none;transition:border-color .15s cubic-bezier(.2,.7,.2,1)}
.nov-demo-form .mv-form-input:hover,.nov-demo-form .mv-form-select:hover,.nov-demo-form .mv-form-textarea:hover{border-color:#8E96A6}
.nov-demo-form .mv-form-input:focus,.nov-demo-form .mv-form-select:focus,.nov-demo-form .mv-form-textarea:focus{border-color:#0C1320;outline:2px solid rgba(12,19,32,.14);outline-offset:0;box-shadow:none}
.nov-demo-form .mv-checkbox-pill-label{border-radius:2px;border-color:#CDD4DF;font-family:'IBM Plex Sans',system-ui,sans-serif;color:#0C1320}
.nov-demo-form .mv-checkbox-pill input:checked+.mv-checkbox-pill-label{background-color:#0C1320;border-color:#0C1320;color:#fff}
.nov-demo-form .mv-form-submit{border-radius:0;background-color:#0C1320;border:1px solid #0C1320;color:#fff;font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;box-shadow:none;transition:background-color .2s cubic-bezier(.2,.7,.2,1)}
.nov-demo-form .mv-form-submit:hover{background-color:#273246;border-color:#273246}
.nov-demo-form .mv-fallback-text{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:14px;color:#667085}
.nov-demo-form .mv-fallback-text a{color:#0C1320}

/* pages outside the new design (their .page-wrapper has no is-nov: Marveri vs Kira, the NVCA disclosure schedules
   feature) keep the old wrapper: padding at the sides and bottom and gaps between sections (0.75rem, 0.5rem on a phone)
   on a grey ground. The new bands they share run full width there as everywhere else: the security band on its white
   ground, the space above the closing band inside that white, and the closing band and footer meeting edge to edge */
.page-wrapper:not(.is-nov) :is(.nov-sec,.nov-close),.page-wrapper:not(.is-nov)>.nov-footer{margin-left:-.75rem;margin-right:-.75rem;width:auto;max-width:none;align-self:stretch}
.page-wrapper:not(.is-nov) .nov-sec{background-color:#fff;padding-bottom:clamp(84px,9.6vw,160px)}
.page-wrapper:not(.is-nov) .nov-sec+.nov-close{margin-top:-.75rem}
.page-wrapper:not(.is-nov)>.nov-footer{margin-top:-.75rem;margin-bottom:-.75rem}
@media screen and (max-width:479px){
.page-wrapper:not(.is-nov) :is(.nov-sec,.nov-close),.page-wrapper:not(.is-nov)>.nov-footer{margin-left:-.5rem;margin-right:-.5rem}
.page-wrapper:not(.is-nov) .nov-sec+.nov-close{margin-top:-.5rem}
.page-wrapper:not(.is-nov)>.nov-footer{margin-top:-.5rem;margin-bottom:-.5rem}
}

/* r6d (fresh-eyes item 1): the walkthrough gate is an older embed with its own inline id rules. In the gate band it
   takes the site's type and buttons. Style only: the form, its HubSpot form id and the ds_walkthrough_unlocked push
   are untouched. The poster and the player share one width so unlocking does not resize the block. */
.nov-walk.is-gate .dsw-wrap{max-width:none;text-align:left}
.nov-walk.is-gate .dsw-h2{max-width:15em;margin:0 0 clamp(40px,4.8vw,76px);font-family:Newsreader,Georgia,serif;font-size:clamp(36px,4.7vw,78px);font-weight:430;line-height:1;letter-spacing:-.032em;color:#fff;text-align:left;text-wrap:balance;font-optical-sizing:auto}
.nov-walk.is-gate #dsw-poster,.nov-walk.is-gate #dsw-mount{width:100%;margin:0;transform:none}
.nov-walk.is-gate #dsw-poster{border-radius:10px}
.nov-walk.is-gate #dsw-play{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:15px;font-weight:500;letter-spacing:.002em;color:#0C1320;background:#fff;border-radius:0;height:50px;padding:0 24px 0 20px}
.nov-walk.is-gate #dsw-gatecard{border-radius:10px;background:rgba(10,20,34,.95);text-align:left;padding:28px}
.nov-walk.is-gate #dsw-gatetitle{font-family:Newsreader,Georgia,serif;font-size:24px;font-weight:430;letter-spacing:-.01em;line-height:1.2}
.nov-walk.is-gate #ds-walkthrough input[type="email"]{font-family:'IBM Plex Sans',system-ui,sans-serif;border-radius:0;height:50px;padding:0 14px}
.nov-walk.is-gate #ds-walkthrough input[type="submit"]{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:500;color:#0C1320;border-radius:0;height:50px;padding:0 24px}
.nov-walk.is-gate #dsw-gatecard p{text-align:left;font-family:'IBM Plex Sans',system-ui,sans-serif}
.nov-walk.is-gate #dsw-error{font-family:'IBM Plex Sans',system-ui,sans-serif;text-align:left}
@media (max-width:767px){.nov-walk.is-gate #dsw-play{font-size:14px;height:44px;padding:0 18px 0 15px}.nov-walk.is-gate #dsw-gatecard{padding:20px}.nov-walk.is-gate #dsw-gatetitle{font-size:20px}}
@media (max-width:479px){.nov-walk.is-gate #dsw-poster{min-height:360px}.nov-walk.is-gate #dsw-poster img{height:100%;object-fit:cover}}

/* R5P/R5Q (Nov 12, screen-size and fresh-eyes QA): also live as page head code on the pages named; kept here so the
   next bundle carries them. Walkthrough block on the page margin (DS, vs Kira); its consent line on the card's left
   edge, keeping the embed's 300px line breaks; guides' FAQ buttons wrap in narrow columns; guide figures fade at the
   right on phones. */
.nov-walk.is-gate .dsw-wrap{padding-left:0;padding-right:0}
.nov-walk.is-gate #ds-walkthrough #dsw-consent{margin-left:0;margin-right:0}
@media (max-width:991px){.nov-faq-cta .nov-btn{white-space:normal;height:auto;min-height:50px;padding-top:11px;padding-bottom:11px;line-height:1.3;text-align:left;max-width:100%}}
@media (max-width:767px){.nov-gd-fig-field{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}}
