.pky-portal-shell,.pky-login-shell{--ink:#16181c;--muted:#777e88;--line:#e8eaee;--surface:#fff;--soft:#f5f6f8;--danger:#a8342b;max-width:1180px;margin:30px auto;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)}.pky-portal-shell *,.pky-login-shell *{box-sizing:border-box}.pky-portal-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 4px 17px}.pky-portal-brand img{max-width:185px;max-height:64px;object-fit:contain}.pky-portal-brand strong,.pky-login-wordmark{font-size:18px;font-weight:900;letter-spacing:5px}.pky-logout{font-size:12px;font-weight:800;color:#555d68;text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:8px 11px}.pky-portal-hero{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:center;border-radius:26px;padding:34px;background:linear-gradient(135deg,#20242c,#353b46);color:#fff;box-shadow:0 22px 55px rgba(20,23,28,.13)}.pky-eyebrow{display:block;font-size:10px;font-weight:900;letter-spacing:1.7px;text-transform:uppercase;color:#9ba2ad;margin-bottom:8px}.pky-portal-hero .pky-eyebrow{color:#c8cdd5}.pky-portal-hero h1{margin:0;font-size:34px;line-height:1.08;color:#fff}.pky-portal-hero p{max-width:690px;color:#ced2d8;line-height:1.65;margin:12px 0 17px}.pky-member-meta{display:flex;gap:12px;flex-wrap:wrap}.pky-member-meta span{font-size:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);padding:7px 10px;border-radius:9px}.pky-next-box{background:#fff;color:#20242c;border-radius:18px;padding:19px 20px;display:grid;gap:5px}.pky-next-box small{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.8px;color:#8a919b}.pky-next-box strong{font-size:24px}.pky-next-box span{font-size:11px;color:#7c838d}.pky-portal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:15px 0 26px}.pky-portal-stats>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:19px;box-shadow:0 9px 30px rgba(20,23,28,.045)}.pky-portal-stats>div.is-alert{border-color:#f1cbc6;background:#fffafa}.pky-portal-stats small{display:block;font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase;color:#848b95}.pky-portal-stats strong{display:block;font-size:21px;margin:5px 0 4px}.pky-portal-stats span{font-size:11px;color:#858c96}.pky-portal-section{margin:26px 0}.pky-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px}.pky-section-head h2{margin:0;font-size:21px}.pky-project-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.pky-project-cards article{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;box-shadow:0 9px 30px rgba(20,23,28,.04)}.pky-project-cards article small{font-size:10px;font-weight:900;color:#9aa0aa;letter-spacing:1.1px}.pky-project-cards article h3{font-size:17px;margin:4px 0 17px}.pky-project-cards dl{margin:0;display:grid;gap:9px}.pky-project-cards dl>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eff0f2;padding-top:9px}.pky-project-cards dt{font-size:11px;color:#858c96}.pky-project-cards dd{margin:0;font-size:12px;font-weight:800}.pky-mobile-table{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff}.pky-mobile-table table{width:100%;border-collapse:collapse;min-width:820px}.pky-mobile-table th{font-size:10px;text-transform:uppercase;letter-spacing:.55px;text-align:left;color:#858c96;background:#fafbfc;padding:12px}.pky-mobile-table td{padding:13px 12px;border-top:1px solid #eff1f3;font-size:12px}.pky-mobile-table a{font-weight:800;color:#333}.pky-pbadge{display:inline-block;padding:5px 8px;border-radius:999px;background:#f0f1f3;font-size:10px;font-weight:900;color:#666}.pky-pbadge.ok{background:#e9f7ee;color:#187849}.pky-pbadge.warn{background:#fff4df;color:#9b620f}.pky-pbadge.late{background:#fff0ee;color:#a8342b}.pky-login-shell{max-width:500px;padding:30px 16px}.pky-login-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:36px;box-shadow:0 24px 70px rgba(20,23,28,.1)}.pky-login-logo{max-width:190px;max-height:80px;object-fit:contain;margin-bottom:22px}.pky-login-card h2{font-size:26px;margin:4px 0 8px}.pky-login-card>p{color:#777e88;line-height:1.55;margin-bottom:22px}.pky-login-card form{margin:0}.pky-login-card label{font-size:11px;font-weight:800;color:#555d66}.pky-login-card input[type=text],.pky-login-card input[type=password]{width:100%;border:1px solid #dfe2e7;border-radius:10px;padding:11px;margin-top:5px}.pky-login-card input[type=submit]{width:100%;border:0;border-radius:10px;background:#20242c;color:#fff;font-weight:800;padding:12px;cursor:pointer}.pky-login-card .login-remember{font-size:11px}.pky-portal-message{max-width:760px;margin:40px auto;padding:20px;border-radius:14px;background:#fff;border:1px solid #e8eaee}@media(max-width:900px){.pky-portal-hero{grid-template-columns:1fr}.pky-portal-stats{grid-template-columns:repeat(2,1fr)}.pky-project-cards{grid-template-columns:1fr 1fr}}@media(max-width:620px){.pky-portal-shell{margin:15px 10px}.pky-portal-hero{padding:24px;border-radius:20px}.pky-portal-hero h1{font-size:27px}.pky-portal-stats,.pky-project-cards{grid-template-columns:1fr}.pky-mobile-table{border:0;overflow:visible;background:transparent}.pky-mobile-table table,.pky-mobile-table thead,.pky-mobile-table tbody,.pky-mobile-table th,.pky-mobile-table td,.pky-mobile-table tr{display:block;min-width:0}.pky-mobile-table thead{display:none}.pky-mobile-table tr{background:#fff;border:1px solid var(--line);border-radius:16px;padding:9px 13px;margin-bottom:10px}.pky-mobile-table td{display:grid;grid-template-columns:105px 1fr;gap:8px;padding:8px 0;border-top:1px solid #f0f1f3}.pky-mobile-table td:first-child{border-top:0}.pky-mobile-table td:before{content:attr(data-label);font-size:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:900;color:#9299a3}.pky-login-card{padding:27px 22px}}
