:root{--pk-bg:#F8FAFC;--pk-accent:#FCE42B;--pk-text:#0F172A;--pk-muted:#475569;--pk-card:#FFFFFF;--pk-border:#E2E8F0;--pk-brand:#2B343C}
.pakasso-lm-wrap{max-width:1100px;margin:24px auto;padding:0 16px}
.pakasso-lm-hero{background:var(--pk-card);color:var(--pk-text);padding:18px 20px;border-radius:16px;box-shadow:0 12px 28px rgba(15,23,42,.06);border:1px solid var(--pk-border)}
.pakasso-lm-hero h2{margin:0 0 6px;font-size:22px}
.pakasso-notice{margin-top:12px;padding:10px;border-radius:12px}
.pakasso-notice.ok{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
.pakasso-notice.err{background:#fef2f2;color:#7f1d1d;border:1px solid #fecaca}
.pakasso-lm-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}
@media(min-width:680px){.pakasso-lm-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.pakasso-lm-grid{grid-template-columns:1fr 1fr 1fr}}
.pakasso-lm-card{background:var(--pk-card);color:var(--pk-text);border:1px solid var(--pk-border);border-radius:16px;padding:14px;box-shadow:0 8px 18px rgba(15,23,42,.06)}
.pakasso-lm-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.pakasso-lm-card h3{margin:0;font-size:18px}
.status{padding:4px 10px;border-radius:999px;background:var(--pk-accent);color:#111;font-weight:700;font-size:12px}
.status-approved{background:#a7f3d0}.status-disbursed{background:#bef264}.status-pending{background:#fde68a}.status-under-review{background:#facc15}.status-rejected{background:#fecaca}.status-closed{background:#d1d5db}.status-paid{background:#d1fae5}
.pakasso-progress{margin:8px 0 10px}.pakasso-progress .bar{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden;border:1px solid var(--pk-border)}
.pakasso-progress .bar .fill{display:block;height:100%;background:var(--pk-accent);width:0;transition:width .6s ease, box-shadow .3s ease}
.pakasso-progress .bar .fill.state-paid{background:#16a34a}
.pakasso-progress .bar .fill.state-overdue{background:#f59e0b}
.pakasso-lm-card.state-paid{border-color:#86efac; box-shadow:0 8px 22px rgba(22,163,74,.12)}
.pakasso-lm-card.state-overdue{border-color:#fed7aa}
.status{transition: box-shadow .3s ease}
.status.status-paid{box-shadow:0 0 0 3px rgba(22,163,74,.18)}
.status.status-pending, .status.status-under-review{box-shadow:0 0 0 3px rgba(252,228,43,.18)}
.status.status-rejected{box-shadow:0 0 0 3px rgba(248,113,113,.18)}
.pakasso-progress .meta{margin-top:6px;font-size:12px;color:var(--pk-muted)}
.pakasso-lm-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 4px}
.pakasso-lm-stats label{display:block;color:var(--pk-muted);font-size:12px;margin-bottom:2px}
.pakasso-lm-stats strong{font-size:15px}
.pakasso-lm-details summary{cursor:pointer;font-weight:800;color:#111;background:var(--pk-accent);padding:10px 12px;border-radius:12px;margin-top:8px}
.pakasso-lm-repay{border:1px solid var(--pk-border);border-top:0;background:#FAFAFA;color:var(--pk-text);padding:12px;border-bottom-left-radius:12px;border-bottom-right-radius:12px}
.pakasso-lm-repay .bank h4{margin:0 0 6px;font-size:15px;color:var(--pk-brand)}
.pakasso-lm-repay-form label{display:block;margin-top:10px;margin-bottom:4px;font-size:13px;color:var(--pk-text)}
.pakasso-lm-repay-form input,.pakasso-lm-repay-form textarea{width:100%;padding:10px;border-radius:12px;border:1px solid var(--pk-border);background:#fff;color:var(--pk-text)}
.pakasso-btn{margin-top:12px;background:var(--pk-accent);color:#111;border:none;border-radius:14px;padding:10px 14px;font-weight:900;cursor:pointer}
.pakasso-btn[disabled]{opacity:.6;cursor:not-allowed}
.pakasso-paid-note{background:#f0fdf4;border:1px solid #86efac;color:#14532d;padding:10px;border-radius:12px;margin-top:10px}
.pakasso-await{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;padding:10px;border-radius:12px;margin-top:10px;font-weight:700}
.pakasso-muted{color:var(--pk-muted);font-size:13px;margin-top:6px}
.pakasso-auth-form{max-width:420px;margin:20px auto;background:var(--pk-card);padding:18px;border:1px solid var(--pk-border);border-radius:16px;color:var(--pk-text);box-shadow:0 12px 28px rgba(15,23,42,.06)}
.pakasso-auth-form label{display:block;margin:12px 0 6px}
.pakasso-error{background:#fef2f2;color:#7f1d1d;padding:10px;border-radius:12px}
.pakasso-hint{color:var(--pk-muted);margin:0 0 8px}
.pakasso-lm-card a{color:var(--pk-brand)}
