/* NovaPoint Billing — "The Ledger, in navy".
   Navy #071040 leads, Electric Cyan #14CFF5 marks what is active or important, white and Cool Mist #EAF0F5 carry the content.
   Square corners, IBM Plex Mono for references and labels, Manrope for everything else.
   No inline styles anywhere (the Content Security Policy forbids them): every look is a class here. */

@font-face{font-family:Manrope;src:url("../fonts/Manrope-300.007ace81c206.woff2") format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:Manrope;src:url("../fonts/Manrope-400.84c90a24de75.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url("../fonts/Manrope-500.6bb1d1cc9a9c.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url("../fonts/Manrope-600.d291d41d2872.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url("../fonts/Manrope-700.5d0c39c84f7b.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url("../fonts/Manrope-800.bb0422a7d9f0.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/IBMPlexMono-400.4cc7b4398540.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/IBMPlexMono-500.bc5ccab82723.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/IBMPlexMono-600.ed616eb04c5f.woff2") format("woff2");font-weight:600;font-display:swap}

/* ---------- foundations ---------- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#FFFFFF;font-family:Manrope,"Helvetica Neue",Arial,sans-serif;color:#071040;-webkit-font-smoothing:antialiased}
a{color:#0A7EA4}a:hover{color:#071040}
img{max-width:100%}
:focus-visible{outline:2px solid #071040;outline-offset:2px}
.dark :focus-visible{outline-color:#14CFF5}
[hidden]{display:none !important}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mono{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important}
.num{font-variant-numeric:tabular-nums lining-nums}
.b{font-weight:700 !important}.b6{font-weight:600 !important}.b8{font-weight:800 !important}
.muted{color:#586382}.soft{color:#2B3556}
.t12{font-size:12px !important}.t125{font-size:12.5px !important}.t13{font-size:13px !important}.t135{font-size:13.5px !important}.t14{font-size:14px !important}.t15{font-size:15px !important}.t17{font-size:17px !important}
.r{text-align:right}.c{text-align:center}
.nowrap{white-space:nowrap}
.mt4{margin-top:4px}.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt20{margin-top:20px}.mt24{margin-top:24px}
.m0{margin:0}
.eyebrow{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:#586382}
.dark .eyebrow{color:#8D9BC6}
.ease{transition:all .18s cubic-bezier(.2,.7,.2,1)}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes slide{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
@keyframes sweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes up{from{transform:translateY(100%)}to{transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}
.rise{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
.d1{animation-delay:.04s}.d2{animation-delay:.12s}.d3{animation-delay:.2s}.d4{animation-delay:.28s}.d5{animation-delay:.36s}.d6{animation-delay:.44s}
.grow{transform-origin:bottom;animation:grow .8s cubic-bezier(.2,.7,.2,1) both}
.sweep{transform-origin:left;animation:sweep .9s cubic-bezier(.2,.7,.2,1) .25s both}
.sk{background:linear-gradient(90deg,#E3EAF1 0%,#F3F6FA 45%,#E3EAF1 90%);background-size:200% 100%;animation:shimmer 1.3s linear infinite}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding-left:40px;padding-right:40px}

/* ---------- buttons and links ---------- */
button{font:inherit}
.navl{display:inline-flex;align-items:center;gap:8px;min-height:68px;padding:0 14px;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:#A9B6DB;cursor:pointer;white-space:nowrap;text-decoration:none;box-shadow:inset 0 -2px 0 transparent;transition:color .18s,box-shadow .18s}
.navl .n{font-family:"IBM Plex Mono",monospace;font-size:10.5px;font-weight:500;color:#7D8CBB;transition:color .18s}
.navl:hover{color:#FFFFFF;box-shadow:inset 0 -2px 0 rgba(255,255,255,.28)}
.navl.on{color:#FFFFFF;box-shadow:inset 0 -2px 0 #14CFF5}
.navl.on .n{color:#14CFF5}
.tb{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.26);background:transparent;color:#FFFFFF;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;transition:border-color .18s,background .18s}
.tb:hover{border-color:#FFFFFF;background:rgba(255,255,255,.06);color:#FFFFFF}
.tb kbd{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:#C3CDEA;border:1px solid rgba(255,255,255,.28);padding:1px 5px;background:rgba(255,255,255,.06)}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:0 16px;border:1px solid #14CFF5;background:#14CFF5;color:#071040;font:inherit;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .18s,border-color .18s}
.cta:hover{background:#6BE2FA;border-color:#6BE2FA;color:#071040}
.cta.big{min-height:44px;padding:0 20px;font-size:14px}
.ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid rgba(255,255,255,.34);background:transparent;color:#FFFFFF;font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;transition:border-color .18s,background .18s}
.ghost:hover{border-color:#FFFFFF;background:rgba(255,255,255,.07);color:#FFFFFF}
.ava{width:40px;height:40px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#FFFFFF;font:inherit;font-size:12.5px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:border-color .18s}
.ava:hover{border-color:#14CFF5}
.pri{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 20px;border:1px solid #071040;background:#071040;color:#FFFFFF;font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .18s}
.pri:hover{background:#13236E;color:#FFFFFF}
.pri.red{background:#B42318;border-color:#B42318}.pri.red:hover{background:#8E1A12}
.sec{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid #071040;background:#FFFFFF;color:#071040;font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .18s,color .18s}
.sec:hover{background:#071040;color:#FFFFFF}
.danger{border-color:#B42318;color:#B42318}.danger:hover{background:#B42318;color:#FFFFFF;border-color:#B42318}
.pri[disabled],.sec[disabled],.cta[disabled]{opacity:.55;cursor:progress}
.lnk{border:0;background:none;padding:0;font:inherit;font-weight:700;color:#0A7EA4;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.lnk:hover{color:#071040}
.lnk.red{color:#B42318}
.tlink{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left;text-decoration:none}
.tlink:hover{text-decoration:underline;text-underline-offset:3px;color:inherit}
.crumb{border:0;background:none;padding:0;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:#C3CDEA;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(195,205,234,.45);text-underline-offset:3px}
.crumb:hover{color:#FFFFFF}
.inline{display:inline}
.seg{display:inline-flex;flex-wrap:wrap;border:1px solid #C3CFDD;background:#FFFFFF}
.seg a,.seg button{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:0;background:transparent;font:inherit;font-size:12.5px;font-weight:600;color:#586382;cursor:pointer;text-decoration:none;transition:background .18s,color .18s}
.seg a:hover,.seg button:hover{color:#071040;background:#EAF0F5}
.seg .on,.seg .on:hover{background:#071040;color:#FFFFFF;box-shadow:inset 0 -2px 0 #14CFF5}
.seg .cnt{margin-left:8px;font-family:"IBM Plex Mono",monospace;font-size:11px;opacity:.75}
.menu{position:absolute;right:0;top:calc(100% + 10px);min-width:252px;background:#FFFFFF;border:1px solid #071040;border-top:3px solid #14CFF5;box-shadow:0 28px 56px -28px rgba(7,16,64,.55);padding:6px;z-index:30;color:#071040;animation:drop .16s cubic-bezier(.2,.7,.2,1) both}
.menu a,.menu button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;min-height:42px;padding:0 12px;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:#071040;cursor:pointer;text-align:left;text-decoration:none}
.menu a:hover,.menu button:hover{background:#EAF0F5;color:#071040}
.menu a span,.menu button span{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;color:#586382}
.menu hr{border:0;border-top:1px solid #D5DEE8;margin:6px 0}
.menu :focus-visible{outline-color:#071040}
.menu-who{padding:10px 12px 12px}
.menu-who b{display:block;font-size:14px}
.menu-who span{display:block;font-family:"IBM Plex Mono",monospace;font-size:12px;color:#586382;margin-top:2px}
.shield{position:fixed;inset:0;border:0;background:transparent;z-index:20;cursor:default}
.rel{position:relative}

/* ---------- status marker: square + mono label, fixed alignment ---------- */
.st{display:inline-flex;align-items:center;gap:10px;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.st i{display:block;width:8px;height:8px;flex:none;background:currentColor}
.st-over{color:#B42318}.st-due{color:#071040}.st-draft{color:#586382}.st-wait{color:#8A5300}.st-won{color:#0B6B4F}.st-sched{color:#0A7EA4}
.dark .st-over{color:#FF9A8F}.dark .st-due{color:#FFFFFF}.dark .st-draft{color:#C3CDEA}.dark .st-wait{color:#FFC56B}.dark .st-won{color:#6FE3B8}.dark .st-sched{color:#14CFF5}
.alert-t{color:#B42318 !important}
.dark .alert-t{color:#FF9A8F !important}

/* ---------- sections ---------- */
.section{position:relative;border-top:1.5px solid #071040;padding-top:20px}
.section::before{content:"";position:absolute;left:0;top:-2.75px;width:36px;height:4px;background:#14CFF5}
.dark .section{border-top-color:rgba(255,255,255,.22)}
.sh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:24px}
.sh h2{margin:6px 0 0;font-size:22px;font-weight:700;letter-spacing:-.01em;color:#071040}
.dark .sh h2{color:#FFFFFF}
.sh-note{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#586382}
.figs{display:flex;flex-wrap:wrap;row-gap:20px;border-top:1px solid rgba(255,255,255,.16);padding-top:24px}
.figs>.fig{flex:1 1 190px;min-width:0;padding:2px 28px;border-left:1px solid rgba(255,255,255,.16)}
.figs>.fig:first-child{padding-left:0;border-left:0}
.fv{margin-top:8px;font-size:26px;font-weight:600;letter-spacing:-.01em;color:#FFFFFF;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fn{margin-top:4px;font-size:12.5px;color:#8D9BC6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- app frame ---------- */
.app-root{min-height:100vh;display:flex}
.app-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.mast{background:#071040;color:#FFFFFF}
.mast header{border-bottom:1px solid rgba(255,255,255,.12)}
.hdr{min-height:68px;display:flex;flex-wrap:wrap;align-items:center;gap:0 28px}
.logo{display:block;padding:19px 0}
.logo img{display:block;height:30px;width:auto}
.navstrip{flex:1 1 520px;min-width:0;align-self:stretch;display:flex;overflow-x:auto;scrollbar-width:none}
.navstrip::-webkit-scrollbar{display:none}
.hdr-actions{display:flex;align-items:center;gap:10px;margin-left:auto;padding:14px 0}
.page{flex:1;padding-top:52px;padding-bottom:88px;display:flex;flex-direction:column;gap:64px}
.page.tight{gap:48px}
.page.ov{padding-top:60px;padding-bottom:80px;gap:68px}
.row-split{display:flex;flex-wrap:wrap;gap:68px 56px}
.row-split>.main{flex:7 1 520px;min-width:0}
.row-split>.side{flex:5 1 360px;min-width:0}
.row-split>.half{flex:1 1 420px;min-width:0}
.band{flex:0 0 76px;background:#071040}
.band-in{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:20px;padding:26px 0 30px}
.band-dot{width:10px;height:10px;background:#14CFF5}
.vword{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;font-size:56px;line-height:1;letter-spacing:.02em;color:#FFFFFF;white-space:nowrap}

/* ---------- page head (navy) ---------- */
.ph{padding-top:40px;padding-bottom:44px;display:flex;flex-direction:column;gap:32px}
.ph-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:22px 32px}
.ph-text{min-width:0;max-width:840px}
.ph-trail{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ph-title{margin:10px 0 0;font-size:40px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:#FFFFFF;overflow-wrap:anywhere}
.ph-title.mono{font-weight:600;letter-spacing:-.01em}
.ph-status{margin-top:14px}
.ph-sub{margin:12px 0 0;font-size:15.5px;line-height:1.55;color:#C3CDEA}
.ph-actions{display:flex;flex-wrap:wrap;gap:10px}
.ph-actions form{display:contents}

/* ---------- overview hero ---------- */
.hero{padding-top:52px;padding-bottom:64px;display:flex;flex-direction:column;gap:60px}
.hero-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.hero-text{max-width:780px}
.hero h1{margin:12px 0 0;font-size:44px;font-weight:700;letter-spacing:-.028em;line-height:1.08;color:#FFFFFF}
.brief{margin:16px 0 0;font-size:18px;line-height:1.55;color:#C3CDEA}
.co-line{font-size:12px;color:#8D9BC6;text-align:right;line-height:1.7}
.pos{display:flex;flex-wrap:wrap;gap:40px 56px}
.pos-owed{flex:7 1 460px;min-width:0}
.bignum{margin-top:10px;font-size:80px;font-weight:300;letter-spacing:-.035em;line-height:.95;color:#FFFFFF}
.bignum .cur{font-size:26px;font-weight:500;color:#8D9BC6;letter-spacing:0;margin-right:12px;vertical-align:34px}
.bignum .cents{font-size:36px;font-weight:400;color:#8D9BC6}
.age{margin-top:28px}
.age-bar{display:flex;height:10px;gap:3px}
.age-bar>div{flex:1 1 0}
.age-none{height:10px;border:1px dashed rgba(255,255,255,.35)}
.age-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px}
.age-k{display:flex;align-items:center;gap:8px}
.age-k i{display:block;width:8px;height:8px;flex:none}
.age-v{margin-top:6px;font-size:16px;font-weight:700;color:#7D8CBB}
.a0{background:#14CFF5}.a1{background:#FFB4AA}.a2{background:#FF6F61}.a3{background:#E5342A}
.age-v.on.t0{color:#FFFFFF}.age-v.on.t1,.age-v.on.t2,.age-v.on.t3{color:#FF9A8F}
.ytd{flex:5 1 340px;min-width:0;border-left:1px solid rgba(255,255,255,.18);padding-left:40px}
.ytd table{width:100%;border-collapse:collapse;margin-top:14px;font-size:16px;color:#FFFFFF}
.ytd td{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.ytd td:first-child{color:#C3CDEA}
.ytd td:last-child{text-align:right;font-weight:600}
.ytd tr.cut td{border-bottom-color:rgba(255,255,255,.7)}
.ytd tr.net td{padding:14px 0 10px;border-bottom:0;font-weight:800;color:#FFFFFF}
.ytd tr.net td:last-child{font-size:24px}
.ytd tr.net td:last-child span{border-bottom:3px double #14CFF5;padding-bottom:2px}
.ytd-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:18px;font-size:13px;color:#8D9BC6}
.ytd-foot b{color:#FFFFFF}

/* ---------- overview: chart ---------- */
.perf{display:flex;flex-wrap:wrap;gap:40px 48px}
.perf-chart{flex:8 1 560px;min-width:0}
.chart-y{position:relative;padding-left:56px}
.chart-grid{position:absolute;left:0;right:0;top:0;height:220px}
.gl{position:absolute;left:0;right:0;border-top:1px dotted #C3CFDD}
.gl.base{border-top:1px solid #071040}
.gl span{position:absolute;left:0;top:-9px;font-size:10.5px;color:#586382;background:#FFFFFF;padding-right:8px}
.chart-cols{position:relative;display:flex;gap:6px}
.chart-skel{height:252px;display:flex;align-items:flex-end;gap:18px;padding-left:56px}
.chart-skel div{flex:1}
.col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;border:0;background:transparent;padding:0;font:inherit;color:inherit;cursor:pointer}
.col .well{position:relative;width:100%;height:220px;display:flex;align-items:flex-end;justify-content:center;gap:5px;transition:background .18s}
.col:hover .well{background:#F3F6FA}
.col.sel .well{background:#EAF0F5}
.inc{width:34%;max-width:30px;display:flex;flex-direction:column-reverse}
.spd{width:14%;max-width:12px;background:#7D89A1}
.c-col{background:#071040}
.c-exp{background:#14CFF5;box-shadow:inset 0 0 0 1px #071040}
.c-pipe{background:repeating-linear-gradient(135deg,#14CFF5 0 2px,transparent 2px 6px);box-shadow:inset 0 0 0 1px #0A7EA4}
.c-spd{background:#7D89A1}
.inc>div,.spd{height:0}
.mfoot{display:flex;flex-direction:column;align-items:center;gap:6px}
.mlab{font-size:11.5px;font-weight:500;color:#071040;letter-spacing:.04em;padding-bottom:3px}
.col.sel .mlab{font-weight:700;box-shadow:inset 0 -2px 0 #14CFF5}
.mdot{width:7px;height:7px}
.col.now .mdot{background:#14CFF5;box-shadow:0 0 0 1px #071040}
.legend{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:22px;font-size:13px;color:#2B3556}
.legend .today{display:inline-flex;align-items:center;gap:8px}
.legend .today i{display:block;width:7px;height:7px;background:#14CFF5;box-shadow:0 0 0 1px #071040}
.sw{display:inline-block;width:12px;height:12px;vertical-align:-1px;margin-right:8px}
.readout{flex:4 1 280px;min-width:0;background:#071040;color:#FFFFFF;padding:26px 28px 28px;align-self:stretch;display:flex;flex-direction:column}
.ro-kind{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#14CFF5}
.ro-label{margin-top:8px;font-size:24px;font-weight:700;letter-spacing:-.01em}
.ro-t{width:100%;border-collapse:collapse;margin-top:18px;font-size:14.5px}
.ro-t td{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.ro-t td:first-child{color:#C3CDEA}
.ro-t td:last-child{text-align:right;font-weight:600}
.ro-t tr.net td{padding:12px 0 8px;border-bottom:0;font-weight:800;color:#FFFFFF}
.ro-t tr.net td:last-child{font-size:20px}
.ro-t tr.net td:last-child span{border-bottom:3px double #14CFF5;padding-bottom:1px}
.ro-note{margin:auto 0 0;padding-top:22px;font-size:13px;line-height:1.55;color:#C3CDEA}
.chart-note{margin:22px 0 0;font-size:12.5px;color:#586382}

/* ---------- register and list rows ---------- */
.reg{display:grid;grid-template-columns:132px 150px minmax(0,1fr) 170px 120px 44px;align-items:center;column-gap:20px}
.reg-head{background:#EAF0F5;padding:12px 8px}
.reg-row{min-height:72px;border-bottom:1px solid #D5DEE8;width:100%;border-left:0;border-right:0;border-top:0;background:#FFFFFF;font:inherit;color:#071040;text-align:left;cursor:pointer;padding:0 8px;text-decoration:none;transition:background .18s}
a.reg-row{display:grid}
.reg-row:hover{background:#F3F6FA;color:#071040}
.reg-row:hover .go{transform:translateX(4px);color:#071040}
.go{display:flex;justify-content:flex-end;color:#8C97B0;transition:transform .18s cubic-bezier(.2,.7,.2,1),color .18s}
.ref{font-family:"IBM Plex Mono",monospace;font-size:13px;font-weight:500}
.when{font-size:13.5px;color:#2B3556;font-weight:500}
.when.late{color:#B42318;font-weight:700}
.amt{text-align:right;font-size:15px;font-weight:700}
.g-cli{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.2fr) 108px 112px 112px 112px 28px;align-items:center;column-gap:18px}
.g-quo{display:grid;grid-template-columns:118px 112px minmax(0,1fr) 104px 128px 112px 28px;align-items:center;column-gap:18px}
.g-inv{display:grid;grid-template-columns:118px 124px minmax(0,1fr) 100px 112px 104px 112px 28px;align-items:center;column-gap:18px}
.g-rct{display:grid;grid-template-columns:136px 100px minmax(0,1fr) 64px 112px 28px;align-items:center;column-gap:18px}
.g-doc{display:grid;grid-template-columns:118px 124px minmax(0,1fr) 100px 112px 28px;align-items:center;column-gap:18px}
.g-exp{display:grid;grid-template-columns:104px 116px minmax(0,1fr) 168px 112px;align-items:center;column-gap:18px}
.g-usr{display:grid;grid-template-columns:minmax(0,1.6fr) 120px 180px 120px 110px 150px;align-items:center;column-gap:18px}
.g-pay{display:grid;grid-template-columns:118px 130px minmax(0,1fr) 112px 112px 56px;align-items:center;column-gap:18px}
.g-rec{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 120px 112px 28px;align-items:center;column-gap:18px}
.g-por{display:grid;grid-template-columns:140px 110px minmax(0,1fr) 112px 56px;column-gap:18px;align-items:center}
.lrow{min-height:68px;padding:0 8px;border-bottom:1px solid #D5DEE8}
.cell-r{text-align:right}
.ttl{display:block;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sub{display:block;font-size:13px;color:#586382;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scroll{overflow-x:auto}
.lst{min-width:860px}
.empty{display:flex;align-items:center;gap:20px;padding:30px 26px;background:#EAF0F5;font-size:14.5px;line-height:1.55;color:#2B3556}
.empty i{display:block;width:12px;height:12px;background:#14CFF5;box-shadow:0 0 0 1px #071040;flex:none}
.empty b{display:block;font-size:17px;color:#071040}
.alert{margin:0 0 22px;padding:14px 18px;background:#FDECEE;color:#8E1426;font-size:14px;font-weight:600}
.alert ul{margin:6px 0 0;padding-left:18px;font-weight:500}
.err{margin:0;font-size:13.5px;color:#B42318;font-weight:600}
.note-box{display:flex;gap:14px;align-items:flex-start;margin-top:20px;padding:16px 18px;background:#EAF0F5}
.note-box .st{padding-top:2px}
.note-box p{margin:0;font-size:14px;line-height:1.55;color:#2B3556}

/* ---------- ledger tables ---------- */
.lg{width:100%;border-collapse:collapse;font-size:14px}
.lg th{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:#586382;text-align:left;padding:12px 10px;background:#EAF0F5;white-space:nowrap}
.lg th.r{text-align:right}
.lg th.c{text-align:center}
.lg td{padding:14px 10px;border-bottom:1px solid #D5DEE8;vertical-align:top}
.lg .r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.lg tfoot td{border-bottom:3px double #071040;font-weight:800;padding-top:12px}
.lg tr.hov td{transition:background .18s}
.lg tr.hov:hover td{background:#F3F6FA}
.lg .w30{width:30%}.lg .w120{width:120px}.lg .w160{width:160px}
.cl-sub{font-size:12.5px;color:#586382;margin-top:2px}
.share{display:flex;align-items:center;gap:12px}
.share .track{flex:1;height:6px;background:#DCE5EE}
.share .track>div{height:6px;background:#071040;width:0}
.share span{font-size:12px;width:40px;text-align:right}
.hbar{height:8px;background:#DCE5EE}
.hbar>div{height:8px;background:#071040;width:0;transform-origin:left;animation:sweep .8s cubic-bezier(.2,.7,.2,1) .2s both}
.fwd{padding:16px 0;border-bottom:1px solid #D5DEE8}
.fwd-top{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.fwd-top span:first-child{font-size:15px;font-weight:700}
.fwd-top span:last-child{font-size:17px;font-weight:700}
.fwd-note{font-size:13px;color:#586382;margin-top:4px}
.fwd-bar{display:flex;align-items:center;gap:12px;margin-top:12px}
.fwd-bar .track{flex:1;height:4px;background:#DCE5EE}
.fwd-bar .track>div{height:4px;background:#071040;width:0}
.fwd-bar span{font-size:11px;color:#586382}
.fwd-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:18px;padding:18px 20px;background:#071040;color:#FFFFFF}
.fwd-total span:first-child{font-weight:700}
.fwd-total span:last-child{font-weight:800;font-size:22px;border-bottom:3px double #14CFF5;padding-bottom:2px}
.led-party{font-size:12.5px;color:#586382;margin-top:2px}
.out{color:#2B3556}

/* ---------- forms ---------- */
.inp{width:100%;height:46px;padding:0 12px;border:1px solid #C3CFDD;border-radius:0;background:#FFFFFF;color:#071040;font:inherit;font-size:15px;transition:border-color .18s,box-shadow .18s;-webkit-appearance:none;appearance:none}
select.inp{background-image:linear-gradient(45deg,transparent 50%,#071040 50%),linear-gradient(135deg,#071040 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:34px}
.inp:hover{border-color:#8C97B0}
.inp:focus{border-color:#071040;outline:0;box-shadow:0 0 0 3px rgba(20,207,245,.45)}
.inp.r{text-align:right;font-variant-numeric:tabular-nums}
.inp.bad{border-color:#B42318}
textarea.inp{height:auto;min-height:92px;padding:11px 12px;line-height:1.5;resize:vertical}
.fl{display:block;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:#586382;margin-bottom:8px}
.help{font-size:12.5px;color:#586382;margin-top:7px;line-height:1.45}
.ferr{font-size:13px;color:#B42318;font-weight:600;margin-top:7px}
.radio{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid #D5DEE8;cursor:pointer;font-size:14px;line-height:1.45;transition:border-color .15s,background .15s}
.radio:hover{border-color:#071040}
.radio:has(input:checked){border-color:#071040;background:#F3F6FA}
.radio input{margin-top:3px;width:18px;height:18px;accent-color:#071040;flex:none}
.radio .note{color:#586382}
.stack{display:flex;flex-direction:column;gap:16px}
.stack.g12{gap:12px}.stack.g26{gap:26px}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.btns{display:flex;gap:10px;flex-wrap:wrap}
.btns>.grow1{flex:1}
fieldset.plain{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:10px;min-width:0}
fieldset.plain legend{float:left;width:100%;padding:0}
.file-pick{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px dashed #A9B4C8;position:relative}
.file-pick svg{flex:none}
.file-pick .fp-t{flex:1;font-size:13.5px;color:#2B3556;min-width:0;overflow-wrap:anywhere}
.file-pick input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.file-pick:focus-within{border-color:#071040;box-shadow:0 0 0 3px rgba(20,207,245,.45)}

/* ---------- drawer, modal, search, toast ---------- */
.overlay{position:fixed;inset:0;z-index:40;display:flex;justify-content:flex-end}
.scrim{position:absolute;inset:0;border:0;background:rgba(7,16,64,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:pointer;animation:fade .2s ease both}
.drawer{position:relative;width:100%;max-width:520px;height:100%;overflow-y:auto;background:#FFFFFF;display:flex;flex-direction:column;box-shadow:-32px 0 64px -32px rgba(7,16,64,.5);animation:slide .28s cubic-bezier(.2,.7,.2,1) both}
.dw-h{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:28px 30px 24px;background:#071040;color:#FFFFFF;box-shadow:inset 0 -3px 0 #14CFF5}
.dw-title{margin-top:8px;font-size:22px;font-weight:600;overflow-wrap:anywhere}
.dw-x{width:44px;height:44px;flex:none;border:1px solid rgba(255,255,255,.3);background:transparent;color:#FFFFFF;cursor:pointer;display:flex;align-items:center;justify-content:center}
.dw-x:hover{border-color:#FFFFFF}
.dw-b{padding:28px 30px 36px;display:flex;flex-direction:column;gap:26px}
.dw-hero{margin-top:6px;font-size:46px;font-weight:300;letter-spacing:-.03em;line-height:1}
.dw-hero span{font-size:18px;font-weight:500;color:#586382;margin-right:8px;vertical-align:16px}
.dw-sub{margin-top:10px;font-size:14px;color:#2B3556}
.dw-loading{display:flex;align-items:center;justify-content:center;flex:1;min-height:240px}
.spinner{width:22px;height:22px;border:2px solid #C3CFDD;border-top-color:#071040;animation:spin .7s linear infinite}
.payrow{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #D5DEE8;font-size:14px}
.payfs{margin:0;padding:24px 22px;border:0;background:#EAF0F5;display:flex;flex-direction:column;gap:16px;min-width:0}
.payfs legend{float:left;width:100%;padding:0;margin-bottom:4px;font-size:16px;font-weight:700}
.p-copy{margin:0;font-size:14px;line-height:1.55;color:#2B3556}
.pickrow{display:grid;grid-template-columns:104px minmax(0,1fr) auto 18px;column-gap:14px;align-items:center;padding:0;border-top:1px solid #E3EAF1}
.pickrow .ttl{font-size:13px;font-weight:600}
.modal-wrap{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:16px}
.modal{position:relative;width:100%;max-width:470px;background:#FFFFFF;border-top:3px solid #14CFF5;box-shadow:0 40px 80px -36px rgba(7,16,64,.7);padding:28px 30px 26px;animation:drop .2s cubic-bezier(.2,.7,.2,1) both}
.modal h2{margin:0;font-size:20px;font-weight:700;letter-spacing:-.01em}
.modal p{margin:12px 0 0;font-size:14.5px;line-height:1.6;color:#2B3556}
.modal .btns{justify-content:flex-end;margin-top:26px}
.modal .why{margin-top:16px}
.srch{position:fixed;inset:0;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}
.srch-box{position:relative;width:100%;max-width:640px;background:#FFFFFF;border-top:3px solid #14CFF5;box-shadow:0 40px 80px -36px rgba(7,16,64,.7);animation:drop .2s cubic-bezier(.2,.7,.2,1) both}
.srch-bar{display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid #071040}
.srch-bar input{flex:1;min-width:0;height:60px;border:0;outline:0;font:inherit;font-size:17px;color:#071040;background:transparent}
.srch-count{font-size:11px;color:#586382}
.srch-list{max-height:50vh;overflow-y:auto}
.srch-none{margin:0;padding:28px 18px;font-size:14px;color:#586382}
.res{display:flex;width:100%;align-items:center;gap:14px;min-height:52px;padding:0 18px;border:0;border-bottom:1px solid #E3EAF1;background:none;font:inherit;color:#071040;cursor:pointer;text-align:left;text-decoration:none;transition:background .15s}
.res:hover,.res.on{background:#EAF0F5;color:#071040}
.res .r-type{width:86px;flex:none}
.res .r-ref{width:128px;flex:none;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.res .r-desc{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.res .r-amt{font-size:14px;font-weight:700}
.toast{position:fixed;left:24px;bottom:24px;z-index:80;max-width:460px;display:flex;gap:14px;align-items:flex-start;padding:16px 20px;background:#071040;color:#FFFFFF;font-size:14px;line-height:1.5;box-shadow:0 24px 48px -24px rgba(7,16,64,.6);animation:rise .3s cubic-bezier(.2,.7,.2,1) both}
.toast>i{width:8px;height:8px;margin-top:7px;background:#14CFF5;flex:none}
.toast.warning>i,.toast.error>i{background:#FFC56B}
.toast.error>i{background:#FF9A8F}
.toast button{margin-left:6px;border:0;background:none;color:#8D9BC6;cursor:pointer;padding:2px;font-size:18px;line-height:1}
.toast.out{opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}

/* ---------- phone chrome ---------- */
.m-only{display:none !important}
.tabbar,.mbar{display:none}
.sheet-wrap{position:fixed;inset:0;z-index:45;display:flex;flex-direction:column;justify-content:flex-end}
.sheet{position:relative;max-height:86vh;overflow-y:auto;background:#071040;color:#FFFFFF;padding:8px 20px calc(24px + env(safe-area-inset-bottom));border-top:3px solid #14CFF5;animation:up .26s cubic-bezier(.2,.7,.2,1) both}
.sheet-grip{width:40px;height:4px;background:rgba(255,255,255,.28);margin:6px auto 12px}
.sheet .eyebrow{margin:24px 0 4px}
.sheet-row{display:flex;align-items:center;gap:14px;width:100%;min-height:56px;padding:0;border:0;border-bottom:1px solid rgba(255,255,255,.1);background:none;color:#FFFFFF;font:inherit;font-size:17px;font-weight:600;text-align:left;cursor:pointer;text-decoration:none}
.sheet-row:hover{color:#FFFFFF}
.sheet-row .n{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;color:#7D8CBB;width:24px;flex:none}
.sheet-row.on .n{color:#14CFF5}
.sheet-row .arr{margin-left:auto;display:flex;color:#7D8CBB}
.sheet form{margin:0}

/* ---------- small utilities used across screens ---------- */
.minw0{min-width:0}.block{display:block}
.lbl-m{font-weight:500;color:#586382}
.min640{min-width:640px}.min660{min-width:660px}.min680{min-width:680px}.min720{min-width:720px}.min760{min-width:760px}.min880{min-width:880px}.min940{min-width:940px}
.lg .w112{width:112px}.lg .w140{width:140px}.lg .w120{width:120px}.lg .w160{width:160px}
.b5{font-weight:500 !important}.t145{font-size:14.5px !important}.t16{font-size:16px !important}
.mb8{margin-bottom:8px !important}.mb10{margin-bottom:10px !important}.mb14{margin-bottom:14px}.mb16{margin-bottom:16px}.mb18{margin-bottom:18px}
.mt2{margin-top:2px}.mt3{margin-top:3px}.mt10{margin-top:10px}.mt14{margin-top:14px}.mt18{margin-top:18px}.mt34{margin-top:34px}.mt-8{margin-top:-8px}.mr10{margin-right:10px}
.self-c{align-self:center}.self-start{align-self:flex-start}.ai-c{align-items:center}
.sec.sm,.pri.sm,.ghost.sm,.cta.sm{min-height:38px;font-size:13px;padding:0 14px}
.flexform{display:flex}.wide{width:100%}
.red-t{color:#B42318 !important}
.mw360{max-width:360px}.mw420{max-width:420px}.mw620{max-width:620px}
.stack.g14{gap:14px}.stack.g18{gap:18px}.stack.g22{gap:22px}.stack.g56{gap:56px}.stack.g60{gap:60px}
.vmid{vertical-align:middle !important}
.no-mark{color:#A9B4C8;font-weight:700}
html.locked{overflow:hidden}
.toasts{position:fixed;left:24px;bottom:24px;z-index:80;display:flex;flex-direction:column;gap:10px;max-width:460px}
.toasts .toast{position:relative;left:auto;bottom:auto}
.dw-head-text{min-width:0}
.drawer-page{max-width:560px;width:100%;margin:0 auto;height:auto;overflow:visible;box-shadow:0 30px 60px -34px rgba(7,16,64,.45);animation:none;border:1px solid #D5DEE8}

/* ---------- client profile, receipts and expenses layouts ---------- */
.cp-split{display:flex;flex-wrap:wrap;gap:64px 56px}
.cp-main,.rc-main{flex:2 1 600px;min-width:0}
.cp-aside{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:56px}
.kvl{margin:0}
.kvl>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid #D5DEE8;font-size:14px}
.kvl dt{color:#586382}
.kvl dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.oi-row{display:grid;grid-template-columns:104px minmax(0,1fr) auto;column-gap:14px;align-items:center;min-height:62px;padding:0}
.qi-row{display:grid;grid-template-columns:100px minmax(0,1fr) auto;column-gap:12px;align-items:center;min-height:54px;padding:0}
.ap-row{display:grid;grid-template-columns:100px minmax(0,1fr) 18px;column-gap:12px;align-items:center;min-height:62px;padding:0;border-top:1px solid #E3EAF1}
.bar-item{padding:14px 0;border-bottom:1px solid #D5DEE8}
.bar-top{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.bar-note{font-size:11px;color:#586382;margin-top:7px}
.mo-row{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;padding:18px 8px;border-bottom:1px solid #D5DEE8}
.mo-st{width:118px}
.mo-text{flex:1 1 260px;min-width:0}
.ex-act{display:flex;justify-content:flex-end;gap:14px}
.ex-total{padding:14px 8px 10px;font-weight:800}
.dbl{border-bottom:3px double #071040;padding-bottom:3px}
.void-line{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:14px;padding:10px 4px;border-bottom:1px solid #E3EAF1;font-size:13.5px;color:#586382;text-decoration:line-through;text-decoration-color:rgba(88,99,130,.5)}
a.void-line:hover{color:#071040}
.link-box{padding:20px 22px;background:#EAF0F5;border-left:3px solid #14CFF5;display:flex;flex-direction:column;gap:10px}
.link-row{display:flex;gap:10px}
.link-row .inp{flex:1;min-width:0;font-size:13px}
.who{display:flex;align-items:center;gap:14px;min-width:0}
.ini{width:38px;height:38px;flex:none;background:#071040;color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;letter-spacing:.04em}
.ini.light{background:#EAF0F5;color:#071040;box-shadow:inset 0 0 0 1px #C3CFDD}
.u-act{text-align:right;display:flex;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.more-act{position:relative;display:inline-block}
.more-act summary{list-style:none;cursor:pointer}
.more-act summary::-webkit-details-marker{display:none}
.more-menu{min-width:240px}
.more-menu form{margin:0}

/* ---------- the paper (document preview and composer) ---------- */
.desk{flex:1;background:#EAF0F5}
.desk-in{padding-top:40px;padding-bottom:88px}
.desk-split{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.panel{background:#FFFFFF;border:1px solid #D5DEE8;padding:22px 24px}
.panel.strong{border-color:#071040;margin:0}
.panel.quiet{background:transparent;border-style:dashed;display:flex;flex-direction:column;gap:10px}
.panel-t{margin:0 0 14px;font-size:15px;font-weight:700;color:#071040}
.leg{float:left;width:100%;padding:0;margin-bottom:4px;font-size:15px;font-weight:700}
.kv{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-size:14px}
.kv>span:first-child{color:#2B3556}
.kv-bal{border-top:1.5px solid #071040;margin-top:6px;padding-top:12px;font-weight:800;font-size:15px}
.kv-bal>span:first-child{color:#071040}
.kv-bal>span:last-child{border-bottom:3px double #071040}
.paper{position:relative;flex:3 1 620px;min-width:0;display:flex;background:#FFFFFF;box-shadow:0 1px 0 #D5DEE8,0 30px 60px -34px rgba(7,16,64,.45);min-height:920px}
.paper-main{flex:1;min-width:0;padding:40px 34px 44px 44px;font-size:13px;color:#071040}
.paper-band{flex:0 0 80px;background:#071040;display:flex;flex-direction:column;align-items:center;padding:30px 0 28px;overflow:hidden}
.paper-band img{width:42px;height:auto}
.vword-p{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;font-size:76px;line-height:1;color:#FFFFFF;letter-spacing:.01em;margin-top:auto;white-space:nowrap}
.vword-p.long{font-size:62px}
.p-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.p-logo{width:132px;height:auto}
.p-meta{border-collapse:collapse;font-size:12px}
.p-meta td{padding:2px 0}
.p-meta td:first-child{padding-right:18px;color:#5A6377}
.p-meta td:last-child{text-align:right;font-weight:700}
.p-herobox{margin-top:36px}
.p-lab{display:block;font-size:11px;font-weight:600;color:#5A6377}
.p-hero{margin-top:4px;font-size:40px;font-weight:700;letter-spacing:-.01em;line-height:1}
.p-hero>span{font-size:19px;font-weight:600;color:#5A6377;margin-right:6px;vertical-align:9px}
.p-hero output{font:inherit}
.p-subline{margin-top:9px;font-size:13px}
.prule{height:3px;width:110px;margin-top:16px;background:linear-gradient(90deg,#071040 0%,#0A6CFF 60%,#14CFF5 100%)}
.p-parties{display:flex;justify-content:space-between;gap:24px;margin-top:28px;flex-wrap:wrap}
.p-who{margin-top:5px;font-size:15px;font-weight:700}
.p-reg{margin-top:2px;font-size:11px;color:#5A6377}
.p-addr{margin-top:3px;color:#3B4458;line-height:1.6}
.p-from{text-align:right}
.p-subject{margin-top:28px;font-size:15px;font-weight:700}
.p-subject-in{margin-top:28px}
.pt{width:100%;border-collapse:collapse;margin-top:18px}
.pt th{text-align:left;font-size:11px;font-weight:600;color:#5A6377;padding:0 0 8px;border-bottom:1.5px solid #071040}
.pt th.r{text-align:right}
.pt td{padding:10px 0;border-bottom:1px solid #E3E6EE;vertical-align:top}
.pt td small{display:block;color:#5A6377;font-size:11px;margin-top:2px}
.pt .r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pt .q{text-align:center;width:56px}
.pt .w132{width:132px}.pt .w112{width:112px}.pt .w40{width:40px}
.pt.edit td.pc{padding-right:14px}
.pt.edit td.pa{padding-top:15px}
.pt.edit td.pr{text-align:right;padding-top:6px}
.p-totals{margin-left:auto;width:100%;max-width:290px;margin-top:14px}
.p-totals.edit{margin-top:18px}
.p-trow{display:flex;justify-content:space-between;padding:5px 0}
.p-trow span:first-child{color:#3B4458}
.p-grand{display:flex;justify-content:space-between;align-items:baseline;border-top:1.5px solid #071040;margin-top:6px;padding-top:10px}
.p-grand span:first-child{font-weight:700}
.p-grand span:last-child{font-weight:800;font-size:18px}
.p-dep{display:flex;justify-content:space-between;padding:8px 0 0;color:#5A6377}
.p-foot{display:flex;flex-wrap:wrap;gap:28px;margin-top:30px;align-items:flex-start}
.p-bank{flex:1 1 260px;background:#F4F6FA;padding:16px 18px}
.p-bank table{border-collapse:collapse;margin-top:8px;font-size:12px}
.p-bank td{padding:3px 0}
.p-bank td:first-child{padding-right:18px;color:#5A6377}
.p-ref{font-weight:700;color:#0A5BDB}
.p-notes{flex:1 1 220px}
.p-notes p{margin:6px 0 0;font-size:12.5px;line-height:1.6;color:#3B4458}
.pin{display:block;width:100%;border:1px dashed transparent;background:transparent;font:inherit;color:#071040;padding:4px 6px;margin-left:-6px;transition:border-color .15s,background .15s,box-shadow .15s}
.pin:hover{border-color:#A9B4C8}
.pin:focus{outline:0;border:1px solid #071040;background:#F3F6FA;box-shadow:0 0 0 3px rgba(20,207,245,.4)}
.pin::placeholder{color:#8C97B0}
.pin.r{text-align:right;font-variant-numeric:tabular-nums;margin-left:0;margin-right:-6px}
.pin.c{text-align:center;margin-left:0}
.pin-b{font-weight:700}
.pin-s{font-size:11.5px;color:#5A6377}
.pin-title{font-size:15px;font-weight:700}
.pin-notes{margin-top:4px;font-size:12.5px;line-height:1.6;color:#3B4458;resize:vertical}
.pin.bad{border-color:#B42318;background:#FDECEE}
.x{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:#586382;cursor:pointer;opacity:.45;transition:opacity .15s,border-color .15s,color .15s}
tr:hover .x,.x:focus-visible{opacity:1}
.x:hover{border-color:#B42318;color:#B42318}
.no-lines{padding:28px 0;text-align:center;color:#5A6377;border-bottom:1px solid #E3E6EE;font-size:13px}
.svc-pick{display:flex;gap:8px}
.svc-pick select{flex:1;min-width:0}
.compose-rail,.doc-aside{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.sum-box{background:#071040;color:#FFFFFF;padding:22px 24px 24px}
.sum-k{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#14CFF5}
.sum-v{margin-top:8px;font-size:36px;font-weight:300;letter-spacing:-.02em;line-height:1}
.sum-v>span{font-size:16px;font-weight:500;color:#8D9BC6;margin-right:6px;vertical-align:12px}
.sum-v output{font:inherit;color:#FFFFFF}
.sum-note{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.16);font-size:13px;color:#C3CDEA;line-height:1.6}
.svc-panel{padding-bottom:12px}
.svc-panel .panel-t{margin-bottom:4px}
.svc-intro{margin:0 0 8px;font-size:13px;color:#586382}
.svc{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:8px 2px;border:0;border-bottom:1px solid #E3EAF1;background:#FFFFFF;font:inherit;color:#071040;text-align:left;cursor:pointer;transition:background .15s,padding .15s}
.svc:hover{background:#F3F6FA;padding-left:8px;padding-right:8px}
.svc .plus{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #C3CFDD;color:#071040;flex:none;transition:all .15s}
.svc:hover .plus{background:#071040;border-color:#071040;color:#14CFF5}
.svc-n{display:block;font-size:14px;font-weight:700}
.svc-d{display:block;font-size:12.5px;color:#586382;margin-top:2px}
.cap{font-size:10.5px;font-weight:600;color:#5A6377;margin-bottom:3px}
.void-stamp{position:absolute;top:290px;left:50%;transform:translateX(-50%) rotate(-18deg);font-weight:800;font-size:64px;letter-spacing:.14em;color:rgba(180,35,24,.14);pointer-events:none;white-space:nowrap}
.paper.void .p-hero{color:#8C97B0;text-decoration:line-through;text-decoration-thickness:2px}
.tl-s{display:grid;grid-template-columns:18px 1fr;column-gap:14px;position:relative;padding-bottom:18px}
.tl-s:last-child{padding-bottom:0}
.tl-s::before{content:"";position:absolute;left:4.5px;top:16px;bottom:2px;width:1px;background:#C3CFDD}
.tl-s:last-child::before{display:none}
.tl-d{display:block;width:10px;height:10px;margin-top:4px;background:#FFFFFF;box-shadow:inset 0 0 0 1px #A9B4C8}
.tl-s.done .tl-d{background:#071040;box-shadow:none}
.tl-s.now .tl-d{background:#14CFF5;box-shadow:0 0 0 1px #071040}
.tl-l{font-size:14px;font-weight:700;color:#586382}
.tl-s.done .tl-l,.tl-s.now .tl-l{color:#071040}
.tl-n{font-size:12.5px;color:#586382;margin-top:2px}
.pay-d>summary{list-style:none;display:flex}
.pay-d>summary::-webkit-details-marker{display:none}
.pay-d[open]>summary{display:none}
.rc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #E3EAF1;font-size:14px}
.rc-r{display:flex;align-items:center;gap:14px}
.rc-row.void-row{opacity:.6;text-decoration:line-through}

/* ---------- reports ---------- */
.rp-page{padding-top:44px;gap:44px}
.rp-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.rp-right{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.rtabs a{min-height:42px;padding:0 18px;font-size:13.5px}
.rp-note{margin:16px 0 0;font-size:13px;line-height:1.55;color:#586382}
.pl td{padding:12px 10px}
.pl .pl-head td{background:#F3F6FA;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#586382;padding:10px}
.pl .pl-line td:first-child{padding-left:26px}
.pl .pl-sub td{border-top:1.5px solid #071040;font-weight:800}
.pl .pl-net td{font-weight:800;font-size:16px;border-top:1.5px solid #071040;border-bottom:3px double #071040}
.pl .pl-pct td{color:#586382;border-bottom:0}
.kstrip{display:flex;flex-wrap:wrap;row-gap:18px;border-top:1.5px solid #071040;border-bottom:1px solid #D5DEE8;padding:22px 0;position:relative}
.kstrip::before{content:"";position:absolute;left:0;top:-2.75px;width:36px;height:4px;background:#14CFF5}
.kstrip>.k{flex:1 1 200px;min-width:0;padding:2px 28px;border-left:1px solid #D5DEE8}
.kstrip>.k:first-child{padding-left:0;border-left:0}
.kv-big{margin-top:8px;font-size:26px;font-weight:600;color:#071040}
.k-note{margin-top:4px;font-size:12.5px;color:#586382}
.fun{display:grid;grid-template-columns:170px minmax(0,1fr) 130px;align-items:center;column-gap:24px;padding:16px 0;border-bottom:1px solid #D5DEE8}
.f-bar{height:14px;background:#EAF0F5}
.f-bar>div{height:14px;width:0;background:#071040}
.f-v{text-align:right;font-size:16px;font-weight:700}
.two-sec{display:flex;flex-wrap:wrap;gap:56px}
.two-sec>section{flex:1 1 380px;min-width:0}

/* ---------- settings ---------- */
.set-page{gap:60px}
.set-sec{display:flex;flex-wrap:wrap;gap:24px 56px}
.set-intro{flex:1 1 240px;max-width:320px}
.set-intro p{margin:10px 0 0;font-size:14px;line-height:1.55;color:#586382}
.setH{margin:8px 0 0;font-size:20px;font-weight:700;letter-spacing:-.01em}
.fgrid{flex:2 1 480px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fgrid .span2{grid-column:1 / -1}
.set-body{flex:2 1 480px;min-width:0}
.code-box{padding:18px;background:#FFF6E5;border-left:3px solid #8A5300}
.code-box .inp{max-width:200px;letter-spacing:.2em;font-family:"IBM Plex Mono",monospace}
.switch{position:relative;display:inline-flex;align-items:center;gap:14px;cursor:pointer;font-size:15px;font-weight:700;align-self:flex-start}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch .track{position:relative;width:46px;height:26px;background:#C3CFDD;flex:none;transition:background .18s}
.switch .knob{position:absolute;top:3px;left:3px;width:20px;height:20px;background:#FFFFFF;transition:transform .18s,background .18s}
.switch input:checked+.track{background:#071040}
.switch input:checked+.track .knob{transform:translateX(20px);background:#14CFF5}
.switch input:focus-visible+.track{outline:2px solid #071040;outline-offset:2px}
.num-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid #D5DEE8;font-size:14.5px;flex-wrap:wrap}
.num-row label{color:#2B3556;display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
.num-in .inp{width:110px;height:40px;text-align:right}
.always{display:flex;align-items:center;gap:14px}
.mini-switch{position:relative;width:46px;height:26px;background:#071040;flex:none}
.mini-switch span{position:absolute;top:3px;left:23px;width:20px;height:20px;background:#14CFF5}
.svc-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 4px;border-bottom:1px solid #D5DEE8;color:#071040;text-decoration:none;transition:background .15s}
.svc-row:hover{background:#F3F6FA;color:#071040}
.svc-row.off{opacity:.55}

/* ---------- sign-in pages ---------- */
body.auth{background:#FFFFFF}
.auth-wrap{min-height:100vh;display:flex}
.auth-brand{position:relative;flex:0 0 42%;max-width:620px;background:#071040;color:#FFFFFF;padding:40px 48px 36px;display:flex;flex-direction:column;overflow:hidden}
.auth-logo{width:205px;height:auto}
.auth-pitch{margin-top:auto;max-width:400px;padding-right:80px}
.auth-line{margin:14px 0 0;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.auth-foot{margin-top:48px;font-size:11.5px;color:#8D9BC6;line-height:1.7}
.auth-word{position:absolute;right:20px;bottom:30px;writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;font-size:64px;line-height:1;color:rgba(255,255,255,.08);letter-spacing:.02em;white-space:nowrap}
.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px}
.auth-card{width:100%;max-width:440px}
.auth-card.wide{max-width:540px}
.auth-h{margin:6px 0 0;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.auth-sub{margin:12px 0 0;font-size:15px;line-height:1.6;color:#2B3556}
.auth-form{margin-top:28px}
.auth-help{margin:24px 0 0;font-size:13px;line-height:1.55;color:#586382}
.otp-form{margin-top:26px;display:flex;flex-direction:column;gap:14px}
.otp-box{position:relative}
.otp-form.otp-ready .otp-box input{position:absolute;inset:0;width:100%;height:100%;opacity:0;font-size:16px;cursor:text}
.otp-cells{display:none}
.otp-form.otp-ready .otp-cells{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.otp-form.otp-ready.is-recovery .otp-cells{display:none}
.otp-form.otp-ready.is-recovery .otp-box input{position:static;opacity:1;height:46px}
.otp-cell{height:58px;display:flex;align-items:center;justify-content:center;border:1px solid #C3CFDD;background:#FFFFFF;font-family:"IBM Plex Mono",monospace;font-size:24px;font-weight:600;color:#071040;transition:border-color .15s,box-shadow .15s,background .15s}
.otp-cell.filled{border-color:#071040}
.otp-cell.active{border-color:#071040;box-shadow:0 0 0 3px rgba(20,207,245,.45)}
.otp-cell.pop{animation:pop .18s cubic-bezier(.2,.7,.2,1)}
@keyframes pop{from{transform:scale(.86)}to{transform:none}}
.otp-form.is-verifying .otp-cell{background:#071040;color:#14CFF5;border-color:#071040}
.otp-form.is-error .otp-cells{animation:shake .4s}
@keyframes shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.otp-meta{margin:0;font-size:13px;color:#586382}
.otp-form.otp-ready .otp-nojs{display:none}
.otp-go .spinner{display:none;width:16px;height:16px;border-color:rgba(255,255,255,.35);border-top-color:#FFFFFF}
.otp-form.is-verifying .otp-go .spinner{display:inline-block}
.otp-alt{margin-top:14px}
.setup-grid{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:24px}
.setup-qr{padding:10px;border:1px solid #D5DEE8;background:#FFFFFF}
.setup-qr img{display:block;width:200px;height:200px}
.setup-key{margin:0;font-size:13.5px;color:#2B3556}
.secret{margin:8px 0 0;font-size:15px;font-weight:600;letter-spacing:.06em;word-break:break-all}
.codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:26px 0;padding:20px 22px 20px 44px;background:#EAF0F5;font-size:16px;font-weight:600}
.narrow{max-width:760px}

/* ---------- client portal ---------- */
body.portal{background:#FFFFFF}
.po-top{border-bottom:1px solid rgba(255,255,255,.12)}
.po-hdr{min-height:68px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.po-brand{display:flex;align-items:center;gap:18px;padding:19px 0}
.po-brand img{display:block;height:30px;width:auto}
.po-tag{padding-left:18px;border-left:1px solid rgba(255,255,255,.22)}
.po-who{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 0}
.po-who form{margin:0}
.po-email{color:#C3CDEA}
.po-hero{padding-top:48px;padding-bottom:56px;display:flex;flex-wrap:wrap;gap:40px 56px;align-items:flex-end}
.po-hero h1{margin:12px 0 0;font-size:40px;font-weight:700;letter-spacing:-.025em;line-height:1.1;color:#FFFFFF}
.po-owed{flex:3 1 420px;min-width:0}
.po-big{font-size:72px}
.po-big .cur{font-size:24px;vertical-align:30px}
.po-big .cents{font-size:32px}
.po-note{margin:14px 0 0;font-size:15px;color:#C3CDEA}
.po-pay{flex:2 1 340px;min-width:0;border:1px solid rgba(255,255,255,.22);padding:22px 24px}
.po-bank{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:46px;border-bottom:1px solid rgba(255,255,255,.12);font-size:14px}
.po-k{color:#C3CDEA}
.po-v{display:flex;align-items:center;gap:12px}
.po-v .num{font-weight:600;color:#FFFFFF}
.po-v .num.strong{font-weight:800;color:#14CFF5}
.tb.copy{min-height:30px;padding:0 10px;font-size:12px}
.po-hint{margin:14px 0 0;font-size:13px;line-height:1.55;color:#C3CDEA}
.po-page{gap:60px;padding-bottom:72px}
.po-q{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding:20px 8px;border-bottom:1px solid #D5DEE8}
.po-q-st{width:150px}
.po-q-t{flex:1 1 260px;min-width:0}
.po-q form{margin:0}
.po-foot{margin:0;padding-top:20px;border-top:1px solid #D5DEE8;font-size:12px;color:#586382;line-height:1.7}
.po-banner{background:#EAF0F5;border-bottom:1px solid #D5DEE8}
.po-banner-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;padding-top:12px;padding-bottom:12px}
.po-banner-t{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13.5px;color:#2B3556}
.po-auth{align-items:center;padding-top:64px;padding-bottom:80px}
.po-auth-text{flex:3 1 420px;min-width:0}
.po-auth-text h1{font-size:44px;max-width:640px}
.po-auth-card{flex:2 1 360px;min-width:0;background:#FFFFFF;color:#071040;padding:28px 30px 30px}

/* ---------- motion preferences ---------- */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}}

/* ---------- tablets ---------- */
@media (max-width:980px){
.reg{grid-template-columns:118px minmax(0,1fr) 110px 36px}
.reg .c-ref,.reg .c-when{display:none}
.navl{min-height:52px}
.auth-brand{flex-basis:36%}
.auth-line{font-size:24px}
}

/* ---------- phones ---------- */
@media (max-width:760px){
.m-only{display:revert !important}
.hide-s,.band,.navstrip{display:none !important}
.wrap{padding-left:20px;padding-right:20px}
.app-root{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
.app-root.has-mbar{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:35;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#071040;border-top:1px solid rgba(255,255,255,.14);padding-bottom:env(safe-area-inset-bottom)}
.tab{min-height:60px;border:0;background:none;color:#A9B6DB;font:inherit;font-size:11.5px;font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;text-decoration:none;box-shadow:inset 0 2px 0 transparent}
.tab:hover{color:#FFFFFF}
.tab .tn{font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:500;color:#7D8CBB}
.tab.on{color:#FFFFFF;box-shadow:inset 0 2px 0 #14CFF5}
.tab.on .tn{color:#14CFF5}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:35;display:flex;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #D5DEE8;box-shadow:0 -14px 28px -18px rgba(7,16,64,.35)}
.mbar button{flex:1 1 0;min-width:0;padding:0 10px}
.hdr{min-height:60px;gap:0 10px}
.logo{padding:16px 0}
.logo img{height:24px}
.hdr-actions{padding:8px 0;gap:8px}
.tb{width:44px;min-height:44px;padding:0;justify-content:center}
.cta-create{width:44px;min-height:44px;padding:0}
.cta-create .lbl,.cta-create .chev{display:none}
.ava{width:44px;height:44px}
.hero{padding-top:34px;padding-bottom:44px;gap:44px}
.hero h1{font-size:30px}
.brief{font-size:16px}
.co-line{text-align:left}
.bignum{font-size:54px}
.bignum .cur{font-size:20px;vertical-align:22px;margin-right:8px}
.bignum .cents{font-size:26px}
.age-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}
.ytd{border-left:0;padding-left:0}
.ph{padding-top:26px;padding-bottom:30px;gap:24px}
.ph-title{font-size:28px}
.ph-title.mono{font-size:24px}
.ph-sub{font-size:14.5px}
.ph-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ph-actions a,.ph-actions button{width:100%;min-width:0;padding:0 10px;white-space:normal;text-align:center;line-height:1.2}
.ph-actions .cta{grid-column:1 / -1;order:-1}
.ph-actions .ghost:first-child:nth-last-child(2){grid-column:1 / -1}
.figs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:18px}
.figs>.fig{padding:0;border-left:0}
.fv{font-size:20px;white-space:normal;overflow:visible}
.fn{white-space:normal;overflow:visible}
.kstrip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:18px}
.kstrip>.k{padding:0;border-left:0}
.kv-big{font-size:20px}
.page{padding-top:36px;gap:48px}
.sh h2{font-size:19px}
.seg{flex-wrap:nowrap;overflow-x:auto;max-width:100%}
.seg a,.seg button{flex:none;min-height:44px}
.lnk{min-height:44px;display:inline-flex;align-items:center}
.crumb{min-height:36px;display:inline-flex;align-items:center}
.x{width:44px;height:44px;opacity:1}
.inp{font-size:16px}
.pin{font-size:16px;border-bottom-color:#A9B4C8}
.pin-s{font-size:14px}
.chart-y{padding-left:38px}
.chart-skel{padding-left:38px;gap:8px}
.chart-cols{gap:3px}
.mlab{font-size:10px;letter-spacing:0}
.readout{padding:22px 20px}
.lst,.stk,.roles,.pl{min-width:0 !important}
.reg-head{display:none !important}
.reg,.m-row{grid-template-columns:minmax(0,1fr) auto !important;grid-template-areas:"a b" "c c" "d e";row-gap:6px;column-gap:14px;align-items:start;padding:14px 4px;min-height:0}
.m-row.m4{grid-template-areas:"a b" "c c" "d e" "f f"}
.reg .c-ref,.reg .c-when{display:block}
.m-a{grid-area:a;text-align:left !important}.m-b{grid-area:b;text-align:right !important;justify-self:end}.m-c{grid-area:c;min-width:0;text-align:left !important}.m-d{grid-area:d;text-align:left !important}.m-e{grid-area:e;text-align:right !important;justify-self:end}.m-f{grid-area:f}
.m-x{display:none !important}
.m-row .ttl,.m-row .sub,.reg .ttl,.reg .sub{white-space:normal;overflow-wrap:anywhere}
.u-act,.ex-act{justify-content:flex-start}
.stk thead{display:none}
.stk tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"a b" "c c" "d e";row-gap:5px;column-gap:14px;padding:14px 4px;border-bottom:1px solid #D5DEE8}
.stk td{display:block;padding:0 !important;border:0 !important;background:transparent !important}
.stk td:empty{display:none}
.stk tfoot tr{border-bottom:3px double #071040}
.roles th:not(:first-child),.roles td:not(:first-child){width:62px !important;padding-left:4px;padding-right:4px}
.sticky1 th:first-child,.sticky1 td:first-child{position:sticky;left:0;z-index:1;background:#FFFFFF;min-width:150px;box-shadow:1px 0 0 #D5DEE8}
.sticky1 th:first-child{background:#EAF0F5}
.sticky1 .pl-head td:first-child{background:#F3F6FA}
.pl .v{display:none}
.pl .v.on{display:table-cell}
.desk-in{padding-top:20px;padding-bottom:60px}
.desk-split{gap:20px}
.paper{min-height:0;flex-basis:100%}
.paper-main{padding:24px 16px 28px}
.paper-band{flex-basis:40px;padding:18px 0}
.paper-band img{width:24px}
.vword-p,.vword-p.long{font-size:38px}
.p-top{flex-direction:column;gap:18px}
.p-from{text-align:left}
.p-hero{font-size:32px}
.void-stamp{font-size:40px;top:220px}
.pt thead{display:none}
.pt tr{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"c c c" "d e b";column-gap:6px;row-gap:4px;padding:10px 0;border-bottom:1px solid #E3E6EE}
.pt td{display:block;padding:0 !important;border:0 !important;width:auto !important}
.pt td.pc{grid-area:c}.pt td.pq{grid-area:d}.pt td.pp{grid-area:e}.pt td.pa{grid-area:b;text-align:right}
.pt td.pq,.pt td.pp{font-size:12px;color:#5A6377;align-self:center}
.pt.edit tr{grid-template-columns:72px minmax(0,1fr) auto 44px;grid-template-areas:"c c c c" "d e b r";column-gap:8px;align-items:end;padding:12px 0}
.pt.edit td.pq,.pt.edit td.pp{color:#071040}
.pt.edit td.pa{align-self:end;padding-bottom:10px !important}
.pt.edit td.pr{grid-area:r}
.doc-aside,.compose-rail{order:-1}
.fgrid{grid-template-columns:1fr}
.fun{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"k v" "bar bar";row-gap:10px}
.fun .f-k{grid-area:k}.fun .f-v{grid-area:v}.fun .f-bar{grid-area:bar}
.dw-h{padding:22px 20px 18px}
.dw-b{padding:22px 20px 32px}
.dw-hero{font-size:38px}
.srch{padding:0;align-items:stretch}
.srch-box{max-width:none}
.srch-list{max-height:none;flex:1}
.res{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t t" "f a" "d d";row-gap:3px;padding:12px 20px;min-height:0}
.res .r-type{grid-area:t;width:auto}.res .r-ref{grid-area:f;width:auto}.res .r-amt{grid-area:a;text-align:right}.res .r-desc{grid-area:d;white-space:normal;color:#2B3556}
.toasts{left:12px;right:12px;max-width:none;bottom:calc(76px + env(safe-area-inset-bottom))}
.rtabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;overflow:visible}
.rtabs a{white-space:normal;line-height:1.2;padding:6px 8px;min-height:52px;font-size:13px;justify-content:center;text-align:center}
.rp-page{padding-top:28px;gap:36px}
.cp-split,.row-split{gap:48px}
.set-sec{gap:18px}
.link-row{flex-direction:column}
.void-line{grid-template-columns:1fr auto}
.void-line span:nth-child(2){grid-column:1 / -1;grid-row:2}
.codes{grid-template-columns:1fr}
.auth-wrap{flex-direction:column}
.auth-brand{flex:none;max-width:none;padding:18px 20px}
.auth-logo{width:160px}
.auth-pitch,.auth-foot,.auth-word{display:none}
.auth-main{padding:32px 20px 48px;align-items:flex-start}
.auth-h{font-size:26px}
.po-hero{padding-top:30px;padding-bottom:40px}
.po-hero h1{font-size:28px}
.po-auth-text h1{font-size:30px}
.po-big{font-size:54px}
.po-big .cur{font-size:20px;vertical-align:22px}
.po-big .cents{font-size:26px}
.po-auth-card{padding:22px 20px}
.po-q-st{width:auto}
.tb.copy{width:auto;min-height:40px;padding:0 14px}
.g-por{grid-template-columns:minmax(0,1fr) auto}
}

.sublink{color:#0A7EA4;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.sublink.red{color:#B42318}
.sublink:hover{color:#071040}
