/* Paylane design tokens (generated from the Paylane Design System) */
.plp,.paylane-tokens{--navy-900:#101F3C;--navy-700:#243653;--beige-400:#D6C5A8;--beige-200:#E9DFCF;--ivory-50:#F8F5EF;--bg:#F8F5EF;--surface:#FFFFFF;--surface-alt:#E9DFCF;--ink:#101F3C;--ink-muted:#4F5A6E;--line:#DDD3C2;--line-strong:#877B66;--primary:#101F3C;--on-primary:#F8F5EF;--accent:#D6C5A8;--on-accent:#101F3C;--accent-ink:#6F5A30;--hero:#101F3C;--on-hero:#F8F5EF;--on-hero-muted:#D6C5A8;--success:#0E6462;--success-bg:#DCEEEC;--warning:#7A4E00;--warning-bg:#F8EBCF;--danger:#A02B19;--on-danger:#FFFFFF;--danger-bg:#F9E2DD;--info:#1F4F8C;--info-bg:#DFE9F6;--focus:#1F4F8C;--shadow-card:0 1px 2px rgba(16,31,60,0.06), 0 6px 20px rgba(16,31,60,0.06);--shadow-sheet:0 -6px 24px rgba(16,31,60,0.10);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--control-sm:36px;--control-md:48px;--control-lg:56px;--touch-min:44px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--font-display:"Bodoni Moda", "IBM Plex Sans Arabic", Georgia, serif;--font-sans:"Plus Jakarta Sans", "IBM Plex Sans Arabic", system-ui, sans-serif;--font-arabic:"IBM Plex Sans Arabic", "Plus Jakarta Sans", system-ui, sans-serif;}
@media (prefers-color-scheme:dark){.plp[data-theme="auto"]{--navy-900:#101F3C;--navy-700:#243653;--beige-400:#D6C5A8;--beige-200:#E9DFCF;--ivory-50:#F8F5EF;--bg:#0A1426;--surface:#101F3C;--surface-alt:#1B2B49;--ink:#F8F5EF;--ink-muted:#AAB5C8;--line:#2B3C5B;--line-strong:#7384A3;--primary:#D6C5A8;--on-primary:#101F3C;--accent:#D6C5A8;--on-accent:#101F3C;--accent-ink:#D6C5A8;--hero:#243653;--on-hero:#F8F5EF;--on-hero-muted:#D6C5A8;--success:#5FD4CC;--success-bg:#12373A;--warning:#F2C46B;--warning-bg:#3A2D10;--danger:#FF9D8A;--on-danger:#0A1426;--danger-bg:#45201A;--info:#9CC2F5;--info-bg:#16305A;--focus:#9CC2F5;--shadow-card:0 1px 2px rgba(0,0,0,0.4);--shadow-sheet:0 -6px 24px rgba(0,0,0,0.5);}}
.plp[data-theme="dark"],[data-theme="dark"] .plp{--navy-900:#101F3C;--navy-700:#243653;--beige-400:#D6C5A8;--beige-200:#E9DFCF;--ivory-50:#F8F5EF;--bg:#0A1426;--surface:#101F3C;--surface-alt:#1B2B49;--ink:#F8F5EF;--ink-muted:#AAB5C8;--line:#2B3C5B;--line-strong:#7384A3;--primary:#D6C5A8;--on-primary:#101F3C;--accent:#D6C5A8;--on-accent:#101F3C;--accent-ink:#D6C5A8;--hero:#243653;--on-hero:#F8F5EF;--on-hero-muted:#D6C5A8;--success:#5FD4CC;--success-bg:#12373A;--warning:#F2C46B;--warning-bg:#3A2D10;--danger:#FF9D8A;--on-danger:#0A1426;--danger-bg:#45201A;--info:#9CC2F5;--info-bg:#16305A;--focus:#9CC2F5;--shadow-card:0 1px 2px rgba(0,0,0,0.4);--shadow-sheet:0 -6px 24px rgba(0,0,0,0.5);}

/* Design system components */
*,*::before,*::after{box-sizing:border-box}
.plp-unused-stage{padding:var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-5);align-items:flex-start}
.pl-col{display:flex;flex-direction:column;gap:var(--space-3);width:340px;max-width:100%}
.pl-rowwrap{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.pl-icon{width:var(--icon-md);height:var(--icon-md);flex:none;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.pl-num{font-variant-numeric:tabular-nums lining-nums;direction:ltr;unicode-bidi:isolate}
[dir="rtl"] .pl-flip{transform:scaleX(-1)}
.pl-btn:focus-visible,.pl-cal__day:focus-visible,.pl-nav__item:focus-visible,.pl-alert__action:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* Button */
.pl-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-5);border-radius:var(--radius-md);border:1.5px solid transparent;font:inherit;font-weight:600;font-size:15px;line-height:22px;cursor:pointer;background:var(--primary);color:var(--on-primary);text-decoration:none;white-space:nowrap}
.pl-btn--accent{background:var(--accent);color:var(--on-accent)}
.pl-btn--secondary{background:transparent;border-color:var(--line-strong);color:var(--ink)}
.pl-btn--ghost{background:transparent;color:var(--ink);padding:0 var(--space-3)}
.pl-btn--danger{background:var(--danger);color:var(--on-danger)}
.pl-btn--sm{height:var(--control-sm);padding:0 var(--space-3);font-size:13px;line-height:18px;border-radius:var(--radius-sm)}
.pl-btn--block{width:100%}
.pl-btn:disabled{opacity:.45;cursor:not-allowed}

/* StatusBadge */
.pl-badge{display:inline-flex;align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:12px;font-weight:600;line-height:16px;background:var(--surface-alt);color:var(--ink);white-space:nowrap}
.pl-badge .pl-icon{width:14px;height:14px;stroke-width:2}
.pl-badge--paid{background:var(--success-bg);color:var(--success)}
.pl-badge--due{background:var(--warning-bg);color:var(--warning)}
.pl-badge--overdue{background:var(--danger-bg);color:var(--danger)}
.pl-badge--review{background:var(--info-bg);color:var(--info)}
.pl-badge--postponed{background:transparent;border-color:var(--line-strong);color:var(--ink-muted)}

/* TextField */
.pl-field{display:flex;flex-direction:column;gap:var(--space-2)}
.pl-label{font-size:13px;font-weight:600;line-height:18px;color:var(--ink)}
.pl-input-wrap{display:flex;align-items:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-4);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);color:var(--ink-muted)}
.pl-input-wrap:focus-within{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:1px}
.pl-input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;color:var(--ink)}
.pl-input::placeholder{color:var(--ink-muted);opacity:1}
.pl-affix{color:var(--ink-muted);font-size:13px;font-weight:600}
.pl-help{font-size:13px;line-height:18px;color:var(--ink-muted);display:flex;align-items:center;gap:var(--space-1)}
.pl-help .pl-icon{width:var(--icon-sm);height:var(--icon-sm)}
.pl-field--error .pl-input-wrap{border-color:var(--danger)}
.pl-field--error .pl-help{color:var(--danger)}

/* Card + InstallmentRow */
.pl-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-1) var(--space-4)}
.pl-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line)}
.pl-row:last-child{border-bottom:0}
.pl-row__icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--surface-alt);color:var(--ink);display:grid;place-items:center;flex:none}
.pl-row__body{flex:1;min-width:0}
.pl-row__title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-row__sub{font-size:13px;line-height:18px;color:var(--ink-muted)}
.pl-row__end{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);flex:none}
.pl-row__amount{font-weight:700}
.pl-row__cur{font-size:11px;font-weight:600;color:var(--ink-muted);margin-inline-start:3px}

/* SummaryCard */
.pl-summary{background:var(--hero);color:var(--on-hero);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}
.pl-summary__label{font-size:13px;font-weight:500;line-height:18px;color:var(--on-hero-muted)}
.pl-summary__amount{font-size:34px;line-height:40px;font-weight:700;letter-spacing:-.02em;display:flex;align-items:baseline;gap:var(--space-2)}
.pl-summary__cur{font-size:15px;font-weight:600;letter-spacing:0;color:var(--on-hero-muted)}
.pl-progress{height:8px;border-radius:var(--radius-pill);background:rgba(248,245,239,.2);overflow:hidden}
.pl-progress>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}
.pl-summary__meta{display:flex;justify-content:space-between;gap:var(--space-3);font-size:13px;line-height:18px;color:var(--on-hero-muted)}
.pl-summary__meta b{color:var(--on-hero);font-weight:600}

/* Alert */
.pl-alert{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--info-bg);color:var(--ink);font-size:13px;line-height:18px}
[dir="rtl"] .pl-alert{line-height:22px}
.pl-alert>.pl-icon{color:var(--info);margin-top:1px}
.pl-alert__title{font-size:15px;line-height:22px;font-weight:600;display:block}
.pl-alert__action{display:inline-block;margin-top:var(--space-1);font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.pl-alert--success{background:var(--success-bg)} .pl-alert--success>.pl-icon{color:var(--success)}
.pl-alert--warning{background:var(--warning-bg)} .pl-alert--warning>.pl-icon{color:var(--warning)}
.pl-alert--danger{background:var(--danger-bg)} .pl-alert--danger>.pl-icon{color:var(--danger)}

/* CalendarStrip */
.pl-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-1)}
.pl-cal__day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) 0;min-height:68px;border-radius:var(--radius-md);border:0;background:transparent;font:inherit;color:var(--ink);cursor:pointer}
.pl-cal__dow{font-size:11px;line-height:16px;font-weight:600;color:var(--ink-muted)}
.pl-cal__num{font-size:17px;line-height:24px;font-weight:600}
.pl-cal__dots{display:flex;gap:3px;height:7px;align-items:center}
.pl-cal__dot{width:6px;height:6px;border-radius:50%;background:var(--success)}
.pl-cal__dot--due{background:var(--warning);border-radius:1px}
.pl-cal__dot--overdue{background:var(--danger);border-radius:1px;transform:rotate(45deg)}
.pl-cal__day[aria-pressed="true"]{background:var(--primary);color:var(--on-primary)}
.pl-cal__day[aria-pressed="true"] .pl-cal__dow{color:var(--on-primary)}
.pl-cal__day[aria-pressed="true"] .pl-cal__dot{background:var(--on-primary)}

/* BottomNav */
.pl-nav{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;background:var(--surface);border:1px solid var(--line);border-bottom:0;padding:var(--space-2) var(--space-2) var(--space-3);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-sheet)}
.pl-nav__item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;padding:0 0 var(--space-2);font-family:inherit;font-size:11px;line-height:16px;font-weight:600;color:var(--ink-muted);background:none;border:0;border-radius:var(--radius-md);cursor:pointer}
.pl-nav__item .pl-icon{width:var(--icon-lg);height:var(--icon-lg)}
.pl-nav__item[aria-current="page"]{color:var(--ink)}
.pl-nav__item[aria-current="page"]::after{content:"";position:absolute;bottom:0;width:16px;height:3px;border-radius:2px;background:var(--accent-ink)}
.pl-nav__pay{width:var(--control-lg);height:var(--control-lg);border-radius:50%;background:var(--primary);color:var(--on-primary);display:grid;place-items:center;margin-top:-28px;box-shadow:var(--shadow-card)}
.pl-nav__item--pay{color:var(--ink)}

/* Logo */
.pl-logo-panel{display:flex;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-6);border-radius:var(--radius-lg);min-height:120px}
.pl-logo-panel--light{background:var(--ivory-50);border:1px solid var(--line)}
.pl-logo-panel--navy{background:var(--navy-900);border:1px solid var(--line)}
.pl-logo-panel--beige{background:var(--beige-400)}

/* ================= Paylane portal layout ================= */
.plp{font-family:var(--font-sans);color:var(--ink);font-size:15px;line-height:22px;-webkit-font-smoothing:antialiased;--plp-max:1180px}
.plp *,.plp *::before,.plp *::after{box-sizing:border-box}
[dir="rtl"] .plp,.plp:lang(ar){font-family:var(--font-arabic)}
.plp :where(a:not(.pl-btn)){color:inherit}
.plp .pl-icon{width:var(--icon-md);height:var(--icon-md);flex:none;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.plp .pl-num{font-variant-numeric:tabular-nums lining-nums;direction:ltr;unicode-bidi:isolate}
.plp .pl-cur{font-size:.72em;font-weight:600;color:var(--ink-muted);margin-inline-start:4px}
.plp-flip{transform:none}[dir="rtl"] .plp-flip{transform:scaleX(-1)}
.plp-muted{color:var(--ink-muted)}.plp-small{font-size:13px;line-height:18px}.plp-block{display:block}.plp-danger{color:var(--danger)}
.plp-fine{font-size:12px;line-height:17px;color:var(--ink-muted);margin:0}
.plp-link{color:var(--accent-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;font-size:14px}
.plp-overline{font-size:11px;line-height:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}
[dir="rtl"] .plp-overline{letter-spacing:0}
.plp a:focus-visible,.plp button:focus-visible,.plp input:focus-visible,.plp select:focus-visible,.plp textarea:focus-visible,.plp summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* headings: Bodoni Moda for English, IBM Plex Sans Arabic for Arabic */
.plp-h1{font-family:var(--font-display);font-size:30px;line-height:36px;font-weight:600;margin:0;letter-spacing:-.01em}
.plp-h2{font-family:var(--font-display);font-size:21px;line-height:28px;font-weight:700;margin:0}
[dir="rtl"] .plp-h1,[dir="rtl"] .plp-h2{font-family:var(--font-arabic);letter-spacing:0}
[dir="rtl"] .plp-h1{font-size:24px;line-height:36px}[dir="rtl"] .plp-h2{font-size:18px}

/* shell */
.plp-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--space-8);max-width:var(--plp-max);margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-12);align-items:start}
.plp-nav{position:sticky;top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);background:var(--hero);color:var(--on-hero);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-3)}
.plp-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.plp-nav__item{display:flex;align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-md);text-decoration:none;color:var(--on-hero-muted)!important;font-weight:600;font-size:14px}
.plp-nav__item span{flex:1}
.plp-nav__item:hover{background:rgba(248,245,239,.08);color:var(--on-hero)!important}
.plp-nav__item.is-current{background:var(--accent);color:var(--on-accent)!important}
.plp-nav__item em{font-style:normal;min-width:22px;height:20px;border-radius:10px;background:var(--danger);color:#fff;font-size:11px;line-height:20px;text-align:center;padding:0 6px}
.plp-org{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-3);border-bottom:1px solid rgba(248,245,239,.12)}
.plp-org>span:last-child{display:flex;flex-direction:column;min-width:0;font-size:13px;line-height:18px}
.plp-org b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plp-org small{color:var(--on-hero-muted);font-size:12px}
.plp-avatar{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-weight:700;flex:none}
.plp-avatar--org{border-radius:var(--radius-sm);font-size:13px}
.plp-avatar--lg{width:64px;height:64px;font-size:22px;background:var(--surface-alt);color:var(--ink)}
.plp-lang{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:13px;font-weight:600;text-decoration:none;color:var(--on-hero-muted)!important}
.plp-lang .pl-icon{width:16px;height:16px}
.plp-main{min-width:0;display:flex;flex-direction:column;gap:var(--space-5)}
.plp-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}
.plp-flash{margin:0}
.plp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);align-items:start}
.plp-grid--21{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.plp-col,.plp-stack{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.plp-narrow{max-width:560px;width:100%}
.plp-narrow-l{max-width:720px}
.plp-two{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.plp-right{display:flex;justify-content:flex-end}
.plp-sec{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}
.plp-pad{padding:var(--space-5)!important}
.plp .pl-card{padding:var(--space-1) var(--space-4)}
.plp .pl-btn{text-decoration:none}
.plp .pl-btn .pl-icon{width:18px;height:18px}
.plp .pl-badge .pl-icon{width:14px;height:14px}
.plp .pl-alert{margin:0}
.plp .pl-alert>.pl-icon{flex:none}
.plp .pl-alert__action{color:var(--ink)}
.plp-empty{display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--ink-muted);padding:var(--space-6) var(--space-3);margin:0;text-align:center;font-size:14px}

/* rows */
.plp-row{text-decoration:none;color:var(--ink)!important}
.plp-row:hover .pl-row__title{text-decoration:underline;text-underline-offset:3px}
.plp .pl-row__body{display:flex;flex-direction:column}
.plp .pl-row__end .pl-badge{height:22px;font-size:11px}
.plp-big{width:56px!important;height:56px!important;border-radius:var(--radius-lg)!important}
.plp-check{cursor:pointer}
.plp-check input{width:20px;height:20px;accent-color:var(--primary);flex:none;margin:0}

/* summary, quick actions, score */
.plp .pl-summary__amount .pl-cur{color:var(--on-hero-muted);font-size:15px}
.plp .pl-summary .pl-num{color:var(--on-hero)}
.plp .pl-summary .pl-btn{color:var(--on-accent)}
.plp-qa{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}
.plp-qa__b{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--space-3) var(--space-1);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);text-decoration:none;font-size:12px;line-height:16px;font-weight:600;text-align:center}
.plp-qa__b span{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--surface-alt)}
.plp-score{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);text-decoration:none;box-shadow:var(--shadow-card)}
.plp-score>span{display:flex;flex-direction:column}
.plp-score b{font-size:28px;line-height:34px}
.plp-score small:last-child{color:var(--ink-muted);font-size:12px}
.plp-gauge .g-bg{fill:none;stroke:var(--surface-alt);stroke-width:10;stroke-linecap:round}
.plp-gauge .g-fg{fill:none;stroke:var(--success);stroke-width:10;stroke-linecap:round}
.plp-scorehero{display:flex;flex-direction:column;align-items:center;gap:2px}
.plp-scorehero>b{font-size:44px;line-height:48px;margin-top:-60px}
.plp-scorehero>span{font-weight:700;color:var(--success);margin-top:var(--space-2)}
.plp .pl-cal__day{text-decoration:none}
.plp-dot--review{background:transparent!important;box-shadow:inset 0 0 0 1.5px var(--info);border-radius:50%}

/* calendar month */
.plp-month{padding:var(--space-3)!important}
.plp-month__h{display:flex;align-items:center;justify-content:space-between}
.plp-iconbtn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;text-decoration:none}
.plp-iconbtn:hover{background:var(--surface-alt)}
.plp-month__g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.plp-month__dow{text-align:center;font-size:11px;font-weight:600;color:var(--ink-muted);padding:var(--space-1) 0}
.plp-month__d{display:flex;flex-direction:column;align-items:center;gap:2px;height:48px;padding-top:6px;border-radius:var(--radius-md);text-decoration:none;font-weight:600}
.plp-month__d:hover{background:var(--surface-alt)}
.plp-month__d.is-today>span:first-child{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px}
.plp-month__d[aria-pressed="true"]{background:var(--primary);color:var(--on-primary)}
.plp-month__d[aria-pressed="true"]>span:first-child{color:inherit}
.plp-month__d[aria-pressed="true"] .pl-cal__dot{background:var(--on-primary)}
.plp-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:12px;color:var(--ink-muted);padding:var(--space-2) var(--space-1) 0;margin:0}
.plp-legend span{display:inline-flex;align-items:center;gap:5px}
.plp-total{display:flex;justify-content:space-between;align-items:baseline;margin:0;padding:0 var(--space-1)}
.plp-bars{display:flex;align-items:flex-end;gap:4px;height:130px;margin-top:var(--space-3)}
.plp-bar{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}
.plp-bar>span{width:100%;border-radius:4px 4px 2px 2px;background:var(--navy-700)}
.plp-bar.is-hi>span{background:var(--warning)}
.plp-bar em{font-style:normal;font-size:10px;color:var(--ink-muted);line-height:12px}

/* forms */
.plp .pl-input-wrap{background:var(--surface)}
.plp .pl-input{font:inherit;color:var(--ink);height:100%}
.plp-ta{height:auto!important;padding:var(--space-3) var(--space-4)!important}
.plp-ta textarea{resize:vertical}
.plp-select{position:relative}
.plp-select select{appearance:none;cursor:pointer;background:transparent;padding-inline-end:24px}
.plp-select::after{content:"";position:absolute;inset-inline-end:16px;top:50%;width:8px;height:8px;border-inline-end:2px solid var(--ink-muted);border-bottom:2px solid var(--ink-muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.plp-otp{letter-spacing:.6em;font-size:24px!important;text-align:center}
.plp-drop{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);border:1.5px dashed var(--line-strong);border-radius:var(--radius-lg);text-align:center;background:var(--surface);cursor:pointer}
.plp-drop>span:first-child{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--surface-alt)}
.plp-drop small{color:var(--ink-muted);font-size:13px}
.plp-drop input{max-width:100%;font:inherit;font-size:13px}
.plp-radio{display:flex;flex-direction:column}
.plp-radio label{display:flex;align-items:center;gap:var(--space-3);min-height:52px;border-bottom:1px solid var(--line);cursor:pointer}
.plp-radio label:last-child{border-bottom:0}
.plp-radio input{width:20px;height:20px;accent-color:var(--primary)}
.plp-paybar{position:sticky;bottom:var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sheet)}
.plp-paybar>span{display:flex;flex-direction:column}
.plp-paybar small{font-size:12px;color:var(--ink-muted)}
.plp-switches{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--line);margin:0}
.plp-switches legend{float:left;width:100%;margin-bottom:var(--space-2);padding:0}
.plp-switches>label{display:flex;align-items:center;gap:var(--space-3);min-height:48px;cursor:pointer}
.plp-switches>label input{width:20px;height:20px;accent-color:var(--success)}
.plp-inline{display:flex;align-items:center;gap:var(--space-2);font-weight:600;cursor:pointer}
.plp-inline input{width:18px;height:18px;accent-color:var(--primary)}
.plp-form{max-width:860px}
.plp-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.plp-preview{margin:0;font-weight:600}
.plp-search{max-width:520px}
.plp-search .pl-input-wrap .pl-icon,.plp-filter .pl-input-wrap .pl-icon{color:var(--ink-muted)}

/* detail */
.plp-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}
.plp-hero__amt{font-size:34px;line-height:40px;font-weight:700}
.plp-kv{margin:0;display:flex;flex-direction:column}
.plp-kv>div{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line);font-size:14px}
.plp-kv>div:last-child{border-bottom:0}
.plp-kv dt{color:var(--ink-muted)}
.plp-kv dd{margin:0;text-align:end;font-weight:600;display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.plp-line{background:var(--surface-alt);height:8px}
.plp-tl{padding:var(--space-1) var(--space-3)!important}
.plp-tl__r{display:grid;grid-template-columns:32px 1fr auto auto;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--line);text-decoration:none;font-size:13px}
.plp-tl__r:last-child{border-bottom:0}
.plp-tl__r.is-me{background:var(--surface-alt);border-radius:var(--radius-sm)}
.plp-tl__a{font-weight:600}
.plp-tl__r .pl-badge{height:20px;font-size:10px;padding:0 6px}

/* documents, notifications */
.plp-tabs{display:inline-flex;background:var(--surface-alt);border-radius:var(--radius-md);padding:3px;gap:2px;align-self:flex-start}
.plp-tabs a{display:inline-flex;align-items:center;height:36px;padding:0 var(--space-4);border-radius:9px;text-decoration:none;font-size:14px;font-weight:600;color:var(--ink-muted)}
.plp-tabs a[aria-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}
.plp-folder{display:flex;flex-direction:column;gap:var(--space-2)}
.plp-folder__h{display:flex;align-items:center;gap:var(--space-3)}
.plp-folder__h .pl-icon{color:var(--accent-ink);width:22px;height:22px}
.plp-folder__h>span{display:flex;flex-direction:column}
.plp-folder__h small{color:var(--ink-muted);font-size:12px}
.plp-notif{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line)}
.plp-notif.is-unread{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.plp-notif p{margin:2px 0 4px;font-size:14px}
.plp-notif small{color:var(--ink-muted);font-size:12px}
.plp-notif__ic{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--info-bg);color:var(--info);flex:none}
.plp-done{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);margin:0 auto;text-align:center}
.plp-done .pl-card{width:100%;text-align:start}
.plp-done__ic{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--success-bg);color:var(--success)}
.plp-done__ic.is-fail{background:var(--danger-bg);color:var(--danger)}
.plp-done__ic .pl-icon{width:36px;height:36px;stroke-width:2.4}
.plp-done__amt{font-size:34px;line-height:40px;font-weight:700}

/* sign in */
.plp-auth{max-width:420px;margin:var(--space-12) auto;padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-4)}
.plp-auth p{margin:0}
.plp-auth .plp-lang{color:var(--ink-muted)!important;align-self:center}
.plp-auth #loginform p{margin:0 0 var(--space-3);display:flex;flex-direction:column;gap:4px}
.plp-auth #loginform input[type=text],.plp-auth #loginform input[type=password]{height:var(--control-md);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);padding:0 var(--space-4);font:inherit}
.plp-auth #loginform .button{height:var(--control-md);padding:0 var(--space-5);border:0;border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);font:inherit;font-weight:600;cursor:pointer}
.plp-auth .login-remember{flex-direction:row!important;align-items:center}

/* company */
.plp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}
.plp-kpi{display:flex;flex-direction:column;gap:4px;padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);min-width:0}
.plp-kpi__l{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-muted);font-weight:600}
.plp-kpi__l .pl-icon{width:16px;height:16px;color:var(--accent-ink)}
.plp-kpi b{font-size:clamp(17px,1.7vw,22px);line-height:28px;white-space:nowrap}
.plp-kpi small{font-size:12px;color:var(--ink-muted)}
.plp-kpi.is-danger b{color:var(--danger)}
.plp-cbars{display:flex;gap:var(--space-4);height:200px;align-items:flex-end;margin-top:var(--space-3)}
.plp-cb{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}
.plp-cb__in{flex:1;width:100%;position:relative}
.plp-cb__in span{position:absolute;bottom:0;left:20%;width:60%;border-radius:6px 6px 2px 2px}
.plp-cb__in .exp{background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--line-strong)}
.plp-cb__in .col{left:30%;width:40%;background:var(--navy-700)}
.plp-cb em{font-style:normal;font-size:12px;color:var(--ink-muted)}
.plp-cb b{font-size:12px}
.plp-sw{display:inline-block;width:10px;height:10px;border-radius:2px}
.plp-sw.exp{background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--line-strong)}.plp-sw.col{background:var(--navy-700)}
.plp-warns{display:flex;flex-direction:column;gap:var(--space-2)}
.plp-warn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--info-bg);text-decoration:none}
.plp-warn>span{flex:1;display:flex;flex-direction:column;font-size:13px;line-height:18px}
.plp-warn>.pl-icon:first-child{color:var(--info)}
.plp-warn.is-danger{background:var(--danger-bg)}.plp-warn.is-danger>.pl-icon:first-child{color:var(--danger)}
.plp-warn.is-warning{background:var(--warning-bg)}.plp-warn.is-warning>.pl-icon:first-child{color:var(--warning)}
.plp-aging{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}
.plp-aging>div{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:var(--space-3);font-size:13px}
.plp-aging__b{height:10px;border-radius:5px;background:var(--surface-alt);overflow:hidden}
.plp-aging__b i{display:block;height:100%;border-radius:5px;background:var(--warning)}
.plp-aging__b .a2,.plp-aging__b .a3{background:var(--danger)}
.plp-tools{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}
.plp-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.plp-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 var(--space-3);border:1.5px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);text-decoration:none;font-size:13px;font-weight:600}
.plp-chip em{font-style:normal;opacity:.7;font-weight:500}
.plp-chip.is-on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)!important}
.plp-filter{display:flex;gap:var(--space-2);flex-wrap:wrap}
.plp-filter .pl-input-wrap{height:40px}
.plp-bulk{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--hero);color:var(--on-hero);margin-bottom:var(--space-3)}
.plp-bulk[hidden]{display:none}
.plp-bulk b{margin-inline-end:auto}
.plp-bulk .pl-btn{background:var(--accent);color:var(--on-accent)}
.plp-bulk .pl-btn--secondary{background:transparent;color:var(--on-hero);border-color:var(--on-hero-muted)}
.plp-table-wrap{padding:0!important;overflow:auto}
.plp-table{width:100%;border-collapse:collapse;font-size:13px}
.plp-table th{text-align:start;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:700;padding:var(--space-3);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--surface);position:sticky;top:0}
[dir="rtl"] .plp-table th{letter-spacing:0}
.plp-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);white-space:nowrap;height:44px}
.plp-table tr:last-child td{border-bottom:0}
.plp-table .num{text-align:end}
.plp-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}
.plp-table .pl-input-wrap{height:34px;padding:0 var(--space-3);border-radius:var(--radius-sm)}
.plp-table select{font-size:12px}
.plp-pager{display:flex;gap:var(--space-2);flex-wrap:wrap}
.plp-proof{display:flex;gap:var(--space-5);padding:var(--space-5)!important}
.plp-proof__file{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);width:140px;min-height:170px;flex:none;border-radius:var(--radius-md);background:var(--surface-alt);text-decoration:none;font-size:12px;font-weight:600;overflow:hidden}
.plp-proof__file img{width:100%;height:130px;object-fit:cover}
.plp-proof__file .pl-icon{width:40px;height:40px;color:var(--ink-muted)}
.plp-proof__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}
.plp-proof__h{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:15px}
.plp-proof__main .plp-kv,.plp-rs .plp-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));column-gap:var(--space-5)}
.plp-proof__main .plp-kv>div,.plp-rs .plp-kv>div{flex-direction:column;align-items:flex-start;gap:2px;border-bottom:0;padding:var(--space-2) 0;font-size:13px}
.plp-proof__main .plp-kv dd,.plp-rs .plp-kv dd{justify-content:flex-start;text-align:start}
.plp-proof__act{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center;margin-top:var(--space-2)}
.plp-proof__act form{margin:0}
.plp-reject{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}
.plp-reject .pl-input-wrap{height:36px;max-width:300px}
.plp-reject select{font-size:12px}
.plp-prof{display:flex;align-items:center;gap:var(--space-4)}
.plp-prof>span:last-child{display:flex;flex-direction:column}
.plp-prof b{font-size:20px}
.plp-code{background:var(--surface-alt);border-radius:var(--radius-md);padding:var(--space-4);font-size:12px;line-height:20px;overflow:auto;white-space:pre;margin:0}

/* responsive: bottom navigation on phones */
@media (max-width:900px){
	.plp-shell{grid-template-columns:1fr;padding:var(--space-4) var(--space-4) 110px;gap:var(--space-5)}
	.plp-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;top:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));box-shadow:var(--shadow-sheet)}
	.plp-org,.plp-lang{display:none}
	.plp-nav ul{flex-direction:row;justify-content:space-around;overflow-x:auto}
	.plp-nav__item{flex-direction:column;gap:2px;min-height:52px;padding:4px 6px;font-size:10px}
	.plp-nav__item span{flex:none}
	.plp-nav__item em{position:absolute;margin-inline-start:18px;margin-top:-4px}
	.plp-grid,.plp-grid--21,.plp-form__grid{grid-template-columns:1fr}
	.plp-kpis{grid-template-columns:1fr 1fr}
	.plp-proof{flex-direction:column}
	.plp-proof__file{width:100%;min-height:120px}
}
@media (prefers-reduced-motion:reduce){.plp *{transition:none!important;animation:none!important}}
/* inside other themes: use the wide width, and stay readable in narrow columns */
.plp.alignwide{max-width:min(var(--plp-max),100%);margin-inline:auto}
.plp .pl-summary__amount{flex-wrap:wrap;font-size:clamp(26px,4vw,34px)}
.plp .pl-summary .pl-btn{white-space:normal;text-align:center}
