html,body.pfla-blank-page{margin:0!important;padding:0!important;width:100%;min-height:100%;}body.pfla-blank-page{background:#f4f7f8;}body.pfla-blank-page #pfla-page-root{width:100%;min-height:100vh;margin:0;padding:0;}body.pfla-blank-page #pfla-page-root>p:empty{display:none;}
:root{--pfla-accent:#12b8a6;--pfla-dark:#17212b;--pfla-bg:#f4f7f8;--pfla-border:#dfe7ea;--pfla-text:#263238;--pfla-muted:#6b7b83}
.pfla-app{display:flex;min-height:75vh;background:var(--pfla-bg);color:var(--pfla-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border-radius:14px;overflow:hidden}
.pfla-sidebar{width:245px;flex:0 0 245px;background:var(--pfla-dark);color:#fff;min-height:75vh}.pfla-brand{padding:22px 20px;font-size:20px;font-weight:800;border-bottom:1px solid rgba(255,255,255,.1)}.pfla-sidebar nav{padding:10px}.pfla-sidebar a{display:flex;gap:11px;align-items:center;padding:11px 12px;margin:3px 0;color:#dce5e9;text-decoration:none;border-radius:8px;font-size:14px}.pfla-sidebar a:hover,.pfla-sidebar a.active{background:var(--pfla-accent);color:#fff}.pfla-sidebar a span{width:22px;text-align:center}
.pfla-main{flex:1;min-width:0;padding:26px}.pfla-mobile-head{display:none}.pfla-page-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.pfla-page-title h1{font-size:28px;line-height:1.2;margin:0 0 5px}.pfla-page-title p{margin:0;color:var(--pfla-muted)}
.pfla-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.pfla-card{background:#fff;border:1px solid var(--pfla-border);border-radius:12px;padding:18px;text-decoration:none;color:inherit}.pfla-card span{display:block;color:var(--pfla-muted);font-size:13px;margin-bottom:8px}.pfla-card strong{font-size:22px}.pfla-card.link:hover{border-color:var(--pfla-accent)}
.pfla-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pfla-panel{background:#fff;border:1px solid var(--pfla-border);border-radius:12px;padding:18px;margin-bottom:18px;min-width:0}.pfla-panel h2{font-size:18px;margin:0 0 15px}.pfla-panel h3{font-size:15px;margin:18px 0 10px}.pfla-subcard{background:#f8fbfb;border:1px solid var(--pfla-border);border-radius:10px;padding:14px}.pfla-details summary{cursor:pointer;font-weight:700;font-size:17px;margin-bottom:16px}
.pfla-form{display:grid;gap:13px}.pfla-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfla-form label{display:grid;gap:6px;font-size:13px;font-weight:600}.pfla-form input,.pfla-form select,.pfla-form textarea,.pfla-toolbar input,.pfla-toolbar select{width:100%;box-sizing:border-box;border:1px solid #ccd8dc;border-radius:8px;background:#fff;padding:10px 11px;font:inherit;min-height:42px}.pfla-form textarea{min-height:80px;resize:vertical}.pfla-form .span-2{grid-column:1/-1}.pfla-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}.pfla-check input{width:auto;min-height:auto}.pfla-btn,.pfla-link-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--pfla-accent);color:#fff!important;border:0;border-radius:8px;padding:10px 16px;font-weight:700;text-decoration:none;cursor:pointer}.pfla-link-btn{padding:7px 11px;font-size:13px}
.pfla-table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.pfla-table-wrap table{width:100%;border-collapse:collapse;min-width:680px}.pfla-table-wrap th{background:var(--pfla-accent);color:#fff;text-align:left;padding:10px;font-size:13px;white-space:nowrap}.pfla-table-wrap td{border-bottom:1px solid var(--pfla-border);padding:10px;font-size:13px;vertical-align:top}.pfla-toolbar{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px}.pfla-toolbar>*{max-width:230px}.pfla-status{display:inline-block;padding:5px 8px;border-radius:20px;font-size:12px;font-weight:700;background:#edf2f4}.pfla-status.paid,.pfla-status.received{background:#e6f7f0}.pfla-status.overdue{background:#fdeaea}.pfla-status.due{background:#fff4d6}.pfla-status.upcoming{background:#eaf2ff}.pfla-status.part-paid,.pfla-status.part-received{background:#fff0df}.pfla-notice{background:#e7faf7;border:1px solid #a7e5dc;padding:10px 13px;border-radius:8px;margin-bottom:15px}.pfla-tree ul{margin:8px 0 8px 18px;padding-left:15px;border-left:1px solid var(--pfla-border)}.pfla-tree li{margin:8px 0}.pfla-recurrence-fields{display:none;margin-top:12px}.pfla-check:has(input:checked)+.pfla-recurrence-fields{display:block}
@media(max-width:1024px){.pfla-sidebar{width:205px;flex-basis:205px}.pfla-main{padding:20px}.pfla-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pfla-grid-2{grid-template-columns:1fr}.pfla-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.pfla-app{display:block;border-radius:0;min-height:100vh}.pfla-sidebar{position:fixed;left:-270px;top:0;bottom:0;width:260px;z-index:99999;transition:left .25s;box-shadow:4px 0 24px rgba(0,0,0,.18)}.pfla-app.menu-open .pfla-sidebar{left:0}.pfla-main{padding:14px}.pfla-mobile-head{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--pfla-border);padding:10px 12px;margin:-4px 0 15px;border-radius:10px;position:sticky;top:0;z-index:20}.pfla-menu-btn{border:0;background:var(--pfla-accent);color:#fff;border-radius:7px;width:38px;height:36px;font-size:20px}.pfla-page-title h1{font-size:23px}.pfla-page-title p{font-size:13px}.pfla-cards{grid-template-columns:1fr 1fr;gap:9px}.pfla-card{padding:13px}.pfla-card strong{font-size:17px}.pfla-panel{padding:13px}.pfla-form-grid{grid-template-columns:1fr}.pfla-form .span-2{grid-column:auto}.pfla-subcard.span-2{grid-column:auto}.pfla-toolbar{display:grid;grid-template-columns:1fr 1fr}.pfla-toolbar>*{max-width:none}.pfla-table-wrap table{min-width:650px}}
@media(max-width:430px){.pfla-cards{grid-template-columns:1fr}.pfla-toolbar{grid-template-columns:1fr}}
.pfla-field-error{display:block;min-height:0;color:#b42318;font-size:12px;font-weight:600;line-height:1.35;margin-top:1px}.pfla-field-error:empty{display:none}.pfla-form input.pfla-invalid,.pfla-form select.pfla-invalid,.pfla-form textarea.pfla-invalid{border-color:#d92d20!important;box-shadow:0 0 0 2px rgba(217,45,32,.08)}.pfla-validation-summary{grid-column:1/-1;background:#fff1f0;border:1px solid #f3b5b0;color:#9f1c14;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:700}.pfla-notice.pfla-notice-error{background:#fff1f0;border-color:#f3b5b0;color:#9f1c14}

/* Ledger Group delete action */
.pfla-group-row{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}
.pfla-inline-delete{display:inline;margin:0}
.pfla-delete-btn{border:1px solid #b42318;background:#fff;color:#b42318;border-radius:7px;padding:5px 9px;font-size:12px;line-height:1.2;cursor:pointer}
.pfla-delete-btn:hover,.pfla-delete-btn:focus{background:#b42318;color:#fff}
@media (max-width:600px){.pfla-group-row{align-items:flex-start}.pfla-delete-btn{padding:6px 9px}}

/* Ledger Groups tabular view */
.pfla-groups-table{min-width:760px!important}
.pfla-group-indent{display:inline-block;font-weight:700;padding-left:calc(var(--pfla-depth,0) * 22px);position:relative}
.pfla-group-indent::before{content:"";position:absolute;left:calc((var(--pfla-depth,0) * 22px) - 14px);top:50%;width:10px;border-top:1px solid var(--pfla-border);display:none}
.pfla-group-indent[style*="--pfla-depth:1"]::before,.pfla-group-indent[style*="--pfla-depth:2"]::before,.pfla-group-indent[style*="--pfla-depth:3"]::before,.pfla-group-indent[style*="--pfla-depth:4"]::before,.pfla-group-indent[style*="--pfla-depth:5"]::before{display:block}
.pfla-muted-action{color:var(--pfla-muted);font-size:12px;font-weight:600}


/* Dedicated Ledger Group hierarchy */
.pfla-hierarchy-tree>ul{margin:0;padding-left:0;list-style:none}
.pfla-hierarchy-tree ul{list-style:none;margin:0;padding-left:24px}
.pfla-hierarchy-tree li{position:relative;margin:8px 0}
.pfla-hierarchy-tree li::before{content:"";position:absolute;left:-14px;top:-9px;bottom:50%;border-left:1px solid var(--pfla-border)}
.pfla-hierarchy-tree li::after{content:"";position:absolute;left:-14px;top:50%;width:12px;border-top:1px solid var(--pfla-border)}
.pfla-hierarchy-tree>ul>li::before,.pfla-hierarchy-tree>ul>li::after{display:none}
.pfla-hierarchy-tree .pfla-group-row{justify-content:flex-start;min-height:34px;padding:7px 10px;border:1px solid var(--pfla-border);border-radius:8px;background:var(--pfla-surface);width:max-content;max-width:100%}
.pfla-hierarchy-tree .pfla-inline-delete{display:none}
@media(max-width:600px){.pfla-hierarchy-tree ul{padding-left:18px}.pfla-hierarchy-tree .pfla-group-row{width:auto}}

.pfla-page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.pfla-btn-secondary{background:#fff!important;color:var(--pfla-text)!important;border:1px solid var(--pfla-border)!important}.pfla-btn-secondary:hover{background:#f7fafb!important}
@media(max-width:767px){.pfla-page-title{gap:12px}.pfla-page-actions{flex-shrink:0}.pfla-page-actions .pfla-btn,.pfla-page-actions .pfla-link-btn{padding:9px 12px;font-size:13px}}

/* v1.2.0 Group-driven configuration */
.pfla-tabs{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap}.pfla-tabs a{padding:9px 13px;border:1px solid var(--pfla-border);border-radius:8px;background:#fff;color:var(--pfla-text);text-decoration:none;font-weight:700;font-size:13px}.pfla-tabs a.active{background:var(--pfla-accent);border-color:var(--pfla-accent);color:#fff}.pfla-breadcrumb{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:16px;font-size:13px}.pfla-breadcrumb a{color:var(--pfla-text);font-weight:700;text-decoration:none}.pfla-breadcrumb span{color:var(--pfla-muted)}.pfla-card small{display:block;margin-top:8px;color:var(--pfla-muted);font-size:12px}

.pfla-actions-inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap}.pfla-actions-inline form{margin:0;display:inline-flex;flex:0 0 auto}.pfla-actions-inline button{white-space:nowrap;flex:0 0 auto}

.pfla-config-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.pfla-config-card{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.pfla-config-card strong{font-size:16px}.pfla-config-card span{font-size:13px;color:#6b7280;line-height:1.45;flex:1}.pfla-config-card .pfla-btn{align-self:flex-start}@media(max-width:900px){.pfla-config-actions{grid-template-columns:1fr}}


/* v1.2.6 compact CRUD icon actions */
.pfla-action-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--pfla-border);border-radius:8px;background:#fff;color:var(--pfla-text);padding:0;cursor:pointer;text-decoration:none;box-sizing:border-box;transition:background .15s,border-color .15s,color .15s,transform .15s}
.pfla-action-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.pfla-action-icon:hover,.pfla-action-icon:focus{background:#f2f7f8;border-color:#9bb0b7;color:var(--pfla-accent);outline:none;transform:translateY(-1px)}
.pfla-action-delete{color:#b42318;border-color:#efc3bf}
.pfla-action-delete:hover,.pfla-action-delete:focus{background:#fff1f0;border-color:#d92d20;color:#b42318}
.pfla-actions-inline{gap:6px;flex-wrap:nowrap;white-space:nowrap}.pfla-actions-inline form{display:inline-flex;margin:0;flex:0 0 auto}.pfla-action-icons{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}.pfla-action-icons form,.pfla-inline-form{display:inline-flex;margin:0;flex:0 0 auto}.pfla-table-wrap td:last-child{white-space:nowrap}
@media(max-width:767px){.pfla-action-icon{width:36px;height:36px}.pfla-action-icon svg{width:18px;height:18px}}

/* v1.2.7 Group Hierarchy mind-map view */
.pfla-mindmap-panel{padding:10px 12px 18px;overflow:hidden}
.pfla-mindmap-scroll{overflow:auto;-webkit-overflow-scrolling:touch;padding:24px 18px 30px;min-height:360px}
.pfla-mindmap{display:flex;align-items:center;gap:44px;width:max-content;min-width:100%;padding:8px 18px}
.pfla-mm-center{width:150px;min-width:150px;min-height:82px;border:2px solid var(--pfla-accent);border-radius:18px;background:#f6fbfb;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 8px 24px rgba(20,55,65,.08);position:relative}
.pfla-mm-center::after{content:"";position:absolute;right:-45px;top:50%;width:44px;border-top:2px solid #bfd0d5}
.pfla-mm-center strong{font-size:17px}.pfla-mm-center small{margin-top:5px;color:var(--pfla-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.pfla-mm-roots{display:flex;flex-direction:column;gap:22px;position:relative;padding-left:34px}
.pfla-mm-roots::before{content:"";position:absolute;left:0;top:36px;bottom:36px;border-left:2px solid #bfd0d5}
.pfla-mm-branch{display:flex;align-items:center;gap:30px;position:relative}
.pfla-mm-roots>.pfla-mm-branch::before,.pfla-mm-children>.pfla-mm-branch::before{content:"";position:absolute;left:-34px;top:50%;width:34px;border-top:2px solid #bfd0d5}
.pfla-mm-node-wrap{position:relative;z-index:2}
.pfla-mm-node{width:178px;min-height:58px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:10px 13px;background:#fff;border:1px solid #cfdde1;border-radius:12px;text-decoration:none;color:var(--pfla-text);box-shadow:0 3px 12px rgba(20,55,65,.06);transition:transform .15s,border-color .15s,box-shadow .15s,background .15s}
.pfla-mm-node:hover,.pfla-mm-node:focus{transform:translateY(-1px);border-color:var(--pfla-accent);box-shadow:0 7px 18px rgba(20,55,65,.11);outline:none}
.pfla-mm-node.is-root{font-weight:700;border-width:2px;background:#fbfefe}
.pfla-mm-node.is-selected{border-color:var(--pfla-accent);background:#eaf8f6;box-shadow:0 0 0 3px rgba(18,184,166,.12)}
.pfla-mm-node strong{font-size:13px;line-height:1.25}.pfla-mm-node small{margin-top:5px;color:var(--pfla-muted);font-size:10px;font-weight:600}
.pfla-mm-children{display:flex;flex-direction:column;gap:12px;position:relative;padding-left:32px}
.pfla-mm-children::before{content:"";position:absolute;left:0;top:29px;bottom:29px;border-left:1.5px solid #c8d7db}
.pfla-mm-children>.pfla-mm-branch::before{left:-32px;width:32px;border-top-width:1.5px;border-color:#c8d7db}
.pfla-mm-details{margin-top:18px}.pfla-mm-selected-title{margin-bottom:14px}.pfla-mm-selected-title h2{margin:0;font-size:19px}
@media(max-width:1024px){.pfla-mindmap{gap:34px}.pfla-mm-center{width:135px;min-width:135px}.pfla-mm-node{width:165px}.pfla-mm-branch{gap:25px}}
@media(max-width:767px){.pfla-mindmap-scroll{padding:16px 6px 24px}.pfla-mindmap{gap:30px;padding:4px 8px}.pfla-mm-center{width:120px;min-width:120px;min-height:70px}.pfla-mm-center::after{right:-31px;width:30px}.pfla-mm-roots{padding-left:24px;gap:16px}.pfla-mm-roots>.pfla-mm-branch::before{left:-24px;width:24px}.pfla-mm-node{width:150px;min-height:54px;padding:9px 11px}.pfla-mm-branch{gap:20px}.pfla-mm-children{padding-left:24px;gap:9px}.pfla-mm-children>.pfla-mm-branch::before{left:-24px;width:24px}.pfla-mm-selected-title{align-items:flex-start;flex-direction:column}.pfla-mm-selected-title .pfla-page-actions{width:100%}}


/* v1.3.2 Searchable dropdowns - visible combobox input for every SELECT */
.pfla-searchable-select{position:relative;width:100%;min-width:0;font-weight:400}
.pfla-searchable-select .pfla-native-select{position:absolute!important;left:0!important;bottom:0!important;width:1px!important;height:1px!important;min-height:1px!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important;border:0!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;overflow:hidden!important}
.pfla-select-combobox{width:100%!important;min-height:42px!important;box-sizing:border-box!important;border:1px solid #ccd8dc!important;border-radius:8px!important;background:#fff!important;color:var(--pfla-text)!important;padding:9px 34px 9px 11px!important;font:inherit!important;outline:none!important}
.pfla-select-combobox:hover,.pfla-select-combobox:focus{border-color:var(--pfla-accent)!important;box-shadow:0 0 0 2px rgba(18,184,166,.09)!important}
.pfla-select-combobox::placeholder{color:#7f8d93;opacity:1}
.pfla-select-chevron{position:absolute;right:11px;top:21px;transform:translateY(-50%);z-index:3;font-size:17px;color:var(--pfla-muted);line-height:1;transition:transform .15s;cursor:pointer;user-select:none}
.pfla-searchable-select.is-open .pfla-select-chevron{transform:translateY(-50%) rotate(180deg)}
.pfla-searchable-select.is-disabled .pfla-select-combobox{background:#f1f4f5!important;color:#8a989e!important;cursor:not-allowed}
.pfla-select-panel{display:none;position:absolute;z-index:100000;left:0;right:0;top:calc(100% + 5px);background:#fff;border:1px solid #cfdadd;border-radius:10px;box-shadow:0 12px 30px rgba(20,45,55,.16);padding:6px;min-width:180px;max-height:300px;overflow:hidden}
.pfla-searchable-select.is-open .pfla-select-panel{display:block}
.pfla-select-options{overflow:auto;max-height:286px;padding:1px}
.pfla-select-option{width:100%;border:0;background:#fff;color:var(--pfla-text);border-radius:7px;padding:9px 10px;display:flex;align-items:center;gap:8px;text-align:left;font:inherit;cursor:pointer}
.pfla-select-option:hover,.pfla-select-option:focus,.pfla-select-option.is-active{background:#eef9f7;outline:none}
.pfla-select-option.is-selected{background:#e4f7f4;font-weight:700}
.pfla-select-option.is-disabled{color:#9aa7ac;background:#fafafa;cursor:not-allowed}
.pfla-select-check{display:none;width:16px;height:16px;flex:0 0 16px;border-radius:4px;background:var(--pfla-accent);color:#fff;align-items:center;justify-content:center;font-size:11px}
.pfla-searchable-select.is-multiple .pfla-select-option .pfla-select-check{display:flex;visibility:hidden}
.pfla-searchable-select.is-multiple .pfla-select-option.is-selected .pfla-select-check{visibility:visible}
.pfla-select-no-results{padding:12px 10px;color:var(--pfla-muted);font-size:12px;text-align:center}
.pfla-toolbar .pfla-searchable-select{max-width:230px}
.pfla-toolbar .pfla-searchable-select .pfla-select-panel{min-width:230px}
@media(max-width:767px){.pfla-select-panel{position:fixed;left:12px;right:12px;top:18vh;max-height:64vh;z-index:100001}.pfla-select-options{max-height:calc(64vh - 14px)}.pfla-toolbar .pfla-searchable-select{max-width:none}.pfla-toolbar .pfla-searchable-select .pfla-select-panel{min-width:0}}

/* v1.3.4 - Simple Custom Fields Master + Ledger-level manual relationships */
.pfla-toolbar-search-wide{justify-content:flex-start}.pfla-toolbar-search-wide .pfla-search{max-width:420px;width:min(100%,420px)}
.pfla-custom-field-values{margin-top:14px}.pfla-ledger-custom-field{min-width:0}
.pfla-select-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.pfla-select-chip{display:inline-flex;align-items:center;gap:6px;background:#eef9f7;border:1px solid #bfe8e1;border-radius:999px;padding:5px 8px 5px 10px;font-size:12px;font-weight:700;color:var(--pfla-text);max-width:100%}
.pfla-select-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.pfla-select-chip button{border:0;background:transparent;color:#66777e;font-size:16px;line-height:1;padding:0;cursor:pointer}
.pfla-select-chip button:hover{color:#b42318}
.pfla-searchable-select.is-multiple .pfla-select-combobox{margin-top:2px}
@media(max-width:767px){.pfla-toolbar-search-wide{display:block}.pfla-toolbar-search-wide .pfla-search{max-width:none}.pfla-select-chip>span{max-width:190px}}

/* v1.3.10 universal list filters */
.pfla-list-filter-toolbar{display:flex;gap:12px;justify-content:flex-end;align-items:center;margin-bottom:12px}
.pfla-list-filter-toolbar .pfla-search,.pfla-list-filter-toolbar .pfla-searchable-select,.pfla-list-filter-toolbar select{flex:0 1 270px;max-width:270px}
@media(max-width:767px){.pfla-list-filter-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pfla-list-filter-toolbar .pfla-search,.pfla-list-filter-toolbar .pfla-searchable-select,.pfla-list-filter-toolbar select{max-width:none;width:100%}}
@media(max-width:480px){.pfla-list-filter-toolbar{grid-template-columns:1fr}}

/* v1.3.12 custom app login */
.pfla-login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;background:linear-gradient(145deg,#eef7f6 0%,#f7fafb 55%,#eef2f4 100%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--pfla-text)}
.pfla-login-card{width:min(100%,420px);background:#fff;border:1px solid var(--pfla-border);border-radius:18px;box-shadow:0 22px 60px rgba(20,45,55,.12);padding:34px 32px;box-sizing:border-box}
.pfla-login-mark{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:var(--pfla-accent);color:#fff;font-size:27px;font-weight:800;margin-bottom:15px}
.pfla-login-brand{font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--pfla-accent);margin-bottom:5px}
.pfla-login-card h1{margin:0 0 22px;font-size:30px;line-height:1.15;color:var(--pfla-dark)}
.pfla-login-form{display:grid;gap:15px}.pfla-login-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.pfla-login-form input[type="text"],.pfla-login-form input[type="password"]{width:100%;box-sizing:border-box;min-height:46px;border:1px solid #cbd8dc;border-radius:9px;padding:11px 12px;font:inherit;background:#fff;color:var(--pfla-text);outline:none}.pfla-login-form input:focus{border-color:var(--pfla-accent);box-shadow:0 0 0 3px rgba(18,184,166,.11)}
.pfla-login-remember{display:flex!important;align-items:center;gap:8px!important;font-weight:600!important}.pfla-login-remember input{width:16px;height:16px;margin:0}.pfla-login-submit{width:100%;min-height:46px;border:0;border-radius:9px;background:var(--pfla-accent);color:#fff;font-weight:800;font-size:15px;cursor:pointer}.pfla-login-submit:hover,.pfla-login-submit:focus{filter:brightness(.96);outline:none}
.pfla-login-error{background:#fff1f0;border:1px solid #f3b5b0;color:#9f1c14;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:700;margin-bottom:14px}
.pfla-sidebar-logout{margin-top:12px!important;border-top:1px solid rgba(255,255,255,.1);border-radius:0!important;padding-top:15px!important}
@media(max-width:480px){.pfla-login-shell{padding:14px}.pfla-login-card{padding:28px 20px;border-radius:14px}.pfla-login-card h1{font-size:26px}}

/* v1.3.17 universal 20-row pagination */
.pfla-pagination{display:none;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}
.pfla-pagination-info{font-size:12px;color:var(--pfla-muted);font-weight:600}
.pfla-pagination-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.pfla-page-btn{min-width:34px;height:34px;padding:0 9px;border:1px solid var(--pfla-border);border-radius:7px;background:#fff;color:var(--pfla-text);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.pfla-page-btn:hover:not(:disabled),.pfla-page-btn:focus:not(:disabled){border-color:var(--pfla-accent);color:var(--pfla-accent);outline:none}
.pfla-page-btn.is-active{background:var(--pfla-accent);border-color:var(--pfla-accent);color:#fff}
.pfla-page-btn:disabled{opacity:.4;cursor:not-allowed}
.pfla-page-ellipsis{padding:0 3px;color:var(--pfla-muted)}
@media(max-width:767px){.pfla-pagination{align-items:flex-start;flex-direction:column}.pfla-pagination-nav{width:100%}.pfla-page-btn{min-width:32px;height:32px;padding:0 7px}}
