:root{--bg:#F3F9F6;--card:#fff;--ink:#0F2A22;--mut:#567067;--line:#D5E5DD;--g:#1D6B57;--gl:#E3F1EC;--red:#B3261E;--amb:#9A6A00}
@media(prefers-color-scheme:dark){:root{--bg:#0E1A16;--card:#15251F;--ink:#E6F2EC;--mut:#93B0A4;--line:#27403A;--g:#5CC7A6;--gl:#1C332B;--red:#FF8A80;--amb:#F2C14E}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,Segoe UI,Calibri,sans-serif}
.wrap{max-width:1000px;margin:0 auto;padding:16px}
h1{font-size:22px;margin:0}h2{font-size:17px;margin:0 0 10px}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.brand{color:var(--g);font-weight:700}.mut{color:var(--mut);font-size:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:14px}
button,select,input{font:inherit;border-radius:8px;border:1px solid var(--line);padding:9px 12px;background:var(--card);color:var(--ink)}
button{cursor:pointer;background:var(--g);color:#fff;border-color:var(--g);font-weight:600}
button.ghost{background:transparent;color:var(--g)}button.red{background:var(--red);border-color:var(--red)}button:disabled{opacity:.5;cursor:default}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.stat{background:var(--gl);border-radius:10px;padding:10px 12px}.stat b{display:block;font-size:22px}.stat span{font-size:13px;color:var(--mut)}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--mut);font-weight:600}
.tw{overflow-x:auto}.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;background:var(--gl);color:var(--g);font-weight:600}
.pill.bad{background:#fde7e5;color:var(--red)}.pill.warn{background:#fff3d6;color:var(--amb)}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tabs button{background:transparent;color:var(--g)}.tabs button.on{background:var(--g);color:#fff}
.err{color:var(--red);font-size:14px;min-height:20px}.neg{color:var(--red)}
.big{font-size:40px;font-weight:700;font-variant-numeric:tabular-nums}
.banner{background:#fff3d6;color:#5c4200;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:14px}
label{display:block;font-size:13px;color:var(--mut);margin:8px 0 3px}
tr.prob td{background:#fde7e5;color:#8f1a13}
@media(prefers-color-scheme:dark){tr.prob td{background:#3a1c1a;color:#ffb4ab}.pill.bad{background:#3a1c1a;color:#ffb4ab}.pill.warn{background:#3a3014;color:#F2C14E}.banner{background:#3a3014;color:#F2C14E}}
td.n,th.n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
tr.tot td{font-weight:700;background:var(--gl);border-top:2px solid var(--g)}
.chk{display:inline-flex;gap:6px;align-items:center;margin:2px 10px 2px 0;font-size:14px;color:var(--ink)}
.chk input{width:auto}
.f{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.f>div{display:flex;flex-direction:column;min-width:0}
.f label{margin:0 0 3px}
.f>div:has(>button+button){flex-direction:row;flex-wrap:wrap;gap:6px;align-items:flex-end}
.hl{color:var(--g);font-weight:700}
svg.chart text{fill:var(--ink);font:13px system-ui,sans-serif}svg.chart .bar{fill:var(--g)}svg.chart .grid{stroke:var(--line)}
.ban{background:#1F2A6B;color:#fff;min-height:58px;display:flex;align-items:center;gap:14px;padding:0 0 0 16px;position:sticky;top:0;z-index:30;flex-wrap:wrap}
.logo-t{background:#fff;color:#1D6B57;border-radius:4px;padding:6px 12px;font-size:18px;white-space:nowrap}.logo-t b{font-weight:800}
.ban .lang{opacity:.9;font-size:14px;white-space:nowrap}
.ban .sp{flex:1}
.ban .bi{background:none;border:0;color:#fff;display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 10px;font-weight:500;font-size:11px;position:relative;border-radius:0}
.ban .bi:hover{background:#ffffff1f}
.ban .bi svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ban .dotb{position:absolute;top:4px;right:10px;min-width:16px;height:16px;border-radius:8px;background:#e5484d;color:#fff;font-size:10px;display:grid;place-items:center;padding:0 4px}
.ban input[type=month]{padding:5px 8px;font-size:13px}
.ban .uw{position:relative;align-self:stretch;display:flex;align-items:center;padding:0 14px}
.av{width:40px;height:40px;border-radius:50%;background:#e8ebf5;color:#1F2A6B;font-weight:700;display:grid;place-items:center;border:0;padding:0}
.ban .um{display:none;position:absolute;right:0;top:100%;min-width:200px;background:var(--card);color:var(--ink);border:1px solid var(--line);box-shadow:0 8px 24px #0003;border-radius:0 0 8px 8px}
.ban .uw:hover .um,.ban .uw.open .um{display:block}
.ban .um button{display:block;width:100%;text-align:left;background:none;color:var(--ink);border:0;border-radius:0;padding:11px 16px;font-weight:500}
.ban .um button:hover{background:var(--gl)}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal .h{text-align:center;color:var(--mut);font-size:12px;font-weight:600;padding:2px 0}
.cal .e{min-height:58px}
.cal button.d{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:8px;min-height:58px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:500}
.cal button.d small{color:var(--mut);font-size:11px}
.cal button.d.w{background:var(--gl);border-color:var(--g)}.cal button.d.w small{color:var(--g);font-weight:700;font-size:12px}
.cal button.d.sel{outline:3px solid var(--g);outline-offset:1px}
.cal button.d.pb{border-color:#d33b3b}
.kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:12px}
.kpi .stat b{font-size:26px}
.alertb{background:#fde7e5;color:#8f1a13;padding:10px 14px;border-radius:8px;margin-bottom:10px;font-size:14px}
.amberb{background:#fff3d6;color:#5c4200;padding:10px 14px;border-radius:8px;margin-bottom:10px;font-size:14px}
@media(prefers-color-scheme:dark){.alertb{background:#3a1c1a;color:#ffb4ab}.amberb{background:#3a3014;color:#F2C14E}}
button.sm{padding:5px 10px;font-size:13px}
td input.nt{width:100%;min-width:150px;padding:6px 8px;font-size:13px}
#invdoc .paper,#pdoc .paper{background:#fff;color:#111;border:1px solid var(--line);border-radius:8px;padding:28px;max-width:820px}
#pdoc .paper h1,#invdoc .paper h1{font-size:26px;margin:0 0 4px}#pdoc .paper table th,#invdoc .paper table th{background:#f3f3f3;color:#333}#pdoc .paper td,#pdoc .paper th,#invdoc .paper td,#invdoc .paper th{border-bottom:1px solid #ddd}
@media print{body *{visibility:hidden}#mdl,#mdl *{visibility:visible}#mdl{position:absolute;inset:auto;left:0;top:0;width:100%;background:#fff;display:block;padding:0;overflow:visible}#mdl .mbox{box-shadow:none;width:100%!important}#mdl .mhd,#mdl .noprint{display:none!important}#mdl .paper{border:0;max-width:none}}

.qalink{display:inline-block;padding:9px 0;color:var(--g,#1d6b57);font-weight:600;text-decoration:underline;cursor:pointer}
.qapan{position:absolute;z-index:30;top:100%;left:0;min-width:260px;max-width:92vw;background:var(--card,#fff);border:1px solid var(--line,#d5e5dd);border-radius:10px;padding:12px;box-shadow:0 8px 28px #0003;display:flex;flex-direction:column;gap:4px}
.qapan[hidden]{display:none}

.pill.ok{background:var(--gl);color:var(--g)}
#t-pay:not(.showhelp) .hlp{display:none}

#t-inv:not(.showhelp) .hlp{display:none}
select.more{width:auto;min-width:44px;padding:6px 8px;font-size:15px;border:1px solid var(--line,#d5e5dd);border-radius:8px;background:transparent;cursor:pointer;color:inherit}
@media(max-width:600px){.pbig .kpi{grid-template-columns:repeat(3,1fr);gap:6px}.pbig .kpi.k4{grid-template-columns:repeat(2,1fr)}.pbig .kpi .stat{padding:8px 8px}.pbig .kpi .stat b{font-size:17px}.pbig .kpi .stat span{font-size:11.5px}}

.llscroll{max-height:440px;overflow-y:auto}.llscroll thead th{position:sticky;top:0;background:var(--card,#fff);z-index:1}

.cfl{font-weight:600;color:var(--blue,#1d4ed8);text-decoration:underline}

.ctx{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Clients tables: every title centered over its information, with room for long emails */
#clist table,#cpast table{border-collapse:collapse;width:100%;font-size:13px}
#clist th,#clist td,#cpast th,#cpast td,#clist td.n,#clist th.n,#cpast td.n,#cpast th.n{text-align:center;vertical-align:middle;white-space:nowrap;padding-left:10px;padding-right:10px}
#clist th:nth-child(1){min-width:70px}#clist th:nth-child(2){min-width:170px}#clist th:nth-child(3){min-width:110px}#clist th:nth-child(4){min-width:130px}#clist th:nth-child(5){min-width:130px}#clist th:nth-child(6){min-width:290px}#clist th:nth-child(7){min-width:150px}#clist th:nth-child(8){min-width:160px}#clist th:nth-child(9){min-width:110px}#clist th:nth-child(10){min-width:130px}#clist th:nth-child(11){min-width:70px}#clist th:nth-child(12){min-width:80px}
#cpast th:nth-child(1){min-width:80px}#cpast th:nth-child(2){min-width:220px}#cpast th:nth-child(3){min-width:130px}#cpast th:nth-child(4){min-width:130px}#cpast th:nth-child(5){min-width:90px}
#clist .ctx,#cpast .ctx{max-width:150px;margin:0 auto}
#clist select.more,#cpast select.more{width:64px;margin:0 auto}
[data-since],[data-sm],[data-avgw],.hc b,.ht b,#tdn{font-variant-numeric:tabular-nums}
/* Build 83: every admin table uses the same spacing. Titles and information are centered on each other. */
#app table:not(.paper table){width:100%;border-collapse:collapse;font-size:13px}
#app table:not(.paper table) :is(th,td),#app table:not(.paper table) :is(th,td).n{text-align:center;vertical-align:middle;padding:11px 13px;white-space:nowrap}
#app table:not(.paper table) :is(th,td){min-width:72px}
#app table:not(.paper table) :is(th,td):first-child{min-width:56px}
#app table:not(.paper table) td.lg{white-space:normal;min-width:240px;max-width:340px}
#app table:not(.paper table) td input.nt{margin:0 auto;min-width:170px}
#clist th,#clist td,#cpast th,#cpast td{padding-left:16px;padding-right:16px}
/* Build 88: payment details dialog */
.bkv{border:1px solid var(--line);border-radius:10px;overflow:hidden}.bkr{display:flex;justify-content:space-between;gap:14px;padding:9px 13px;border-bottom:1px solid var(--line);flex-wrap:wrap}.bkr:last-child{border-bottom:0}.bkr b{word-break:break-all;text-align:right;margin-left:auto}
/* Build 88: payment list */
.pk{display:flex;align-items:center;margin:0}.pk input,.pkall input{width:20px;height:20px;margin:0;flex:none}.pkbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:2px 0 12px;border-bottom:1px solid var(--line)}.pkall{display:flex;gap:8px;align-items:center;font-weight:600;margin:0}.pkbar button{margin-left:auto}
.plbox{border:1px solid var(--line);border-radius:10px}.plr{display:flex;justify-content:space-between;align-items:center;gap:10px 14px;padding:10px 13px;border-bottom:1px solid var(--line)}.plr>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.plr .mut{font-size:13px;word-break:break-word}.pla{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none}.plt{border-bottom:0;background:var(--gl)}
/* Build 89: forms open where you are */
.ovb{display:none;position:fixed;inset:0;background:rgba(15,25,50,.55);z-index:54}.ovb.on{display:block}
.card.ovf,#cinst.ovf{position:fixed!important;z-index:55;top:3vh;left:50%;transform:translateX(-50%);width:min(800px,calc(100vw - 24px));max-height:94vh;overflow:auto;margin:0!important;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0006;padding:16px 18px}
.ovx{float:right;margin:0 0 8px 10px}
.tstw{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#0F2B6B;color:#fff;padding:12px 18px;border-radius:10px;z-index:70;max-width:min(520px,92vw);font-weight:600;display:none;box-shadow:0 6px 24px #0005}.tstw.on{display:block}

/* Build 89: one tidy row layout for Pay and Invoices */
.rws{display:block}
.rw{display:grid;grid-template-columns:28px minmax(0,1fr) 130px 300px;align-items:center;gap:10px 20px;padding:16px 4px;border-top:1px solid var(--line)}
.rw:first-child{border-top:0}
.rw.nock{grid-template-columns:minmax(0,1fr) 150px 340px}
.rw .pk{width:28px;display:flex;justify-content:center}
.rwi{display:flex;flex-direction:column;gap:4px;min-width:0;text-align:left}
.rwn{font-size:16.5px;font-weight:700;color:#12234a}
.rwl{font-size:14.5px;line-height:1.45;color:#37425f}
.rwl b{color:#12234a}
.rwa{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}
.rwa small{font-size:12.5px;font-weight:600;color:#46506B}
.rwa>b{font-size:22px;color:#12234a;line-height:1.1}
.rwb{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.rwb button{min-height:38px}
@media(max-width:760px){
 .rw{grid-template-columns:28px minmax(0,1fr);grid-template-areas:"ck inf" ". amt" ". btn";gap:8px 12px;padding:16px 2px}
 .rw.nock{grid-template-columns:minmax(0,1fr);grid-template-areas:"inf" "amt" "btn"}
 .rw>.pk{grid-area:ck;align-self:start;padding-top:2px}.rw>.rwi{grid-area:inf}.rw>.rwa{grid-area:amt;flex-direction:row;align-items:center;justify-content:space-between;text-align:left;flex-wrap:wrap}
 .rw>.rwb{grid-area:btn;justify-content:stretch}.rwb button{flex:1 1 auto}
 .rw.nock>.rwa{justify-content:flex-start;gap:10px}
}

/* Build 91: pay lists by language + language dropdown */
.pgh{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin:0 0 4px;padding-bottom:10px;border-bottom:2px solid var(--line)}
.pgh h2{margin:0}.pgh .mut{flex:1;min-width:160px}
.pgrp{margin-top:14px}
.rw.idle .rwn,.rw.idle .rwl,.rw.idle .rwa>b{opacity:.65}
.msb{display:flex;justify-content:space-between;align-items:center;gap:10px;width:min(460px,100%);text-align:left;min-height:42px;font-weight:600}
.msb .msa{flex:none}
.mspanel{margin-top:6px;border:1px solid var(--line);border-radius:10px;padding:10px;max-height:260px;overflow:auto;width:min(460px,100%);background:#fff}
.mspanel[hidden]{display:none}
.msq{width:100%;margin:0 0 8px}
#il{display:flex;flex-direction:column;gap:2px}
#il label.chk{display:flex;align-items:center;gap:10px;padding:7px 6px;border-radius:8px;margin:0;font-size:15px}
#il label.chk:hover{background:var(--gl)}
#il input{width:20px;height:20px;margin:0;flex:none}
.pgh+.rw{border-top:0}

/* Build 93: security */
.tfkey{font:600 18px/1.5 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;background:#f2f5fc;border:1px solid #d7deee;border-radius:10px;padding:10px 12px;margin:0 0 10px;word-break:break-all;color:#1b2540}
.reccodes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.reccodes span{font:600 16px ui-monospace,Menlo,Consolas,monospace;background:#f2f5fc;border:1px solid #d7deee;border-radius:8px;padding:8px 10px;text-align:center;color:#1b2540}
a.btnl{display:inline-block;background:#1f56d6;color:#fff;border-radius:10px;padding:10px 14px;font-weight:600;text-decoration:none}
#l2 label,#login label{display:block}

.air{display:flex;gap:10px 14px;align-items:flex-start;flex-wrap:wrap;border:1px solid var(--line);border-radius:10px;padding:10px 13px;margin-bottom:8px}.air .t{flex:1;min-width:220px}.air .ab{display:flex;gap:6px;flex-wrap:wrap}
.aih{margin:14px 0 8px;font-size:15px}.aih:first-child{margin-top:0}.aid{margin-top:4px;font-size:13px;color:var(--mut)}.aid summary{cursor:pointer}.aid ul,.aip{margin:4px 0 0 18px;padding:0;font-size:13px}.aip{color:var(--red)}

.lt{display:inline-block;width:14px;height:14px;border-radius:50%;flex:none;margin-top:3px;vertical-align:middle;border:1px solid rgba(0,0,0,.15)}.lt-red{background:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.2)}.lt-green{background:#2fa765;box-shadow:0 0 0 3px rgba(47,167,101,.2)}.lt-amber{background:#e8a317;box-shadow:0 0 0 3px rgba(232,163,23,.2)}.lt-grey{background:#aab0b8}

.fixhl{outline:3px solid #f2b134!important;outline-offset:2px;border-radius:6px;box-shadow:0 0 0 6px rgba(242,177,52,.28)}
.aifx{font-size:13px;font-weight:600;margin-left:6px;white-space:nowrap}
/* Build 109c: tables fit the screen. Text may wrap; numbers, tags and buttons stay on one line; the last column with a button stays visible. */
#app table:not(.paper table) :is(th,td),#app table:not(.paper table) :is(th,td).n{padding:10px 8px;white-space:normal;min-width:0}
#app table:not(.paper table) :is(th,td).n,#app table:not(.paper table) td :is(button,.st,.nb){white-space:nowrap}
#app table:not(.paper table) :is(th,td):first-child{min-width:0}
#app table:not(.paper table) td:last-child:has(>button:only-child),#app table:not(.paper table) td:last-child:has(>button:first-child){position:sticky;right:0;background:var(--card,#fff);box-shadow:-6px 0 8px -6px rgba(20,33,61,.18)}
#app table:not(.paper table) tr.prob td:last-child{background:#fde7e5}

/* Build 109c: controls in one row have the same height and line up */
.restbox .f{align-items:flex-end}.restbox .f>div>label.chk{min-height:44px;display:flex;align-items:center}.restbox .f button{min-height:44px}
#ccopen,#ccred{margin:0}#t-ccrep>.chk,#t-ccrep label.chk{display:inline-flex;align-items:center;gap:6px;margin:0 16px 12px 0}
#app table:not(.paper table):has(td:last-child>button:first-child) th:last-child:empty{position:sticky;right:0;background:var(--card,#fff);box-shadow:-6px 0 8px -6px rgba(20,33,61,.18)}
#app table:not(.paper table) thead th{background:var(--card,#fff)}

#app table:not(.paper table) td .pill{white-space:nowrap}
/* Build 109d: phone tables are compact so columns are not cut; long text (emails, names) breaks instead of hiding under the sticky button */
@media(max-width:600px){
#app table:not(.paper table){font-size:12.5px}
#app table:not(.paper table) :is(th,td),#app table:not(.paper table) :is(th,td).n{padding:8px 4px}
#app table:not(.paper table) th{font-size:11.5px;white-space:normal;line-height:1.2}
#app table:not(.paper table) td{overflow-wrap:break-word;word-break:normal;min-width:4.2em}
#app table:not(.paper table) td.em,#app table:not(.paper table) td.em .mut{overflow-wrap:anywhere;min-width:6em}
#app table:not(.paper table) td .pill{white-space:normal;text-align:center;display:inline-block;line-height:1.25}
#app table:not(.paper table) td.n,#app table:not(.paper table) td:has(>button){overflow-wrap:normal}
#app table:not(.paper table) td:last-child:has(>button:first-child) button{padding:6px 9px;font-size:12.5px}
#app .tw{background:linear-gradient(to right,var(--card,#fff) 30%,rgba(255,255,255,0)),linear-gradient(to left,var(--card,#fff) 30%,rgba(255,255,255,0)) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(20,33,61,.25),rgba(20,33,61,0)),radial-gradient(farthest-side at 100% 50%,rgba(20,33,61,.25),rgba(20,33,61,0)) 100% 0;background-repeat:no-repeat;background-size:30px 100%,30px 100%,12px 100%,12px 100%;background-attachment:local,local,scroll,scroll}
}

/* Build 110: Interpreter pay, Client invoices and Other checks are three windows of AI Admin */
.aiseg{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.aiseg button{min-height:40px}.aiseg .nb{margin-left:4px}
details.setd{padding:0}.setd>summary{cursor:pointer;padding:14px 16px;font-weight:600;list-style:none}.setd>summary::-webkit-details-marker{display:none}.setd>summary::after{content:'+';float:right;font-weight:400}.setd[open]>summary::after{content:'\2212'}.setd>div{padding:0 16px 16px}.setd h2.sr{font-size:16px;margin:0 0 6px}
.aiseg .nb{display:inline-block;min-width:18px;padding:0 6px;border-radius:99px;background:#d92d20;color:#fff;font-size:12px;line-height:18px;text-align:center;font-weight:700;position:static;height:auto}

/* Build 110b: AI Admin has a small sub-menu (Interpreter pay, Client invoices, Other) */
.nv .chv{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px}.nv .chv:hover{background:#ffffff22}.nv .chv svg{width:18px;height:18px;transition:transform .15s}.nv .chv.up svg{transform:rotate(180deg)}
.nv .nb+.chv{margin-left:6px}.nv.pon{background:#ffffff14;color:#fff}
.sbm{display:flex;flex-direction:column;gap:2px;margin:2px 0 6px 20px;padding-left:10px;border-left:1px solid #ffffff22}.sbn{padding:7px 10px;font-size:14px;gap:10px}.sbn .dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6;flex:none}.sbn .nb{margin-left:auto}
.dtb{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-weight:600}.dth{margin:0 0 10px}.pbig .dtb{margin:0 0 4px}.dtpop{margin-top:-6px}
.nv .chv{color:#cdd7f4}.nv:hover .chv,.nv.on .chv{color:#fff}

/* Build 110c: date picker as floating window */
.dtpop[hidden],.dtbk[hidden]{display:none!important}
.dtbk{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:70}
.dtpop{position:fixed!important;z-index:71;left:50%;top:14%;transform:translateX(-50%);width:min(92vw,420px);max-height:76vh;overflow:auto;margin:0!important;box-shadow:0 20px 50px rgba(15,23,42,.35)}
.dtx{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}
.dtpop.dtstat{position:static!important;transform:none;width:auto;max-height:none}

.pbig .dtb{margin-right:8px}
.cal .d.off{opacity:.35}
#rrbtn{min-height:44px}

#pkbar{position:sticky;bottom:14px;z-index:25;box-shadow:0 8px 28px rgba(15,23,42,.28);border:1px solid #c9d6f5}
#pkbar .pkbar{justify-content:space-between}

.cbx{position:relative;min-width:230px}.cbi{width:100%;min-height:44px}.cbl{position:absolute;z-index:60;left:0;right:0;top:100%;margin-top:4px;max-height:260px;overflow:auto;background:var(--card,#fff);border:1px solid var(--line,#cbd5e1);border-radius:10px;box-shadow:0 12px 30px rgba(15,23,42,.25)}.cbo{display:block;width:100%;text-align:left;background:none;border:0;border-radius:0;min-height:44px;padding:8px 12px;color:inherit;font-weight:500}.cbo:hover,.cbo:focus{background:rgba(37,99,235,.1)}
