/* CA Bundals — Learn: scene styles for films/m4.js (stage units). Shared atoms are in ../engine.css and ../films.css. */
.lx-gp-head{gap:10px}
.lx-gp-head .lx-h1{font-size:25px}
.lx-gp-two{display:grid;grid-template-columns:1.45fr 1fr;gap:14px;align-items:start}
.lx-gp-stack{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#EEF0F4;margin:2px 0 12px}
.lx-gp-stack i{display:block;height:100%}
.lx-gp-bks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.lx-gp-bk{display:flex;flex-direction:column;gap:2px;font-size:12.5px;min-width:0}
.lx-gp-bk>span{font-weight:600;color:#5B6275;display:flex;align-items:center;white-space:nowrap}
.lx-gp-bk>span i{width:8px;height:8px;border-radius:2px;margin-right:6px;flex:none}
.lx-gp-bk>b{font-size:19px;font-weight:800;letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.lx-gp-bk>small{color:#5B6275;font-size:12px}
.lx-gp-bk>div{margin-top:5px}
.lx-gp-bk .lv-btn.sm{height:28px;padding:0 9px;font-size:12px}
.lx-gp-foot{margin:10px 0 0;font-size:12px;line-height:1.45;color:#5B6275}
.lx-gp-row{display:flex;align-items:center;gap:12px;padding:7px 0;border-top:1px solid #F0F2F6;font-size:13.5px;transition:background .3s}
.lx-gp-row:first-child{border-top:0}
.lx-gp-row .rt{flex:1;min-width:0}
.lx-gp-row .rt b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-gp-row .rt span{display:block;font-size:12px;color:#5B6275;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-gp-row>b{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.lx-gp-row .amt{text-align:right;line-height:1.25}
.lx-gp-row .amt b{display:block;font-weight:700}
.lx-gp-row .amt small{font-size:12px;font-weight:600}
.lx-gp-row .lv-btn.sm{min-width:76px}
.lx-gp-list{padding:0 18px 6px}
/* tighter tables for the invoice list and the TDS grid */
.lx-gp-tb .lv-tr{padding:8px 14px;gap:0 10px}
.lx-gp-tb .lv-th{padding:8px 14px}
.lx-gp-tb .lv-sw{margin-left:0}
.lx-gp-tb .nw{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-gp-acts{display:flex;gap:5px}
.lx-gp-acts .lv-btn.sm{height:28px;padding:0 9px;font-size:12px}
.lx-gp-tight .lv-tr{min-height:38px;padding-top:6px;padding-bottom:6px}
.lx-gp-wrapth .lv-th{white-space:normal;line-height:1.2;font-size:10.5px;letter-spacing:.2px;align-items:end}
.lx-gp-sel{height:32px;font-size:13px;padding:0 10px;min-width:118px;gap:10px}
.lx-gp-empty{position:absolute;left:0;right:0;top:108px;text-align:center;color:#5B6275;font-size:13.5px}
/* a row that arrives in a list */
.lv-tb .lv-tr.lx-gp-new{max-height:0;min-height:0;padding-top:0;padding-bottom:0;border-top-color:transparent;overflow:hidden;opacity:0;transition:max-height .45s cubic-bezier(.16,1,.3,1),min-height .45s cubic-bezier(.16,1,.3,1),padding .45s cubic-bezier(.16,1,.3,1),opacity .35s,background .3s}
.lv-tb .lv-tr.lx-gp-new.in{max-height:64px;min-height:44px;padding-top:8px;padding-bottom:8px;border-top-color:#EEF0F4;opacity:1;background:#F3FBF7}
.lv-modal .lx-gp-mg{display:grid;grid-template-columns:1fr 1fr;gap:11px 14px}
.lv-modal .lx-gp-mg .lv-in{height:38px}
/* the client's pay page (client/pay.js) */
.lx-gp-pp{gap:8px}
.lx-gp-ppsum{display:flex;flex-direction:column;gap:1px;padding:2px 0}
.lx-gp-ppsum small{font-size:12px;color:#5B6275}
.lx-gp-ppsum h4{font-size:31px;letter-spacing:-.8px;margin:0}
.lx-gp-ppsum b{font-size:13.5px;font-weight:600}
.lx-gp-pp .lv-pc{gap:0;padding:4px 14px}
.lx-gp-pprow{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid #F0F2F6}
.lx-gp-pprow:first-child{border-top:0}
.lx-gp-pprow>span{flex:1;min-width:0}
.lx-gp-pprow>span b{display:block;font-size:13.5px;font-weight:600}
.lx-gp-pprow>span small{display:block;font-size:11.5px;color:#5B6275}
.lx-gp-pprow>b{font-size:14px;font-variant-numeric:tabular-nums}
.lx-gp-pprow.tot>b{font-size:16px}
.lx-gp-ppswap{display:grid}
.lx-gp-ppswap>div{grid-area:1/1}
.lx-gp-pp .lv-pc.lx-gp-ppact{gap:7px;padding:12px 14px}
.lx-gp-ppact p{text-align:center;font-size:12px}
.lx-gp-ppo{display:flex;gap:8px}
.lx-gp-ppo span{flex:1;height:36px;border-radius:10px;box-shadow:inset 0 0 0 1px #D5DAE3;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#3A4154}
.lx-gp-pp .lv-pc.lx-gp-ppdone{align-items:center;justify-content:center;text-align:center;gap:7px;padding:16px 14px}
.lx-gp-ppdone i{width:48px;height:48px;border-radius:50%;background:#0E9F6E;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 7px #D9F2E6;margin-bottom:5px}
.lx-gp-ppdone i svg{width:24px;height:24px}
.lx-gp-ppdone b{font-size:17px}
.lx-gp-ppdone small{font-size:12.5px;line-height:1.45;color:#5B6275}
.lx-gp-pp .lv-pbtn{height:44px}
.lx-gp-pp .lv-pbtn.soft{height:38px}
.lx-gp-ppfoot{text-align:center;font-size:11.5px!important;line-height:1.45!important}
/* settings → client payments */
.lx-gp-f3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lx-gp-ph{color:#8A91A3}
.lx-gp-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;color:#3A4154}
/* TDS on our fees */
.lx-gp-filters{display:flex;align-items:center;gap:10px;padding:12px 14px 10px}
.lx-gp-kv{display:grid;grid-template-columns:1fr auto;gap:6px 14px;margin:0;font-size:13.5px}
.lx-gp-kv dt{color:#5B6275}
.lx-gp-kv dd{margin:0;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}
.lx-gp-kv .tot{border-top:1px solid #E6E9F0;padding-top:6px;color:#1F2433;font-weight:700}
.lx-gp-split{display:grid;grid-template-columns:1.72fr 1fr;gap:14px;align-items:start}
.lx-gp-bubble{background:#F3FBF7;box-shadow:inset 0 0 0 1px #CDEBDD;border-radius:0 12px 12px 12px;padding:10px 12px;font-size:13px;line-height:1.5;color:#1F2433}
.lx-gp-red{color:#B42318;font-weight:700}
.lx-gp-m .lv-tr{font-size:12.5px;gap:0 8px;padding:7px 14px}
.lx-gp-m .lv-th{padding:7px 14px}
.lx-gp-row.lx-gp-hot{background:#F5F8FF}
