
:root{--g:#101828;--acc:#2E6BFF;--ink:#101828;--sub:#344054;--mut:#667085;--fade:#98A2B3;--line:#EAECF0;--bg:#F3F4F6;--ok:#067647;--amb:#B54708;--red:#B42318;--sh:#C11574;--al:#1D3C8F}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:#F0F2F5;color:var(--ink);font:13.5px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
button,input,select{font:inherit;color:inherit}
.hidden{display:none!important}
/* login */
#login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.login-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:10px;padding:24px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;color:#101828}
.login-card h1{margin:0;font-size:24px}.login-card p{margin:0 0 8px;color:var(--mut)}
.in{width:100%;border:1px solid #D0D5DD;border-radius:10px;padding:11px 12px;background:#fff;font-size:16px;outline:none}
.in:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(46,107,255,.15)}
.btn{border:0;border-radius:10px;padding:11px 14px;background:#101828;color:#fff;font-weight:600;cursor:pointer}
.btn.lite{background:#fff;color:var(--g);border:1px solid #D0D5DD}.btn.red{background:#fff;color:var(--red);border:1px solid #FDA29B}.btn.sm{padding:6px 11px;font-size:13px;border-radius:8px}
.err{color:var(--red);font-size:13px;min-height:17px}.tip{color:var(--mut);font-size:12px}
/* shell: Facebook-style - fixed white top bar, light menu on the left, page scrolls in the middle */
#app{min-height:100vh}
.hb{position:fixed;top:0;left:0;right:0;height:56px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.1);z-index:40;display:flex;align-items:center;gap:10px;padding:0 14px}
.logo{font-weight:800;font-size:20px;letter-spacing:-.4px;color:#101828;white-space:nowrap;margin-right:6px}.logo span{color:var(--acc)}
.hb .search{flex:0 1 300px}.hb .search input{background:#F0F2F5;box-shadow:none;border-radius:20px;padding:9px 14px}
.hsp{flex:0 0 8px}
.hk{flex:1 1 auto;min-width:0;display:flex;justify-content:center;overflow:hidden}
.hk .tiles{display:flex;gap:6px;margin:0;flex-wrap:nowrap}
.hk .t{background:#101828;border:0;border-radius:10px;padding:5px 13px 6px;min-width:0;box-shadow:none;color:#fff;white-space:nowrap;cursor:default}
.hk .t:before,.hk .t:after{display:none}.hk .t.hero{background:#000}
.hk .t .l{font-size:9.5px;letter-spacing:.5px;color:#98A2B3;margin:0;line-height:1.3}
.hk .t .v{font-size:15px;line-height:1.25;color:#fff!important;font-variant-numeric:tabular-nums}
.hk .t .v i{font-style:normal;font-weight:700}.hk .t .s,.hk .t .bar2{display:none}
.hk .t.g .v i{color:#6CE9A6}.hk .t.o .v i{color:#FDB022}.hk .t.sh .v i{color:#F670C7}.hk .t.al .v i{color:#84ADFF}
@media (max-width:1250px) and (min-width:900px){.hk .t.sh,.hk .t.al{display:none}}
.circ{width:40px;height:40px;border-radius:50%;background:#E4E6EB;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;flex:none;color:#050505;padding:0}
.circ.on{background:#DBE7F2;color:var(--acc)}.circ b.bdg{position:absolute;top:-4px;right:-4px;background:#E41E3F;color:#fff;font-size:11px;border-radius:10px;padding:1px 6px;line-height:16px}
.avt{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#DD2590,#7A5AF8);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;flex:none;overflow:hidden;cursor:pointer;border:0;padding:0;font-size:15px}
.avt img{width:100%;height:100%;object-fit:cover}.avt.al{background:linear-gradient(135deg,#2E6BFF,#0E9384)}
.avt.big{width:60px;height:60px;font-size:22px;cursor:default}
.mbtn{display:none}
.side{position:fixed;top:56px;left:0;bottom:0;width:260px;padding:12px 8px;overflow-y:auto;background:#F0F2F5;z-index:30}
.mi{padding:9px 12px;border-radius:8px;font-weight:700;font-size:14.5px;color:#050505;margin-top:6px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.mi:hover{background:#E4E6EB}.mi.on{color:var(--acc)}
.sub{padding:8px 12px 8px 24px;font-size:13.5px;color:#4B4F56;border-radius:8px;margin:1px 0;cursor:pointer;font-weight:500}.sub:hover{background:#E4E6EB}
.sub.on{background:#E7F0FF;color:var(--acc);font-weight:700}.sub.dim{color:#B0B3B8;cursor:default}.sub.dim:hover{background:none}
.soon{font-size:10px;font-weight:700;letter-spacing:.4px;background:#E4E6EB;color:#65676B;padding:2px 6px;border-radius:6px}
.ver{font-size:11px;color:#98A2B3;padding:14px 12px 4px}
.sdiv{height:1px;background:#CED0D4;margin:10px 12px}
.mainw{margin-left:260px;padding-top:56px;min-width:0}
main{padding:16px 20px 30px;max-width:1720px}
@media (min-width:900px){main{zoom:.9}.side{font-size:13px}}
.hrow{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.hrow h1{font-size:20px;margin:0;white-space:nowrap;letter-spacing:-.3px}
.pmenu{position:fixed;right:12px;top:60px;width:340px;max-width:calc(100vw - 20px);background:#fff;border-radius:10px;box-shadow:0 12px 28px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.1);z-index:46;padding:10px}
.pcard{display:flex;gap:12px;align-items:center;padding:8px;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.08);margin-bottom:8px}.pcard b{font-size:17px;display:block}.pcard small{color:var(--mut)}
.pitem{display:flex;align-items:center;gap:10px;padding:10px 8px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px}.pitem:hover{background:#F2F2F2}
.pitem i{width:34px;height:34px;border-radius:50%;background:#E4E6EB;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:15px}
.pitem small{display:block;font-weight:400;color:var(--mut);font-size:12px}
.ms{display:flex;gap:5px;margin-left:auto;background:#fff;border-radius:12px;padding:4px;box-shadow:0 1px 2px rgba(16,24,40,.06);overflow-x:auto;scrollbar-width:none;max-width:100%}
.ms::-webkit-scrollbar{display:none}
.ms button{border:0;background:none;padding:6px 9px 5px;border-radius:9px;font-size:11.5px;color:var(--mut);text-align:center;line-height:1.3;cursor:pointer;flex:none;min-width:52px}
.ms button b{display:block;font-size:13px;color:var(--sub);margin-bottom:1px}.ms button.on{background:#101828;color:#98A2B3}.ms button.on b{color:#fff}.ms button.fu{opacity:.5}
.yhead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;margin-bottom:12px;align-items:stretch}.yhead .tiles .t.hero{grid-column:auto}
@media (max-width:1100px){.yhead{grid-template-columns:1fr}}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-bottom:12px}
.cc{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 2px rgba(16,24,40,.06);display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.cc .cav{width:56px;height:56px;border-radius:50%;background:#101828;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;margin-bottom:8px}
.cc b{font-size:15px;cursor:pointer}.cc small{color:var(--mut);font-size:12px}.cc .cph{font-size:13px;color:var(--sub);margin-top:4px;font-variant-numeric:tabular-nums}
.cc .cbt{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap;justify-content:center}.cc .cbt a{padding:5px 11px;border-radius:16px;background:#F2F4F7;color:var(--acc);font-weight:600;font-size:12.5px;cursor:pointer;text-decoration:none}
.cc .cbt a:first-child{background:#101828;color:#fff}
.hk .t{border:0!important}
@media (min-width:900px){td.tt2{white-space:nowrap}}
@media (min-width:1200px) and (max-width:1499px){.mainw.rl main .cols{grid-template-columns:1fr}.mainw.rl main .cols .stick{position:static;max-height:none;overflow:visible}}
.dg2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}.dg2 .card{margin:0}.dg2 svg{max-width:100%!important}
@media (max-width:1100px){.dg2{grid-template-columns:1fr}.tiles.dk{grid-template-columns:1fr 1fr!important}}
.tiles{display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:10px;margin-bottom:12px}
.t{background:#fff;border-radius:12px;padding:10px 14px;box-shadow:0 1px 2px rgba(16,24,40,.06);min-width:0}
.t .l{font-size:11px;font-weight:700;color:var(--mut);letter-spacing:.4px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t .v{font-size:21px;font-weight:750;margin-top:2px;font-variant-numeric:tabular-nums;white-space:nowrap}.t .s{font-size:12px;color:var(--mut);margin-top:1px}
.t.hero{background:linear-gradient(135deg,#0B0F19,#1D2939);color:#fff}.t.hero .l,.t.hero .s{color:#98A2B3}
.bar2{height:6px;background:rgba(255,255,255,.14);border-radius:4px;margin-top:8px;display:flex;overflow:hidden}.bar2 i{height:100%}
.t.sh{border-top:3px solid #DD2590}.t.al{border-top:3px solid #2E6BFF}
.cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:12px;align-items:start}
.card{background:#fff;border-radius:12px;box-shadow:0 1px 2px rgba(16,24,40,.06);padding:12px 14px;margin-bottom:12px}
.card h3{margin:0 0 2px;font-size:14.5px}.card .sb{color:var(--mut);font-size:12px;margin-bottom:8px}
table.ex{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
table.ex th{font-size:11px;color:var(--fade);text-transform:uppercase;letter-spacing:.4px;text-align:left;padding:4px 8px;font-weight:700}table.ex th.r{text-align:right}
tr.g td{background:#F6F7F9;font-weight:700;padding:5px 8px;font-size:13px}tr.g td.r{text-align:right}tr.g td.m{font-weight:500;color:var(--fade);font-size:12px}
tr.g td:first-child{border-left:3px solid var(--c)}
table.ex td{padding:2px 8px;border-bottom:1px solid #F2F4F7;height:30px}td.nm{padding-left:14px}td.nm.mu{color:var(--fade)}td.nm.pd{color:var(--ok)}
td.last{color:var(--fade);font-size:12px;text-align:right;white-space:nowrap}
.amt{border:1px solid #D0D5DD;border-radius:7px;padding:3px 8px;text-align:right;width:104px;height:26px;display:block;margin-left:auto;background:#fff;outline:none;font-variant-numeric:tabular-nums;font-size:13.5px}
.amt:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(46,107,255,.15)}.amt.auto{color:#175CD3}
.pb{appearance:none;-webkit-appearance:none;border-radius:13px;padding:3px 10px;font-size:12px;text-align:center;text-align-last:center;width:130px;font-weight:600;border:1px dashed #D0D5DD;color:var(--fade);background:#fff;cursor:pointer;outline:none;height:24px}
.pb.al{background:#E0EAFF;color:var(--al);border:1px solid #E0EAFF}.pb.sh{background:#FCE7F6;color:var(--sh);border:1px solid #FCE7F6}.pb.ot{background:#F2F4F7;color:var(--sub);border:1px solid #F2F4F7}
.bk{display:inline-block;border-radius:13px;padding:3px 10px;font-size:12px;width:130px;text-align:center;font-weight:600;background:#ECFDF3;color:var(--ok);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
td.add input{border:0;background:transparent;color:var(--acc);font-size:12.5px;font-weight:600;outline:none;width:100%;padding:3px 0}
td.add input:focus{color:var(--ink);font-weight:400;border-bottom:1px solid var(--acc)}
table.ex td.add{height:26px;padding-left:14px}
/* 2.31 slim month list */
table.ex td{padding:1px 8px;height:25px;font-size:13px}table.ex th.c,table.ex td.c{text-align:center}
tr.g td{padding:3px 8px}tr.g td.m{white-space:nowrap}
a.pl{color:var(--acc);font-weight:700;font-size:11px;cursor:pointer;margin-left:8px;padding:1px 8px;border-radius:10px;background:#EEF4FF;text-transform:none;letter-spacing:0;white-space:nowrap;display:inline-block;line-height:1.5}
a.pl:hover{background:#D9E6FF}
tr.ar td.add{background:#F8FAFF;height:28px}
td.idc,th.idc{width:178px;position:relative;white-space:nowrap}
.idn{border:1px solid transparent;background:transparent;border-radius:6px;padding:1px 6px;width:calc(100% - 22px);height:21px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--sub);outline:none}
.idn:hover{border-color:#E4E7EC}.idn:focus{border-color:var(--acc);background:#fff;color:var(--ink)}.idn.mt{color:var(--fade);font-style:italic}
.idn::placeholder{color:#CBD0D8;font-family:inherit;font-style:normal}
.cp{cursor:pointer;color:var(--fade);font-size:12px;margin-left:3px;visibility:hidden}tr:hover .cp{visibility:visible}.cp:hover{color:var(--acc)}
.amt{width:86px;height:22px;font-size:13px}
.pb{width:96px;height:21px;font-size:11.5px;padding:1px 8px}
.bk,.pdc{display:inline-block;border-radius:13px;padding:1px 8px;font-size:11.5px;width:96px;height:21px;line-height:19px;text-align:center;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pdc.al{background:#E0EAFF;color:var(--al)}.pdc.sh{background:#FCE7F6;color:var(--sh)}.pdc.ot{background:#F2F4F7;color:var(--sub)}
.bk{width:auto;max-width:96px}
.tk{width:17px;height:17px;accent-color:var(--ok);cursor:pointer;vertical-align:middle;margin:0}
em.cy{font-style:normal;font-size:10px;font-weight:700;color:#B54708;background:#FEF0C7;border-radius:8px;padding:0 6px;margin-left:6px;white-space:nowrap}
.idl{display:none}
tr.tot td{height:30px}
@media (min-width:900px){.hrow:has(.ms) .ms{flex:1 1 auto;margin:0;gap:3px}.hrow:has(.ms) .ms button{flex:1 1 0;min-width:0}}
/* bill IDs page */
.bl{display:grid;grid-template-columns:minmax(120px,1.15fr) minmax(130px,1.2fr) 218px 142px 80px 62px 78px;gap:8px;align-items:center;padding:4px 10px;border-bottom:1px solid #F2F4F7;font-size:13px}
.bl.h{font-size:10.5px;color:var(--fade);text-transform:uppercase;letter-spacing:.4px;font-weight:700;border-bottom:1px solid var(--line);padding-top:2px}
.bl .in{padding:3px 8px;font-size:12.5px;border-radius:7px;height:26px}.bl .bn{font-weight:600}
.bl .bs{text-align:center;padding:3px 4px}
.blg{background:#F6F7F9;border-left:3px solid var(--c);font-weight:700;font-size:13px;padding:5px 10px;margin-top:6px}
.seg{display:inline-flex;background:#F2F4F7;border-radius:8px;padding:2px;gap:2px;white-space:nowrap}
.seg button{border:0;background:none;padding:3px 9px;border-radius:6px;font-size:11.5px;font-weight:600;color:var(--mut);cursor:pointer;white-space:nowrap}.seg button.on{background:#fff;color:var(--acc);box-shadow:0 1px 2px rgba(16,24,40,.12)}
.bnote{font-size:12.5px;color:var(--mut);margin:0 0 10px;line-height:1.5}
.cal .d .dts{position:absolute;bottom:5px;display:flex;gap:3px}.cal .d .dts i{position:static}.cal .d .dts i.bd{border-radius:1px;width:6px;height:6px;margin-top:-1px}
.bdl{display:inline-block;width:8px;height:8px;border-radius:2px;flex:none}
tr.tot td{background:#101828;color:#fff;font-weight:750;height:34px;border:0}tr.tot td:first-child{border-radius:8px 0 0 8px}tr.tot td:last-child{border-radius:0 8px 8px 0}
.cb{display:grid;grid-template-columns:110px 1fr 70px 34px;gap:8px;align-items:center;font-size:12.5px;margin:5px 0}
.cb b{text-align:right;font-variant-numeric:tabular-nums}.cb em{font-style:normal;color:var(--fade);font-size:11.5px;text-align:right}
.cbar{height:8px;border-radius:4px;background:#F2F4F7;overflow:hidden}.cbar>i{display:block;height:100%;border-radius:4px;position:relative}.cbar>i>i{position:absolute;left:0;top:0;bottom:0;border-radius:4px}
.nx{display:grid;grid-template-columns:1fr 50px 80px;padding:5px 0;border-top:1px solid #F2F4F7;font-size:13px}.nx span:nth-child(2){color:var(--fade)}.nx b{text-align:right;font-variant-numeric:tabular-nums}
.note{color:var(--mut);font-size:12.5px;padding:6px 0}
.empty{color:var(--mut);text-align:center;padding:30px 10px}
/* month tabs stay in view while the page scrolls */
.hrow:has(.ms){position:sticky;top:63px;z-index:25;background:#F0F2F5;margin:-16px -20px 10px;padding:10px 20px 8px;flex-wrap:nowrap}.hrow:has(.ms) h1{display:none}
.hrow:has(.ms) .ms{margin:0 auto;min-width:0}.ms .msl{flex:none;align-self:center;font-size:10.5px;font-weight:800;letter-spacing:.4px;color:var(--fade);padding:0 9px 0 7px;margin-right:2px;border-right:1px solid var(--line);line-height:1.25}
.hrow:has(.ms):after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:7px;background:linear-gradient(#F0F2F5,rgba(240,242,245,0));pointer-events:none}
/* year grid */
.yw{overflow:auto;max-height:calc(100vh - 200px);border-radius:8px}
table.yr{border-collapse:separate;border-spacing:0;font-size:12.5px;font-variant-numeric:tabular-nums;width:100%}
table.yr th{font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.3px;padding:7px 4px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;position:sticky;top:0;background:#fff;z-index:2}
table.yr th:first-child{text-align:left;position:sticky;left:0;z-index:3}table.yr th.cur{color:var(--acc);background:#EEF4FF}
table.yr td{padding:1px 2px;border-bottom:1px solid #F2F4F7;text-align:right;white-space:nowrap;height:27px}
table.yr td:first-child{text-align:left;position:sticky;left:0;background:#fff;padding-left:12px;z-index:1;min-width:150px;white-space:normal}
table.yr tr.g td{background:#F6F7F9;font-weight:700;padding:4px}table.yr tr.g td:first-child{background:#F6F7F9;border-left:3px solid var(--c);padding-left:8px}
table.yr td.tt{font-weight:700;background:#F9FAFB;padding:0 6px}table.yr td.av{color:var(--mut);padding:0 6px}
.yc{width:100%;min-width:54px;border:1px solid transparent;border-radius:5px;padding:2px 5px;text-align:right;background:transparent;outline:none;font-variant-numeric:tabular-nums;font-size:12.5px;height:23px}
.yc:hover{border-color:#D0D5DD}.yc:focus{border-color:var(--acc);background:#fff;box-shadow:0 0 0 3px rgba(46,107,255,.15)}
td.curc{background:#F5F8FF}
table.yr tr.tot td{background:#101828;color:#fff;font-weight:750;padding:0 8px;height:32px;position:sticky;bottom:0;z-index:2}table.yr tr.tot td:first-child{background:#101828;z-index:3}
table.yr td.fut,table.yr th.fut{opacity:.55}
/* documents */
.chips{display:flex;gap:6px;overflow-x:auto;padding:0 0 10px}.chips button{flex:none;border:1px solid var(--line);background:#fff;border-radius:14px;padding:5px 12px;font-size:12.5px;cursor:pointer}.chips button.on{background:#101828;border-color:#101828;color:#fff}
.dg{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.dc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;cursor:pointer}
.dc .th{height:76px;border-radius:8px;background:#EEF4FF;display:flex;align-items:center;justify-content:center;font-weight:800;color:#3E63DD;letter-spacing:1px;margin-bottom:8px;font-size:13px}
.dc .th.pdf{background:#FEF3F2;color:#D92D20}.dc b{display:block;font-size:13px}.dc small{color:var(--fade);font-size:11.5px}.dc small.x{color:var(--red)}.dc small.w{color:var(--amb)}
/* sheet */
.ov{position:fixed;inset:0;background:rgba(16,24,40,.45);z-index:50;display:flex;align-items:center;justify-content:center;padding:12px}
.sheet{background:#fff;width:100%;max-width:520px;max-height:92vh;overflow:auto;border-radius:14px;padding:16px}
.sheet h2{margin:0 0 8px;font-size:17px}.sheet label{display:block;font-size:12px;color:var(--mut);margin:9px 0 3px}
.sheet .row2{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.sheet .row2 .btn{flex:1}
.prev{width:100%;border-radius:10px;border:1px solid var(--line);background:#F9FAFB;min-height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.prev img{max-width:100%;display:block}.prev iframe{width:100%;height:60vh;border:0}
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;background:#101828;color:#fff;padding:9px 15px;border-radius:10px;font-size:13.5px;z-index:60;max-width:92vw;transition:opacity .3s}
.spin{width:26px;height:26px;border:3px solid #D0D5DD;border-top-color:var(--acc);border-radius:50%;animation:sp 1s linear infinite;margin:40px auto}@keyframes sp{to{transform:rotate(360deg)}}
.later{background:#fff;border-radius:12px;padding:26px;max-width:560px}.later h2{margin:0 0 6px}.later p{color:var(--mut);margin:6px 0}
/* top bar: search + bell */
.search{position:relative;flex:0 1 300px;min-width:180px}.search input{width:100%;border:0;background:#fff;border-radius:20px;padding:8px 15px;box-shadow:0 1px 2px rgba(16,24,40,.06);outline:none;font-size:13px}
.search input:focus{box-shadow:0 0 0 3px rgba(46,107,255,.15)}
.sres{position:absolute;left:0;right:0;top:40px;background:#fff;border-radius:12px;box-shadow:0 16px 40px rgba(16,24,40,.2);border:1px solid var(--line);z-index:45;padding:6px;max-height:60vh;overflow:auto}
.sres div{padding:7px 10px;border-radius:8px;cursor:pointer;font-size:13px}.sres div:hover{background:#F2F4F7}.sres small{color:var(--fade);margin-left:6px}
.bellx{position:relative;width:40px;height:40px;border-radius:50%;background:#fff;border:0;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px rgba(16,24,40,.08);cursor:pointer;flex:none}
.bell.on{background:#E7EEFF}.bell b{position:absolute;top:-3px;right:-3px;background:#F02849;color:#fff;font-size:11px;border-radius:10px;padding:1px 6px;border:2px solid #F0F2F5}
.nd{position:fixed;right:12px;top:60px;width:360px;max-width:calc(100vw - 20px);max-height:75vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 16px 40px rgba(16,24,40,.22);border:1px solid var(--line);z-index:46;padding:10px 6px}
.nd h4{margin:4px 12px 8px;font-size:18px;display:flex;justify-content:space-between;align-items:center}.nd h4 a{font-size:12.5px;color:var(--acc);font-weight:600;cursor:pointer}
.nt{display:flex;gap:10px;padding:9px 12px;border-radius:10px;align-items:flex-start;cursor:pointer}.nt:hover{background:#F9FAFB}.nt.new{background:#F2F6FF}
.ic{width:38px;height:38px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:11.5px}
.nt p{margin:0;font-size:13px}.nt small{color:var(--acc);font-size:11.5px;font-weight:600}.nt.old small{color:var(--fade);font-weight:500}.nt .dot{width:9px;height:9px;border-radius:50%;background:var(--acc);margin-left:auto;margin-top:12px;flex:none}
.toast2{position:fixed;left:260px;bottom:22px;background:#fff;border-radius:14px;box-shadow:0 16px 40px rgba(16,24,40,.25);padding:12px 14px;width:370px;max-width:calc(100vw - 24px);display:flex;gap:10px;border-left:4px solid #DD2590;z-index:55;align-items:center}
.toast2 p{margin:0;font-size:13px}.toast2 small{color:var(--fade);font-size:11.5px}.toast2 .x{margin-left:auto;color:var(--fade);cursor:pointer;border:0;background:none;font-size:15px}
/* right column */
.hello{background:linear-gradient(135deg,#101828,#1F2A44);color:#fff;border-radius:14px;padding:15px;margin-bottom:12px;position:relative}
.hello h2{margin:0;font-size:21px;letter-spacing:-.3px}.hello .dt{color:#98A2B3;font-size:12.5px;margin-top:3px}
.wx{position:absolute;right:15px;top:13px;text-align:right}.wx b{font-size:25px;font-weight:700;display:block;line-height:1}.wx span{font-size:11.5px;color:#98A2B3}
.cnt{display:flex;gap:7px;margin-top:13px}.cnt div{flex:1;background:rgba(255,255,255,.07);border-radius:10px;padding:7px 9px;font-size:11.5px;color:#98A2B3}.cnt b{display:block;color:#fff;font-size:17px}
.calh{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.calh b{font-size:14.5px}.calh button{border:0;background:#F2F4F7;border-radius:7px;width:26px;height:26px;cursor:pointer;margin-left:3px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center;font-size:13.5px;margin-top:8px}.cal .h{color:var(--fade);font-size:11.5px;padding:2px 0 4px;font-weight:700}
.cal .d{aspect-ratio:1/1;height:auto;display:flex;align-items:center;justify-content:center;border-radius:10px;position:relative;cursor:pointer;background:#F7F8FA;font-weight:600;font-variant-numeric:tabular-nums}.cal .d:hover{background:#EAECF0}
.cal .d.we{color:#98A2B3}.cal .d.x{background:none}
.cal .d i{width:5px;height:5px;border-radius:50%;position:absolute;bottom:6px}.cal .today{background:#101828;color:#fff;font-weight:700}.cal .today:hover{background:#101828}.cal .today.we{color:#fff}
.cal .sel{outline:2px solid var(--acc);outline-offset:-2px;color:var(--acc);font-weight:700}.cal .x{cursor:default}.cal .x:hover{background:none}
.pop{border-radius:12px;border:1px solid var(--line);padding:10px;margin-top:8px;background:#FCFCFD}
.pop .in{padding:8px 10px;font-size:14px}.prow{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap;align-items:center}
.chip{white-space:nowrap;border-radius:14px;padding:5px 10px;font-size:12px;border:1px solid var(--line);color:#475467;background:#fff;cursor:pointer}.chip.on{background:#101828;color:#fff;border-color:#101828}
.tm{border:1px solid var(--line);border-radius:14px;padding:4px 8px;font-size:12px;width:94px}
.btnb{background:var(--acc);color:#fff;border:0;border-radius:9px;padding:7px 14px;font-weight:600;font-size:12.5px;margin-left:auto;cursor:pointer}
.evl{display:flex;gap:9px;align-items:center;padding:6px 0;border-top:1px solid #F2F4F7;font-size:13px}.evl small{display:block;color:var(--fade);font-size:11.5px}.evl .del{margin-left:auto;border:0;background:none;color:var(--fade);cursor:pointer}
.up{display:flex;gap:10px;align-items:center;padding:7px 0;border-top:1px solid #F2F4F7;cursor:pointer}.up .dd{width:40px;text-align:center;border-radius:10px;padding:4px 0;font-size:10.5px;color:#fff;line-height:1.1;flex:none}.up .dd b{display:block;font-size:15px}
.up span{font-size:13px}.up small{display:block;color:var(--fade);font-size:11.5px}
.todo{display:flex;gap:9px;align-items:center;padding:6px 0;font-size:13px;border-top:1px solid #F2F4F7}.todo input[type=checkbox]{width:16px;height:16px;accent-color:var(--acc);flex:none;cursor:pointer}
.todo.done span{color:var(--fade);text-decoration:line-through}.todo .del{margin-left:auto;border:0;background:none;color:#D0D5DD;cursor:pointer}.todo:hover .del{color:var(--fade)}
.addl{border:0;border-top:1px solid #F2F4F7;width:100%;padding:8px 0 2px;outline:none;font-size:13px;color:var(--acc);background:transparent}.addl:focus{color:var(--ink)}
.card h3 a{font-size:12px;color:var(--acc);font-weight:600;cursor:pointer;float:right}
.ref{display:grid;grid-template-columns:1fr auto;gap:1px 8px;padding:7px 0;border-top:1px solid #F2F4F7;cursor:pointer}.ref b{font-size:13px}.ref small{color:var(--fade);font-size:11.5px}
.ref code{font:12.5px ui-monospace,Menlo,monospace;color:var(--sub)}.ref a{grid-row:1/4;grid-column:2;align-self:center;font-size:12px;color:var(--acc);font-weight:600}
.staff{padding:8px 0;border-top:1px solid #F2F4F7;cursor:pointer}.staff b{font-size:13px}.staff .tag{font-size:10.5px;font-weight:700;border-radius:6px;padding:2px 6px;margin-left:6px}
.tag.ok{background:#ECFDF3;color:var(--ok)}.tag.wait{background:#FFFAEB;color:var(--amb)}.staff small{display:block;color:var(--mut);font-size:12px;margin-top:2px}
.ct{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid #F2F4F7}.ct .ini{width:32px;height:32px;border-radius:50%;background:#F2F4F7;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#475467;flex:none}
.ct span{flex:1;font-size:13px;cursor:pointer;min-width:0}.ct small{display:block;color:var(--fade);font-size:11.5px}.ct a{font-size:11.5px;font-weight:600;color:var(--acc);border:1px solid #E0EAFF;border-radius:12px;padding:3px 9px;text-decoration:none;white-space:nowrap}
.qadd{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0 6px}.qadd input,.qadd select{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12.5px;min-width:0;background:#fff;outline:none}
.qadd select{grid-column:1}.qadd button{background:var(--acc);color:#fff;border:0;border-radius:8px;font-weight:600;font-size:12.5px;cursor:pointer}
.qadd input:focus{border-color:var(--acc)}
/* right rail: fixed like the left menu (Facebook), scrolls on its own */
.rail{display:none}
@media (min-width:1200px){
  .rail{display:block;position:fixed;top:62px;right:0;bottom:0;width:378px;overflow-y:auto;overscroll-behavior:contain;padding:14px 16px 24px 4px;z-index:20;scrollbar-width:thin;zoom:.9}
  .mainw.rl{margin-right:340px}
  .mainw.rl .cols{grid-template-columns:minmax(0,1.55fr) minmax(290px,1fr)}
}
.cols3{display:grid;grid-template-columns:minmax(0,1fr) 320px 340px;gap:12px;align-items:start}
.stick{position:sticky;top:128px;max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:thin;padding-bottom:4px}
/* right column charts */
.rc .lg2{display:flex;gap:11px;flex-wrap:wrap;color:var(--mut);font-size:11.5px;margin:2px 0 6px}.rc .lg2 i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:0}
.rc svg{display:block;width:100%;height:auto}.rc svg [data-m]{cursor:pointer}
.rc .ttl{display:flex;justify-content:space-between;align-items:baseline}.rc .ttl span{font-size:12px;color:var(--mut)}
.dn{display:flex;gap:12px;align-items:center;margin-top:6px}.dn svg{width:108px;height:108px;flex:none}
.dn .lg3{flex:1;min-width:0}.dn .lg3 div{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;padding:3px 0}.dn .lg3 div span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dn .lg3 i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.dn .lg3 b{font-variant-numeric:tabular-nums}
/* phone */
@media (max-width:899px){
  .hb{padding:0 8px;gap:8px;height:52px;padding-top:env(safe-area-inset-top);box-sizing:content-box}
  .mbtn{display:flex}.logo{font-size:17px}.hb .search{display:none}
  .hk{position:fixed;left:0;right:0;top:calc(52px + env(safe-area-inset-top));background:#fff;padding:6px 8px;justify-content:flex-start;overflow-x:auto;box-shadow:0 1px 2px rgba(0,0,0,.08);scrollbar-width:none}
  .circ,.avt{width:36px;height:36px}
  .side{transform:translateX(-100%);transition:transform .2s;width:270px;top:calc(52px + env(safe-area-inset-top));box-shadow:none;z-index:38}
  .side.open{transform:none;box-shadow:0 0 40px rgba(0,0,0,.3)}
  .mainw{margin-left:0;padding-top:calc(106px + env(safe-area-inset-top))}
  main{padding:10px 10px 30px}.stick{position:static;max-height:none;overflow:visible}
  .yw{max-height:none}.nd,.pmenu{top:58px}
  .in{font-size:16px}
  .hrow h1{font-size:16px}.ms{margin-left:0;width:100%}
  .tiles{grid-template-columns:1fr 1fr}.tiles .t.hero{grid-column:1/3}.t .v{font-size:18px}
  .cols{grid-template-columns:1fr}
  td.last{display:none}table.ex th.lm{display:none}
  .hrow{margin-bottom:8px}
  .hrow:has(.ms){top:calc(108px + env(safe-area-inset-top));margin:-8px -10px 8px;padding:6px 10px 6px}.hrow:has(.ms) h1{display:none}
  .stick{top:auto}
  .amt{width:74px;font-size:13px;padding:3px 6px}.pb,.bk,.pdc{width:70px;font-size:10.5px;padding:1px 4px}
  td.idc,th.idc{display:none}.idl{display:block;font-size:10.5px;color:var(--fade);font-family:ui-monospace,Menlo,monospace;line-height:1.1;margin-top:1px}
  a.pl{margin-left:5px;padding:0 8px;font-size:14px;line-height:1.3}.pw{display:none}table.ex td.c{width:30px}em.cy{display:none}
  .bl{grid-template-columns:1fr 1fr;gap:6px 8px;padding:8px 6px}.bl.h{display:none}.bl .bn{grid-column:1/3;font-size:14px}
  .bl>[data-l]::before{content:attr(data-l);display:block;font-size:10px;color:var(--fade);text-transform:uppercase;letter-spacing:.3px;margin-bottom:1px}
  .bl .seg{grid-column:1/3}
  table.ex td{padding:2px 3px}td.nm{padding-left:7px;font-size:12.5px;line-height:1.2}
  tr.g td.m{font-size:0}tr.g td{font-size:12.5px}
  table.ex td:last-child{text-align:right}table.ex td.add{text-align:left}
  .scrim{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:35}
  .hrow .search2{display:block}
  .toast2{left:12px;bottom:12px}.cols3{grid-template-columns:1fr}.nd{top:56px;right:10px}
}

/* ===== 2.33 simple blue ===== */
:root{--acc:#2563EB;--ink:#0F172A;--sub:#334155;--mut:#64748B;--fade:#94A3B8;--line:#E8EDF5;--bg:#F6F8FC;--al:#1E40AF;--sh:#6D28D9;--ok:#1D4ED8;--soft:#EFF4FF}
body{background:#F6F8FC;color:var(--ink);font-family:Inter,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.hb{background:#fff;box-shadow:none;border-bottom:1px solid var(--line)}
.hl{display:flex;align-items:center;gap:12px;min-width:0}.hr{display:flex;align-items:center;gap:10px;justify-content:flex-end}
.lg{width:32px;height:32px;border-radius:9px;background:var(--acc);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.mbtn{display:flex;background:#F1F5F9}.circ{background:#F1F5F9}.circ b.bdg{background:var(--acc)}
.hi{flex:none;min-width:0;line-height:1.15}.hi h1{margin:0;font-size:16px;font-weight:700;letter-spacing:-.2px;white-space:nowrap;color:var(--ink)}
.hi h1 em{font-style:normal;color:var(--acc)}.hi small{display:block;font-size:11.5px;color:var(--mut);white-space:nowrap;margin-top:1px}
.tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;max-width:100%}
.tabs div{padding:8px 13px;border-radius:8px;font-weight:600;color:var(--mut);cursor:pointer;white-space:nowrap;font-size:13.5px}.tabs div:hover{background:#F1F5F9}.tabs div.on{background:var(--soft);color:var(--acc)}
.side{background:#fff;border-right:1px solid var(--line);transform:translateX(-100%);transition:transform .2s;z-index:38;font-size:14px;width:272px}.side.open{transform:none;box-shadow:0 0 40px rgba(15,23,42,.25)}
.mi{color:var(--sub);border-radius:9px}.mi:hover{background:#F1F5F9}.mi.on{background:var(--soft);color:var(--acc)}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:none}
.hk{display:flex;align-items:flex-end;justify-content:flex-start;padding:8px 26px 0;position:static;overflow:visible;flex:none}
.hk .tiles{display:flex;gap:34px;margin:0;align-items:flex-end}
.hk .t{background:none!important;border:0!important;box-shadow:none;padding:0;min-width:0;cursor:default}
.hk .t .l{color:var(--mut);font-size:11px;letter-spacing:.3px;text-transform:uppercase;font-weight:600;margin:0}
.hk .t .v{font-size:17px;color:var(--ink)!important;font-weight:700;line-height:1.25;font-variant-numeric:tabular-nums}.hk .t.hero .v{font-size:26px;letter-spacing:-.6px}
.hk .t.g .v i{color:var(--acc)}.hk .t.o .v i{color:#B45309}.hk .t.sh .v i{color:var(--sh)}.hk .t.al .v i{color:var(--al)}
.ms{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none}
.ms button.on{background:var(--acc);color:#CFE0FF;box-shadow:none}.ms button.on b{color:#fff}
.hrow:has(.ms){background:#F6F8FC}
.card h3{font-weight:700}
/* the list */
table.ex th{color:var(--fade);letter-spacing:.5px;white-space:nowrap}table.ex th:first-child{white-space:nowrap}.cal .d .dts{bottom:2px}.cal .d .dts i,.cal .d i{width:4px;height:4px}.cal .d .dts i.bd{width:5px;height:5px}
a.pl{background:#fff;color:var(--acc);border:1px solid #D6E2FA}a.pl:hover{background:var(--soft)}
a.ca{font-size:11px;font-weight:600;color:var(--acc);cursor:pointer;margin-left:12px;text-transform:none;letter-spacing:0;white-space:nowrap}
tr.g td{background:var(--soft);height:30px;padding:2px 8px;cursor:pointer;font-weight:700;font-size:14.5px;border-bottom:0}
tr.g td:first-child{border-radius:9px 0 0 9px;border-left:4px solid var(--c)}tr.g td:last-child{border-radius:0 9px 9px 0}
tr.g .chev{display:inline-flex;width:16px;height:16px;border-radius:5px;color:var(--acc);font-size:8px;align-items:center;justify-content:center;margin-right:7px;transform:rotate(90deg);transition:transform .15s;vertical-align:middle}
tr.g.shut .chev{transform:none}
.gbar{height:5px;border-radius:3px;background:#DCE7FB;overflow:hidden;min-width:60px}.gbar i{display:block;height:100%;background:var(--acc);border-radius:3px}
table.ex td{border-bottom:1px solid #F1F4F9;height:22px;padding:0 8px}
.amt{background:#fff;border:1px solid #D6E2FA;border-radius:8px;height:20px;font-size:12.5px;padding:0 8px}.amt:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.pb{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='5'><path d='M0 0l4 5 4-5z' fill='%2364748B'/></svg>") right 7px center/8px 5px no-repeat;border:1px dashed #C7D5F2;color:var(--mut);border-radius:8px;height:20px;padding:0 20px 0 8px;font-size:11.5px}
.pb.al{background-color:var(--soft);color:var(--al);border:0;font-weight:600}.pb.sh{background-color:#F1ECFF;color:var(--sh);border:0;font-weight:600}.pb.ot{background-color:#F1F5F9;border:0}
.bk{background:var(--soft);color:var(--al)}
td.nm.pd{color:var(--acc)}
button.stb{margin:0;vertical-align:middle;height:22px;min-width:74px;border-radius:7px;font-size:11px;font-weight:700;padding:0 10px;cursor:pointer;font-family:inherit}
button.stb.un{background:#fff;color:var(--acc);border:1.5px solid #C7D7F8}button.stb.un:hover{background:var(--soft);border-color:var(--acc)}
button.stb.pa{background:var(--acc);color:#fff;border:0}button.stb.pa:hover{filter:brightness(1.1)}
button.stb.bk{background:var(--soft);color:var(--al);border:0;font-weight:600;cursor:default}
table.ex th.c,table.ex td.c{width:92px}
tr.tot td{background:var(--ink);color:#fff;border:0;height:34px}tr.tot td:first-child{border-radius:9px 0 0 9px}tr.tot td:last-child{border-radius:0 9px 9px 0}tr.tot td.tt2{color:#A5B4D4}
tr.ar td.add{background:var(--soft)}
.idn::placeholder{color:transparent}tr:hover .idn::placeholder{color:#9DB0D6}
.cal .d.t{background:var(--acc);color:#fff}#calc{background:#fff}
/* three columns on wide screens: calendar left (frozen), graphs right */
.lrail,.rail{display:none}.bnav{display:none}
@media (min-width:900px){
  .hb{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;height:64px;padding:0 24px}
  .tabs{max-width:calc(100vw - 560px)}
  .side{top:64px}
  .mainw{margin-left:0;padding-top:64px}
  main{zoom:1}.side{font-size:14px}
  .hrow:has(.ms){top:64px}
}
@media (min-width:1400px){
  .mainw.rl{margin-left:296px;margin-right:320px}
  .lrail{display:flex;flex-direction:column;position:fixed;top:64px;left:0;bottom:0;width:296px;padding:14px 12px 14px 20px;z-index:20}
  .rail{display:flex;flex-direction:column;position:fixed;top:64px;right:0;bottom:0;width:320px;padding:14px 20px 14px 12px;z-index:20;overflow:hidden;zoom:1}
  .lrail>#calc{flex:none}
  .rsc{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 4px 30px 0;margin-right:-4px}
  .mainw.rl main .cols{grid-template-columns:1fr}.mainw.rl main .cols .stick{position:static;max-height:none;overflow:visible}
}
@media (max-width:899px){
  .hb{display:flex;padding:0 10px;gap:10px}.hl{flex:1}.lg,.tabs{display:none}.hi h1{font-size:14px}.hi small{font-size:10px}
  .hk{position:fixed;background:#fff;border-bottom:1px solid var(--line);padding:6px 10px;align-items:center;overflow-x:auto}
  .hk .tiles{gap:20px}.hk .t.hero .v{font-size:18px}.hk .t .v{font-size:14.5px}
  table.ex th.pc,table.ex td.pc{display:none}table.ex th.c,table.ex td.c{width:70px}button.stb{min-width:62px;height:24px;font-size:10.5px;padding:0 6px}
  a.ca{display:none}.gbar{display:none}tr.g td{height:32px}tr.g td:first-child{white-space:nowrap}.amt{width:70px;height:24px}table.ex td{height:36px}
  .bnav{display:flex;position:fixed;left:0;right:0;bottom:0;height:calc(62px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--line);z-index:45;justify-content:space-around;align-items:center}
  .bnav div{display:flex;flex-direction:column;align-items:center;font-size:10px;color:var(--mut);gap:2px;font-weight:600;cursor:pointer;flex:1}.bnav div.on{color:var(--acc)}.bnav svg{width:20px;height:20px}
  main{padding-bottom:90px}
}

/* 2.33.1: focused, compact Home Expenses sheet. */
.password-wrap{position:relative}.password-wrap .in{padding-right:62px}.password-wrap button{position:absolute;right:8px;top:8px;border:0;background:none;color:var(--acc);padding:5px;cursor:pointer}.login-card label{display:block;text-align:left;font-size:12px;margin:9px 0 3px;color:var(--mut)}
.expense-view #hk{display:none!important}.expense-view .mainw{padding-top:64px}.expense-view main{padding:10px 14px 16px}.expense-view .hrow:has(.ms){position:static;margin:0 0 8px;padding:0;background:none}.expense-view .hrow:has(.ms):after{display:none}.expense-view .ms{padding:4px 6px;border-radius:10px;box-shadow:none}.expense-view .ms button{padding:3px 4px;min-height:34px}.expense-view .ms button b{font-size:12px}.expense-view .ms button span{font-size:10px}
.expense-grid-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.expense-grid-region{min-width:0;background:#fff;border:1px solid #dce3ed;border-radius:8px;overflow:auto;max-height:calc(100dvh - 136px);scrollbar-width:thin}.compact-ex{table-layout:fixed!important;min-width:620px;font-size:11.5px}.compact-ex th,.compact-ex td{border-right:1px solid #dce3ed!important;border-bottom:1px solid #e7ecf3!important}.compact-ex th:last-child,.compact-ex td:last-child{border-right:0!important}.compact-ex th{position:relative;white-space:normal!important;padding:5px 6px!important;line-height:1.2;font-size:10px!important}.compact-ex tr:first-child th{position:sticky;top:0;background:#f8faff;z-index:4}.compact-ex td{height:20px!important;padding:0 5px!important;line-height:1.2;font-size:11.5px!important}.compact-ex tr.g td{height:22px!important}.compact-ex tr.tot td{position:sticky;bottom:0;z-index:3;background:#101828;color:#fff;height:26px!important}.compact-ex td.idc,.compact-ex th.idc{width:auto!important;white-space:normal!important}.compact-ex .idn{display:inline-block;vertical-align:middle;width:calc(100% - 18px);min-height:20px;max-height:60px;height:auto;padding:2px 3px;resize:none;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:10.5px;line-height:1.25;border-radius:3px}.compact-ex .amt{width:100%;max-width:100%;height:19px;padding:0 4px;border-radius:4px;font-size:11.5px}.compact-ex .pb,.compact-ex .bk{width:100%;max-width:100%;height:19px;font-size:10px;padding:0 4px;line-height:18px}.compact-ex button.stb{width:100%;min-width:0;height:19px;padding:0 3px;border-radius:4px;font-size:10px}.compact-ex td.nm .idl{display:none}.compact-ex .gbar{display:none!important}.compact-ex .pl,.compact-ex .ca{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:20px;height:18px;margin-left:4px;padding:0;border-radius:4px;cursor:pointer}.compact-ex .chev{font-size:10px}.col-grip{position:absolute;right:-4px;top:0;bottom:0;width:9px;cursor:col-resize;touch-action:none;z-index:6}.col-grip:hover,.col-grip:focus{background:#2e6bff33;outline:0}.expense-charts .card{margin-bottom:10px}.category-chart{font-size:11px}.category-chart .sb{font-size:10px}
@media(min-width:900px){.side,.scrim{display:none!important}.mbtn{display:none!important}.tabs{max-width:calc(100vw - 390px);overflow:auto}.hb{grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;padding:0 14px}}
@media(min-width:1400px){.expense-view .mainw.rl{margin-right:300px!important}.expense-view .rail{width:300px;padding:10px 12px 10px 0}.expense-view .rail .rsc{padding-bottom:8px}.expense-view .rail .card{padding:10px;margin-bottom:10px}}
@media(min-width:1100px) and (max-width:1399px){.expense-grid-layout{grid-template-columns:minmax(0,1fr) 270px}.expense-grid-region{max-height:calc(100dvh - 136px)}}
@media(max-width:899px){.expense-view .mainw{padding-top:calc(56px + env(safe-area-inset-top))}.expense-view main{padding:8px 6px 80px}.expense-grid-region{max-height:none}.expense-view .ms{overflow-x:auto;display:flex}.expense-view .ms button{min-width:42px}.compact-ex{min-width:620px}.expense-charts{margin-top:12px}.compact-ex th.pc,.compact-ex td.pc{display:table-cell!important}.compact-ex .ca{display:inline-flex!important}}


.home-view-tabs{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 7px;padding:0;flex-wrap:wrap}.home-view-tabs>div{display:flex;gap:3px;padding:2px;background:#eaf0fb;border-radius:7px}.home-view-tabs button{font:inherit;font-size:11px;padding:4px 10px;border:0;background:none;border-radius:5px;color:var(--mut);cursor:pointer;white-space:nowrap}.home-view-tabs button.on{background:#fff;color:var(--acc);font-weight:700;box-shadow:0 1px 3px #10182812}.expense-view .expense-grid-region{max-height:calc(100dvh - 174px)}


.doc-person-tabs{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin:8px 0}.doc-person-tabs button{border:1px solid #dce3ed;background:#fff;border-radius:7px;padding:7px 14px;cursor:pointer;color:var(--mut)}.doc-person-tabs button.on{background:var(--acc);color:#fff;border-color:var(--acc)}.doc-category{margin:18px 0}.doc-category>h3{font-size:13px;margin:0 0 8px;color:var(--sub)}.doc-category .dc{position:relative;padding-top:32px}.doc-tools{position:absolute;right:7px;top:5px;display:flex;gap:4px}.doc-mini{width:23px;height:23px;border:1px solid #e4e7ec;background:#fff;border-radius:5px;color:var(--mut);cursor:pointer;font-size:16px}.doc-mini.danger{color:var(--red)}.doc-no-expiry{display:flex;align-items:center;gap:7px;margin:12px 0}.documents-view #hk{display:none!important}
@media(min-width:900px){.hb{display:grid;grid-template-columns:1fr auto 1fr}.hb .tabs{position:absolute;left:50%;transform:translateX(-50%);max-width:calc(100vw - 500px)}.hb .hr{grid-column:3;justify-self:end}}
@media(min-width:1400px){.expense-view .mainw.rl,.documents-view .mainw.rl{margin-left:296px!important}.lrail,.expense-view .lrail{display:flex!important}}


/* Yearly and Bill IDs use the same density as the monthly sheet. */
body:not(.documents-view) table.yr{border-collapse:collapse;font-size:11.5px;letter-spacing:normal;line-height:1.2}table.yr th{font-size:10px;letter-spacing:normal;padding:5px 5px;line-height:1.2;border-right:1px solid #dce3ed}table.yr td{font-size:11.5px;letter-spacing:normal;height:20px;padding:0 5px;line-height:1.2;border-right:1px solid #dce3ed;border-bottom:1px solid #e7ecf3}table.yr .yc{font-size:11.5px;height:19px;line-height:1.2;padding:0 3px}table.yr tr.g td{height:22px;font-size:11.5px;padding:0 5px}.bl{font-size:11.5px;letter-spacing:normal;line-height:1.2;min-height:22px;padding-top:1px;padding-bottom:1px;gap:6px}.bl.h{font-size:10px;letter-spacing:normal}.bl .in,.bl input,.bl select{font-size:11.5px;line-height:1.2;min-height:20px;height:21px;padding:1px 4px;border-radius:4px}.bl .seg button{font-size:10px;padding:2px 4px}.blg{font-size:11.5px;line-height:1.2;padding:4px 6px}.bl .bn{font-size:11.5px}

.doc-category .dc small{display:block;margin-top:3px;line-height:1.35}.doc-category .dc b{display:block;line-height:1.35}

/* 2.33.3: one stable shell, no duplicate summaries. */
#hk,.hk{display:none!important}.bnote{display:none!important}.mainw main{min-width:0}.contact-cross,.expense-cross{border:0;background:none;color:var(--red);font:16px/1 inherit;cursor:pointer;padding:0 3px;border-radius:3px}.contact-cross{position:absolute;top:8px;right:8px}.cc{position:relative}.expense-cross{float:right;font-size:14px;line-height:16px}.expense-label{overflow-wrap:anywhere}.compact-ex .cycle-cell{font-size:10px!important;white-space:normal;overflow-wrap:anywhere}.compact-ex{min-width:800px!important}.compact-ex th{white-space:normal!important;overflow-wrap:anywhere}.compact-ex .month-note{width:100%;min-height:20px;max-height:80px;height:20px;resize:vertical;border:1px solid transparent;background:transparent;padding:2px;font:11px/1.25 inherit;white-space:pre-wrap;overflow-wrap:anywhere}.month-note:focus{background:#fff;border-color:var(--acc);outline:0}.month-note.saving{border-color:#f59e0b}.month-note.save-error{border-color:var(--red)}.bill-ref{resize:vertical;min-height:24px!important;height:auto;white-space:pre-wrap;overflow-wrap:anywhere}.bl .bn,.bl.h span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}.bl .in{min-width:0;width:100%}.archive-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--line)}.archive-row span{flex:1}.toast-undo{border:0;background:none;color:#fff;text-decoration:underline;font-weight:700;margin-left:14px;cursor:pointer}
@media(min-width:1400px){.mainw.rl,.expense-view .mainw.rl,.documents-view .mainw.rl{margin-left:296px!important;margin-right:320px!important}.rail,.expense-view .rail,.documents-view .rail{position:fixed!important;top:64px!important;right:0!important;bottom:0!important;width:320px!important;padding:14px 20px 14px 12px!important;display:flex!important;overflow:hidden!important}.rail .rsc{display:grid;grid-template-rows:210px 180px minmax(240px,1fr);gap:10px;align-content:start;overflow-y:auto;scrollbar-width:thin}.rail #rch{display:contents}.rail .card{margin:0!important;padding:12px!important;min-height:0;overflow:auto}.lrail{position:fixed!important;top:64px!important;bottom:0!important;width:296px!important}.rail .category-chart .cbr{grid-template-columns:minmax(0,1fr) 65px 30px}}


.month-note{font-family:inherit!important;font-size:11px!important;line-height:1.25!important}.contact-cross,.expense-cross{font-family:inherit;font-size:16px;line-height:1}.bl{grid-template-columns:minmax(110px,1.3fr) minmax(150px,1.6fr) minmax(125px,1.4fr) minmax(100px,1fr) minmax(65px,.7fr) minmax(45px,.5fr) minmax(65px,.7fr)}.bl .seg{display:flex;flex-wrap:wrap;min-width:0}.bl .seg button{white-space:normal;line-height:1.15;flex:1 1 auto}.bl.h span{line-height:1.3}@media(max-width:899px){.bl{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}


/* Expense navigation has the same bounds in Monthly, Yearly and Bill IDs. */
.expense-view main{padding:10px 14px 16px!important}.home-view-tabs{display:grid!important;grid-template-columns:minmax(220px,1fr) auto 124px;align-items:center;gap:8px;min-height:32px;height:32px;margin:0 0 8px!important;position:sticky;top:64px;z-index:26;background:#f6f8fc;flex-wrap:nowrap}.home-view-tabs .home-modes{justify-self:start;height:28px;align-items:center}.home-view-tabs .home-people{height:28px;align-items:center}.home-view-tabs>.expense-lock-control{width:124px;height:28px;padding:4px 8px;border:1px solid #cdd8ee;background:#fff;border-radius:6px;font-size:11px;white-space:nowrap;color:var(--acc);text-align:center;cursor:pointer}.home-view-tabs>.expense-lock-control.locked{background:#edf3ff}.home-view-tabs>.expense-lock-control.readonly{cursor:default;display:flex;align-items:center;justify-content:center}.expense-ui-locked main a.pl{visibility:hidden;pointer-events:none}.expense-ui-locked main input[readonly],.expense-ui-locked main textarea[readonly]{background:#f8fafc;color:var(--sub)}.expense-ui-locked main button:disabled,.expense-ui-locked main select:disabled{opacity:.75;cursor:default}
@media(max-width:899px){.home-view-tabs{position:static;grid-template-columns:minmax(180px,1fr) 124px;height:auto;min-height:32px}.home-view-tabs .home-people{grid-row:2;grid-column:1/3;justify-self:end}.home-view-tabs>.expense-lock-control{grid-column:2;grid-row:1}}


.pending-line{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:5px 0;border-bottom:1px solid #eef1f6;font-size:11.5px;line-height:1.3}.pending-line span{overflow-wrap:anywhere;min-width:0}.pending-line b{white-space:nowrap}.pending-line:last-child{border-bottom:0}.pending-expenses .ttl span{font-weight:650;font-size:11px}
@media(min-width:1400px){.mainw.rl,.expense-view .mainw.rl,.documents-view .mainw.rl{margin-right:360px!important}.rail,.expense-view .rail,.documents-view .rail{width:360px!important}.rail .rsc{grid-template-rows:250px 200px 270px 160px}.rail .pending-expenses{min-height:130px}.rail .category-chart{min-height:270px}}


/* Navy planner, simple dates and a neon-yellow today marker. */
#calc,#comingCard,#todoc{color:#10264d}#calc h3,#comingCard h3,#todoc h3{color:#10264d;font-size:14px;font-weight:750}.planner-calendar .calh{gap:4px;min-height:26px}.planner-calendar .calh>b{font-size:12px;color:#10264d;white-space:nowrap}.cal-actions,.planner-history{display:inline-flex;gap:2px;align-items:center}.planner-calendar .calh button,.planner-history button{display:inline-flex;align-items:center;justify-content:center;width:21px;height:22px;min-width:21px;border:0;border-radius:4px;background:transparent;color:#10264d;padding:0;cursor:pointer}.planner-history{margin-left:3px;border-left:1px solid #dce3ed;padding-left:4px}.planner-history button:disabled{opacity:.25;cursor:default}.planner-calendar .cal .d{border:0;box-shadow:none!important;border-radius:5px;font:inherit;font-size:11px;color:#10264d!important;background:transparent!important;cursor:pointer}.planner-calendar .cal .d.today{background:#edff00!important;color:#050505!important;font-weight:800;outline:0!important}.planner-calendar .cal .d.sel:not(.today){outline:1px solid #c4cfdf;outline-offset:-1px;background:transparent!important}.planner-calendar .cal .h{color:#10264d;font-size:10px}.planner-calendar .dts,.planner-calendar .bdl{display:none!important}.planner-composer{border-top:1px solid #e1e6ef;margin-top:9px;padding-top:9px}.planner-date{font-size:10.5px;color:#10264d;font-weight:650;margin-bottom:6px}.planner-kinds{display:flex;gap:3px;margin-bottom:6px}.planner-kinds button{flex:1;border:1px solid #dce3ed;background:#fff;border-radius:5px;color:#10264d;font-size:10px;padding:5px 3px;cursor:pointer}.planner-kinds button.on{background:#10264d;border-color:#10264d;color:#fff}.planner-composer .in{height:32px;min-width:0;padding:6px 8px;border-radius:6px;font-size:12px;color:#10264d}.planner-composer .in::placeholder{font-size:11px;color:#66758c}.planner-submit{display:flex;align-items:flex-end;gap:8px;margin-top:6px}.planner-submit label{flex:1;min-width:0;color:#10264d;font-size:10px;font-weight:600}.planner-submit small{font-weight:400}.planner-submit input{width:100%;height:28px;border:1px solid #dce3ed;background:#fff;border-radius:5px;color:#10264d;font-size:11px;padding:2px 5px}.planner-submit>button{height:28px;min-width:58px;border:0;border-radius:5px;color:#fff;background:#10264d;font-size:11px;font-weight:700;cursor:pointer}.planner-heading{display:flex;align-items:center;justify-content:space-between;gap:5px}.planner-heading h3{margin:0}.planner-small{display:inline-flex;align-items:center;justify-content:center;width:21px;height:22px;padding:0;border:0;background:transparent;color:#10264d;border-radius:4px;font-size:17px;cursor:pointer}.planner-event{display:flex;gap:7px;align-items:flex-start;padding:7px 0;border-bottom:1px solid #edf0f5}.planner-event:last-child{border-bottom:0}.planner-event-date{width:29px;flex:none;text-align:center;border:1px solid #dce3ed;border-radius:5px;color:#10264d;font-size:13px;font-weight:750;padding:3px 0;line-height:1.1}.planner-event-date small{display:block;font-size:9px;font-weight:600}.planner-event-text{flex:1;min-width:0}.planner-event-text b{font-size:12px;font-weight:650;line-height:1.2;overflow-wrap:anywhere}.planner-event-text small{display:block;color:#54657e;font-size:10px;line-height:1.25;margin-top:3px}.planner-remove{font-size:16px;color:#10264d}.planner-empty{font-size:11px;color:#54657e;margin:8px 0 0}.planner-todos h3{margin-bottom:6px}.todo-quick{display:flex;gap:4px;margin-bottom:5px}.todo-quick input{width:100%;min-width:0;height:28px;padding:4px 6px;border:1px solid #dce3ed;border-radius:5px;font:12px/1.2 inherit;color:#10264d}.todo-quick input::placeholder{color:#54657e}.todo-quick button{width:28px;height:28px;border:0;border-radius:5px;background:#10264d;color:#fff;font-size:19px;cursor:pointer}.todo-line{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:24px;padding:2px 0;border-bottom:1px solid #edf0f5}.todo-line:last-child{border-bottom:0}.todo-line label{display:flex;align-items:flex-start;gap:7px;flex:1;min-width:0;font-size:12px;line-height:1.2;color:#10264d}.todo-line input{width:14px;height:14px;margin:0;flex:none;accent-color:#10264d}.todo-line span{overflow-wrap:anywhere}.todo-line.done span{text-decoration:line-through;color:#6b778b}.todo-line>button{width:20px;height:20px;padding:0;border:0;background:transparent;color:#54657e;font-size:16px;cursor:pointer}.planner-composer button:disabled,.todo-quick button:disabled,.planner-small:disabled{opacity:.45;cursor:default}

/* Consistent expense headers and monochrome month navigation. */
.ex th,.compact-ex th,table.yr th,table.yr th.cur,table.yr th.fut{background:#3156dc!important;color:#fff!important}
.ex th a,.ex th button,.ex th .icon-control{color:#fff!important;background:transparent!important;border-color:#ffffff70!important}
.ex th svg{stroke:currentColor}.ex th .col-grip:hover{background:#ffffff55}
.ms button,.ms button b,.ms .msl{color:#111!important}.ms button.on{background:#111!important;color:#fff!important}.ms button.on b{color:#fff!important}.ms button.fu{opacity:1;color:#666!important}.ms button.fu b{color:#666!important}
.todo-quick input{font-family:inherit;font-size:12px;line-height:1.2}

/* Category emphasis only; stable pending summary above the graphs. */
.bl .bn,.compact-ex td.nm,.compact-ex .expense-label,table.yr tr:not(.g):not(.tot) td:first-child,table.yr tr:not(.g):not(.tot) td:first-child b{font-weight:400!important}
.blg,.compact-ex tr.g td,table.yr tr.g td{font-weight:700!important}
.pending-expenses{background:#edff00!important;color:#111!important;border-color:#d7e600!important}.pending-expenses .ttl,.pending-expenses h3,.pending-expenses .note,.pending-expenses .pending-line{color:#111!important}.pending-expenses .pending-line{border-color:#1112}
@media(min-width:1400px){.rail .rsc{grid-template-rows:160px 250px 200px 270px}}
/* Monthly rows share the Yearly typography, spacing and neutral labels. */
.compact-ex td.nm,.compact-ex td.nm.pd,.compact-ex td.nm.mu,.compact-ex .expense-label{color:#101828!important;font-weight:400!important}
.compact-ex td,table.yr td{height:20px!important;padding:0 5px!important;font-size:11.5px!important;line-height:1.2!important;letter-spacing:normal!important}
.compact-ex tr.g td,table.yr tr.g td{height:22px!important;padding:0 5px!important;background:#F6F7F9!important;font-weight:700!important;border-radius:0!important}
.compact-ex tr.g td:first-child,table.yr tr.g td:first-child{border-left:3px solid var(--c)!important;padding-left:8px!important}
.compact-ex td.nm,table.yr tr:not(.g):not(.tot) td:first-child{padding-left:10px!important}
.compact-ex tr.tot td{height:26px!important;background:#101828!important;color:#fff!important;font-weight:700!important}
#bell{color:#10264d!important}#bell svg{display:block;width:20px;height:20px;fill:currentColor}.avt .default-avatar{display:block;width:100%;height:100%;border-radius:50%}

.hex-login-brand{width:100%;height:140px;overflow:hidden;display:flex;align-items:center;justify-content:center}.hex-login-brand img{width:125%;max-width:none;height:auto;flex:none}.hex-family{text-align:center}
.hex-header-brand{display:flex!important;align-items:center;justify-content:center;width:100px;height:48px;overflow:hidden;flex:none;background:#fff;border-radius:4px}.hex-header-brand img{width:145px;height:auto;max-width:none;flex:none}
@media(max-width:899px){#login{padding:18px;min-height:100dvh}.login-card{max-width:360px;padding:22px;flex:none;min-width:0}.login-card .in{min-width:0;width:100%}.hex-header-brand{width:72px;height:42px}.hex-header-brand img{width:110px}.hb .hl{gap:6px;min-width:0}.hb .hi{flex:1;overflow:hidden}.hb .hi h1{font-size:12px;overflow:hidden;text-overflow:ellipsis}.hb .hi small{font-size:9px;overflow:hidden;text-overflow:ellipsis}.hb .hr{gap:5px}.hb .circ,.hb .avt{width:32px;height:32px;flex:none}.hb .mbtn{display:none!important}.hb{gap:6px;padding:0 8px}.bnav div{min-height:44px;justify-content:center}.password-wrap #showpass{min-height:32px}.login-card #lb{min-height:44px}}
/* Mobile-first HEx: five fixed destinations, aligned forms and readable tap targets. */
.a4-preview{width:100%;aspect-ratio:210/297;min-height:0!important;height:auto!important;max-height:none!important;background:#fff;border:1px solid #dce3ed;display:flex;align-items:center;justify-content:center;overflow:hidden}.a4-preview img{width:100%;height:100%;max-height:none;object-fit:contain}.a4-preview iframe{width:100%;height:100%;min-height:65vh;border:0}.a4-preview .note{padding:24px}.mobile-loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:60px 20px;color:#10264d}.mobile-loading span{color:#667085}
.hex-login-brand img{width:100%;max-width:300px}.hex-header-brand img{width:100%;height:auto;max-width:100px}
@media(max-width:899px){
html,body{overflow-x:hidden;background:#f6f8fc;font-size:14px;line-height:1.4}body{color:#10264d}#app .side,#app .scrim,.mbtn{display:none!important}#app .mainw{margin:0!important;padding-top:calc(62px + env(safe-area-inset-top))!important}#app main,.expense-view main{padding:16px 14px calc(92px + env(safe-area-inset-bottom))!important;min-width:0}
.hb{height:calc(62px + env(safe-area-inset-top))!important;padding:env(safe-area-inset-top) 14px 0!important;display:flex!important;gap:10px}.hb .hl{flex:1;min-width:0}.hb .hi{display:none}.hex-header-brand{display:flex!important;width:94px;height:46px;flex:none}.hex-header-brand img{width:90px;height:auto}.hb .hr{gap:10px}.hb .circ,.hb .avt{width:40px;height:40px}.bnav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(66px + env(safe-area-inset-bottom));padding:3px 6px env(safe-area-inset-bottom);gap:0;z-index:60;box-shadow:0 -2px 10px #10264d08}.bnav div{min-width:0;min-height:58px;font-size:10px;line-height:1.2;display:flex;align-items:center;justify-content:center;gap:5px;color:#526075}.bnav svg{width:22px;height:22px}.bnav div.on{color:#3156dc;background:#edf2ff;border-radius:12px}.bnav div:focus-visible{outline:2px solid #3156dc}.bnav div:active{background:#edf2ff}
.mobile-page-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 16px}.mobile-page-title h1{font-size:25px;line-height:1.2;letter-spacing:-.6px;margin:0;color:#10264d}.mobile-page-title .btn{padding:10px 12px;font-size:13px;background:#3156dc;min-height:44px}.mobile-month{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 6px;border:1px solid #e0e7f0;border-radius:12px;background:white;margin:12px 0 16px}.mobile-month b{font-size:14px}.mobile-month button{min-width:44px;min-height:40px;border:0;background:white;color:#10264d;font-size:25px;border-radius:8px}.mobile-month button:disabled{opacity:.3}
.home-view-tabs{position:static!important;display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;height:auto!important;gap:10px!important;margin:0 0 12px!important;background:none}.home-view-tabs .home-modes{width:100%;display:grid;grid-template-columns:repeat(3,1fr);height:auto;background:#e9eef7;padding:3px}.home-view-tabs .home-modes button{min-height:40px;font-size:13px;padding:6px 8px}.home-view-tabs .home-people{display:flex;height:36px}.home-view-tabs .home-people button{min-height:36px;min-width:50px;font-size:12px}.home-view-tabs>.expense-lock-control{font-size:10px;width:auto;min-height:36px;flex:none}.home-view-tabs>.expense-lock-control.readonly:empty{display:none}
.mobile-expense-group{margin:20px 0}.mobile-expense-group h2{font-size:17px;font-weight:750;margin:0 0 9px;color:#10264d}.mobile-bill{background:#fff;border:1px solid #e0e7f0;border-radius:13px;margin:8px 0;overflow:hidden}.mobile-bill-main{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px}.mobile-bill-main>div{flex:1;min-width:0}.mobile-bill-name{display:block;font-size:14px;font-weight:400;line-height:1.3;overflow-wrap:anywhere}.mobile-bill-main small{display:block;color:#67758a;font-size:11px;margin-top:5px}.mobile-bill-amount{display:flex;align-items:center;gap:3px;flex:none;color:#10264d;max-width:47%}.mobile-bill-amount span{font-size:10px;color:#67758a}.mobile-bill-amount .amt{min-width:0;width:100px;max-width:100%;height:40px;border:1px solid transparent;border-radius:8px;font-size:15px;font-weight:600;text-align:right;padding:4px;background:#fff;font-variant-numeric:tabular-nums}.mobile-bill-amount .amt:focus{border-color:#3156dc;outline:0}.mobile-bill-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px 10px}.mobile-bill-actions>span{font-size:11px;color:#67758a}.mobile-bill-actions .stb{height:36px;min-width:84px;padding:6px 12px;border-radius:10px;font-size:12px;border:1px solid #d8e0f0;background:#fff;color:#10264d}.mobile-bill-actions .stb.pa,.mobile-bill-actions .stb.bk{background:#e4f7eb;color:#067647;border-color:#b8e2c8}.mobile-bill-actions .stb.un{background:#fffde6;border-color:#edeb93;color:#554b06}
.mobile-bill details{border-top:1px solid #edf1f7}.mobile-bill summary{padding:10px 12px;color:#526075;font-size:12px;min-height:38px;cursor:pointer}.mobile-bill-details{padding:0 12px 12px;display:grid;gap:12px}.mobile-bill-details label,.mobile-form label,.mobile-bill-field{display:flex;flex-direction:column;gap:5px;color:#526075;font-size:12px;text-align:left;min-width:0}.mobile-bill-details textarea,.mobile-bill-details select{width:100%;height:44px;min-height:44px;min-width:0;padding:10px;border:1px solid #d8e0ee;border-radius:8px;font:16px/1.3 inherit;background:white;resize:vertical}.mobile-bill-details .month-note{height:66px}.mobile-archive,.mobile-planner-open{display:block;width:100%;margin:12px 0;min-height:44px}
.mobile-hero{padding:20px;border-radius:18px;background:#10264d;color:#fff;margin:16px 0}.mobile-hero>span{font-size:14px}.mobile-hero>strong{display:block;font-size:30px;letter-spacing:-.8px;line-height:1.2;margin:9px 0 18px;font-variant-numeric:tabular-nums}.mobile-hero>div{display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:1px solid #ffffff33;padding-top:14px}.mobile-hero>div span{font-size:12px;color:#cbd5e1}.mobile-hero b{display:block;color:white;font-size:15px;margin-top:3px}.pending-expenses{padding:16px;margin:14px 0;border-radius:16px}.pending-expenses h3{font-size:16px}.pending-line{font-size:13px;padding:9px 0}.pending-line b{font-variant-numeric:tabular-nums}.mobile-year-label{padding:10px 0;font-size:14px;font-weight:700}.mobile-year-item{border:1px solid #e0e7f0;background:#fff;border-radius:12px;margin:8px 0;padding:12px}.mobile-year-item summary{display:flex;justify-content:space-between;gap:12px;font-size:13px;min-height:32px;align-items:center}.mobile-year-item summary span{font-weight:400;min-width:0}.mobile-year-item summary b{white-space:nowrap;font-size:12px}.mobile-year-month{display:flex;justify-content:space-between;width:100%;padding:12px 6px;border:0;border-top:1px solid #edf1f7;background:white;color:#10264d;font-size:13px;font-variant-numeric:tabular-nums}
.ov{padding:0;align-items:flex-end!important;z-index:90}.sheet{width:100%!important;max-width:600px!important;max-height:90dvh!important;border-radius:22px 22px 0 0!important;padding:22px 18px calc(22px + env(safe-area-inset-bottom))!important;overflow-y:auto;box-shadow:0 -4px 24px #10264d20}.sheet h2{font-size:22px;margin:0 0 18px}.sheet input,.sheet select,.sheet textarea{font-size:16px!important;min-height:44px;max-width:100%}.sheet .btn{min-height:44px;padding:11px 14px}.sheet .row2{display:flex;flex-wrap:wrap;gap:8px}.sheet .row2>*{flex:1 1 40%;text-align:center}.sheet .row2 [hidden]{display:none}.mobile-form{display:grid;gap:14px}.mobile-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mobile-form .row2{margin-top:10px}.mobile-form .err:empty{display:none}.a4-preview{aspect-ratio:210/297;height:auto;max-height:none}.a4-preview iframe{min-height:60vh}
main .hrow{position:static!important;margin:0 0 16px!important;padding:0!important;background:none!important;flex-wrap:wrap;gap:10px}main .hrow h1{display:block;font-size:25px}.hrow:after{display:none}main .hrow .btn{min-height:44px;font-size:13px}main .cgrid{display:grid;grid-template-columns:1fr;gap:12px}main .cc{padding:16px;border:1px solid #e0e7f0;border-radius:14px;min-width:0}main .cc>b{font-size:16px}main .cc .cbt{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}main .cc .cbt a{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;font-size:13px}main .cc[hidden]{display:none}main .contact-cross{font-size:22px;min-width:36px;min-height:36px}.mobile-contact-search{margin-bottom:14px;height:44px;font-size:16px}.chips{overflow:auto;flex-wrap:nowrap;white-space:nowrap}.chips button{min-height:38px}
.bl.h{display:none}.bl[data-k]{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px 10px!important;padding:16px!important;border:1px solid #e0e7f0;background:white;border-radius:12px;margin:8px 0}.bl .bn{grid-column:1/-1;font-size:15px!important;font-weight:400}.mobile-bill-field:nth-child(2),.mobile-bill-field:nth-child(3){grid-column:1/-1}.bl .in,.bl select,.bl input,.bl textarea{height:44px!important;min-height:44px!important;font-size:16px!important;padding:8px!important}.bl .seg{min-height:44px}.bl .seg button{min-height:40px;font-size:12px;padding:6px;white-space:normal}.blg{margin-top:20px;font-size:17px;font-weight:750}main>.card:has(.bl){padding:0!important;background:transparent;border:0}.docgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.dc{min-width:0}.dc b{font-size:13px;overflow-wrap:anywhere}.doc-person-tabs{overflow:auto;flex-wrap:nowrap}.later{padding:16px}.planner-event-text{min-width:0}.planner-event-text b{font-size:13px}.planner-event{min-height:54px}.planner-small{min-width:36px;min-height:36px}.todo-row{min-height:38px;padding:5px 0}.todo-quick input{min-height:44px;font-size:16px}.todo-quick button{min-height:44px;min-width:44px}.todo-row input[type=checkbox]{width:20px;height:20px}.planner-composer input{min-height:44px;font-size:16px}.planner-kinds button{min-height:40px}#calc .cal .d{min-height:32px}#rch .card{margin:14px 0}#rch .rc{padding:16px}.nd,.pd{position:fixed;left:12px!important;right:12px!important;top:calc(70px + env(safe-area-inset-top))!important;width:auto!important;max-width:none!important;max-height:70dvh;overflow:auto}.nt{min-height:60px}
}

@media(max-width:899px){.sheet>label{display:block;margin:14px 0 5px;color:#526075;font-size:12px}.sheet .row2{margin-top:18px}.sheet>input,.sheet>select{width:100%}.mobile-bill-details textarea,.mobile-bill-details select{font-family:inherit;font-size:16px;line-height:1.3}}
@media(max-width:899px){.bnav div{touch-action:manipulation}.sheet .prev iframe{display:block}.mobile-bill-actions button:disabled{opacity:.6}.sheet .btn[disabled]{opacity:.6}.mobile-form [name=amount],.mobile-form [name=day]{font-variant-numeric:tabular-nums}}
