:root {
  --pp-navy:#062b36;
  --pp-navy2:#081f2d;
  --pp-orange:#ff7200;
  --pp-orange-dark:#ef6500;
  --pp-orange-soft:#fff0df;
  --pp-text:#0d2130;
  --pp-muted:#55636d;
  --pp-line:#dce2e6;
  --pp-white:#fff;
  --pp-sidebar:310px;
}

.pp-panel-shell, .pp-panel-shell *, .pp-login-card * { box-sizing:border-box; }
.pp-panel-shell { width:100%; max-width:1540px; margin:28px auto 34px; transform:none; min-height:760px; display:grid; grid-template-columns:var(--pp-sidebar) minmax(0,1fr); border:1px solid #e2e7ea; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 16px 55px rgba(6,43,54,.09); color:var(--pp-text); font-family:"Nunito",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; position:relative; }
.pp-panel-shell a { text-decoration:none; }
.pp-sidebar { min-width:0; background:#fff; border-right:1px solid #e2e7ea; display:flex; flex-direction:column; }
.pp-sidebar-hero { padding:25px 28px 28px; color:#fff; background:linear-gradient(145deg,#06313c,#071f2b 75%); }
.pp-brand-badge { width:60px; height:60px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,#ff9a08,#ff7000); font-size:32px; margin-bottom:15px; }
.pp-sidebar-hero h2 { color:#fff; margin:0 0 7px; font-size:26px; font-weight:800; }
.pp-sidebar-hero p { margin:0; color:rgba(255,255,255,.93); font-size:15px; line-height:1.55; }
.pp-sidebar-hero strong { color:#fff; }
.pp-nav { display:grid; gap:3px; padding:21px 18px 14px; }
.pp-nav-item { min-height:49px; padding:9px 14px; display:flex; align-items:center; gap:12px; border-radius:10px; color:#122936!important; font-size:15px; font-weight:700; transition:.18s ease; }
.pp-nav-item:hover, .pp-nav-item.active { background:linear-gradient(90deg,#fff6eb,#fff0df); color:var(--pp-orange-dark)!important; }
.pp-nav-item.is-disabled { opacity:.48; cursor:not-allowed; }
.pp-nav-icon { width:28px; height:28px; flex:0 0 28px; display:grid; place-items:center; border-radius:50%; background:var(--pp-navy); color:#fff; font-size:15px; }
.pp-nav-item.active .pp-nav-icon { background:transparent; color:var(--pp-orange-dark); font-size:22px; }
.pp-thanks { margin:auto 18px 18px; padding:20px 17px 24px; border-radius:13px; text-align:center; background:linear-gradient(145deg,#fff0dc,#fff9f1); font-size:14px; }
.pp-thanks strong { display:block; font-size:15px; }
.pp-heart { font-size:48px; margin:12px 0 7px; }
.pp-thanks p { margin:0; }
.pp-main { min-width:0; padding:27px 31px 22px; background:radial-gradient(circle at 100% 0,rgba(255,247,238,.7),transparent 27%),#fff; }
.pp-topbar { min-height:105px; display:flex; justify-content:space-between; gap:25px; align-items:flex-start; }
.pp-title-wrap { display:flex; gap:16px; align-items:flex-start; }
.pp-header-icon { width:63px; height:63px; flex:0 0 63px; display:grid; place-items:center; border:1px solid #ffddbd; border-radius:15px; color:var(--pp-orange); font-size:31px; }
.pp-topbar h1 { margin:3px 0 3px!important; padding:0!important; color:var(--pp-text)!important; font-size:clamp(26px,2.8vw,36px)!important; line-height:1.08!important; font-weight:800!important; }
.pp-topbar p { margin:0; color:var(--pp-orange-dark); font-size:clamp(14px,1.4vw,19px); font-weight:800; }
.pp-logo { width:270px; max-width:30%; height:auto; object-fit:contain; mix-blend-mode:multiply; }
.pp-home-actions { display:flex; justify-content:flex-start; margin:-6px 0 18px; }
.pp-letterhead-button { display:inline-flex; align-items:center; gap:11px; min-height:54px; padding:9px 16px 9px 10px; border:1px solid #ffbd7d; border-radius:12px; background:linear-gradient(135deg,#ff7809,#ed6200); color:#fff!important; text-decoration:none!important; box-shadow:0 7px 18px rgba(239,101,0,.18); transition:transform .16s ease,box-shadow .16s ease; }
.pp-letterhead-button:hover { transform:translateY(-1px); box-shadow:0 10px 22px rgba(239,101,0,.24); }
.pp-letterhead-button>span:last-child { min-width:0; }
.pp-letterhead-button strong,.pp-letterhead-button small { display:block; }
.pp-letterhead-button strong { color:#fff; font-size:14px; line-height:1.2; }
.pp-letterhead-button small { margin-top:3px; color:rgba(255,255,255,.88); font-size:10px; line-height:1.2; }
.pp-letterhead-icon { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:9px; background:rgba(255,255,255,.18); color:#fff; font-size:20px; }
.pp-letterhead-button.is-disabled { border-color:#d9dfe3; background:#eef1f3; color:#53616b!important; box-shadow:none; cursor:not-allowed; }
.pp-letterhead-button.is-disabled:hover { transform:none; box-shadow:none; }
.pp-letterhead-button.is-disabled strong { color:#3e4e58; }
.pp-letterhead-button.is-disabled small { color:#7a868e; }
.pp-letterhead-button.is-disabled .pp-letterhead-icon { background:#dfe5e8; color:#66747d; }
.pp-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); gap:19px; }
.pp-card { min-width:0; min-height:235px; padding:18px 23px 20px; border:1px solid var(--pp-line); border-radius:15px; background:#fff; box-shadow:0 2px 7px rgba(8,28,43,.035); }
.pp-card-head { display:flex; align-items:center; gap:16px; margin-bottom:14px; }
.pp-card-head h2 { margin:0!important; padding:0!important; font-size:21px!important; color:var(--pp-text)!important; font-weight:800!important; }
.pp-circle { width:58px; height:58px; flex:0 0 58px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,#fff3e5,#ffead6); font-size:25px; }
.pp-announcements { display:grid; gap:13px; }
.pp-announcement { display:grid; grid-template-columns:9px minmax(0,1fr); gap:15px; padding-bottom:10px; border-bottom:1px solid #edf0f2; }
.pp-announcement:last-child { border-bottom:0; }
.pp-dot { width:8px; height:8px; margin-top:7px; border-radius:50%; background:var(--pp-orange); }
.pp-announcement strong { color:var(--pp-text); font-size:15px; }
.pp-small-content { margin-top:3px; color:#3e4e59; font-size:13px; line-height:1.35; }
.pp-small-content p { margin:0; }
.pp-announcement small { color:#8a949b; font-size:11px; }
.pp-event-row { display:flex; align-items:center; gap:27px; padding:6px 8px 16px; border-bottom:1px solid var(--pp-line); }
.pp-date-tile { width:82px; height:78px; flex:0 0 82px; display:grid; place-items:center; border:1px solid #cdd5da; border-radius:11px; text-align:center; }
.pp-date-tile strong { display:block; font-size:24px; line-height:1; }
.pp-date-tile span { display:block; margin-top:6px; color:var(--pp-orange-dark); font-size:13px; font-weight:800; }
.pp-event-title { display:block; color:var(--pp-text); font-size:16px; margin-bottom:3px; }
.pp-event-row span { color:#53606a; font-size:13px; }
.pp-muted, .pp-empty { color:#73808a; font-size:13px; }
.pp-hours-card, .pp-meetings-card { min-height:365px; }
.pp-hours-box { position:relative; overflow:hidden; padding:18px; border:1px solid #dfe5e8; border-radius:10px; }
.pp-orange-line { position:absolute; top:0; left:0; right:0; height:5px; background:var(--pp-orange); }
.pp-hours-box h3 { margin:0 0 14px!important; font-size:18px!important; color:var(--pp-text)!important; }
.pp-form-row { display:grid; grid-template-columns:115px minmax(0,1fr); gap:11px; align-items:center; margin-bottom:9px; }
.pp-form-row label { font-size:13px; font-weight:700; color:#263a47; }
.pp-form-row input, .pp-form-row textarea { width:100%; min-width:0; border:1px solid #cad3d9!important; border-radius:6px!important; background:#fff!important; color:#142b3a!important; box-shadow:none!important; font-family:inherit!important; font-size:13px!important; }
.pp-form-row input { height:37px; padding:0 10px!important; }
.pp-form-row textarea { min-height:67px; padding:8px 10px!important; resize:vertical; }
.pp-form-row input:focus, .pp-form-row textarea:focus { border-color:var(--pp-orange)!important; outline:none!important; box-shadow:0 0 0 3px rgba(255,114,0,.12)!important; }
.pp-primary { min-height:38px; padding:8px 14px; border:0!important; border-radius:6px!important; background:linear-gradient(#ff7d0b,#ef6600)!important; color:#fff!important; font-size:13px!important; font-weight:800!important; cursor:pointer; }
.pp-my-hours { margin-top:14px; border-top:1px solid #e9edef; padding-top:11px; }
.pp-my-hours summary { cursor:pointer; color:#465863; font-size:12px; font-weight:800; }
.pp-entry-list { display:grid; gap:7px; margin-top:9px; max-height:235px; overflow:auto; }
.pp-entry { padding:9px 10px; border:1px solid #e5e9ec; border-radius:8px; background:#fbfcfc; font-size:12px; }
.pp-entry>div { display:flex; justify-content:space-between; gap:10px; }
.pp-entry p { margin:4px 0 7px!important; color:#52616b; font-size:12px; line-height:1.35; }
.pp-status { display:inline-block; padding:3px 7px; border-radius:999px; font-size:10px; font-weight:800; }
.pp-status-pending { color:#886000; background:#fff4c9; }
.pp-status-approved { color:#156f46; background:#e7f7ed; }
.pp-status-rejected { color:#a22626; background:#fce9e9; }
.pp-table-wrap { overflow:auto; border:1px solid #d9e0e4; border-radius:9px; }
.pp-table-wrap table { width:100%; min-width:510px; border-collapse:collapse!important; margin:0!important; font-size:12px!important; }
.pp-table-wrap th, .pp-table-wrap td { padding:11px 12px!important; border-right:1px solid #e0e5e8!important; border-bottom:1px solid #e0e5e8!important; background:#fff; text-align:left!important; vertical-align:middle; }
.pp-table-wrap th { background:#fbfcfc!important; color:#142b39!important; font-weight:800!important; }
.pp-table-wrap tr:last-child td { border-bottom:0!important; }
.pp-table-wrap th:last-child, .pp-table-wrap td:last-child { border-right:0!important; }
.pp-table-wrap a { color:var(--pp-orange-dark)!important; font-weight:800; }
.pp-contact-bar { min-height:58px; margin-top:17px; padding:12px 16px; display:flex; justify-content:space-between; align-items:center; gap:15px; border-radius:10px; background:linear-gradient(90deg,#fff0dd,#fff8f0); font-size:13px; }
.pp-contact-bar a { color:var(--pp-orange-dark)!important; font-weight:800; }
.pp-phone { flex:0 0 auto; color:#17313e!important; }
.pp-menu-open, .pp-mobile-close { display:none; }
.pp-overlay { display:none; }

.pp-login-card { width:min(620px,calc(100% - 30px)); margin:50px auto; padding:35px; border:1px solid #e0e5e8; border-radius:18px; background:#fff; box-shadow:0 15px 50px rgba(6,43,54,.10); color:var(--pp-text); font-family:"Nunito",system-ui,sans-serif; }
.pp-login-card img { display:block; width:220px; max-width:70%; height:auto; margin:0 auto 18px; mix-blend-mode:multiply; }
.pp-login-card h2 { margin:0 0 8px!important; text-align:center; font-size:28px!important; color:var(--pp-text)!important; }
.pp-login-card>p { text-align:center; color:#5c6871; }
.pp-login-card label { display:block; margin:10px 0 5px; font-weight:800; font-size:14px; }
.pp-login-card input[type=text], .pp-login-card input[type=password] { width:100%; height:44px; padding:0 12px; border:1px solid #cad3d9; border-radius:7px; }
.pp-login-card input[type=submit] { min-height:44px; padding:9px 18px; border:0; border-radius:7px; background:var(--pp-orange); color:#fff; font-weight:800; cursor:pointer; }
.pp-login-card .login-submit { margin-top:16px; }
.pp-login-card .login-remember { font-size:13px; }
.pp-login-help { margin-top:20px!important; font-size:12px; }

.pp-toast { position:absolute; z-index:80; top:18px; right:24px; max-width:430px; padding:12px 15px; border-radius:9px; color:#fff; font-size:13px; box-shadow:0 12px 30px rgba(0,0,0,.18); }
.pp-toast-success { background:#176b4a; }
.pp-toast-error { background:#a52b2b; }

@media (max-width:1050px) {
  .pp-panel-shell { display:block; }
  .pp-sidebar { position:absolute; z-index:50; inset:0 auto 0 0; width:min(310px,88vw); transform:translateX(-103%); transition:transform .22s ease; box-shadow:15px 0 35px rgba(0,0,0,.16); }
  .pp-panel-shell.pp-menu-opened .pp-sidebar { transform:translateX(0); }
  .pp-overlay { position:absolute; inset:0; z-index:45; display:block; background:rgba(4,28,38,.45); opacity:0; pointer-events:none; transition:opacity .22s ease; }
  .pp-panel-shell.pp-menu-opened .pp-overlay { opacity:1; pointer-events:auto; }
  .pp-mobile-close { display:grid; place-items:center; position:absolute; top:14px; right:12px; width:37px; height:37px; border:0; border-radius:9px; background:rgba(255,255,255,.12); color:#fff; font-size:23px; cursor:pointer; }
  .pp-menu-open { display:grid; place-items:center; width:43px; height:43px; flex:0 0 43px; border:1px solid #e1e6e9; border-radius:10px; background:#fff; font-size:20px; cursor:pointer; }
  .pp-header-icon { display:none; }
}

@media (max-width:760px) {
  .pp-panel-shell { width:100%; max-width:100%; margin:12px auto 20px; border-radius:13px; }
  .pp-main { padding:18px 13px 15px; }
  .pp-topbar { min-height:auto; margin-bottom:18px; align-items:center; }
  .pp-logo { display:none; }
  .pp-home-actions { margin-top:0; }
  .pp-letterhead-button { width:100%; }
  .pp-title-wrap { align-items:center; gap:10px; }
  .pp-topbar h1 { font-size:25px!important; }
  .pp-topbar p { font-size:12px; line-height:1.25; }
  .pp-grid { grid-template-columns:1fr; gap:13px; }
  .pp-card { min-height:0; padding:15px; border-radius:12px; }
  .pp-circle { width:50px; height:50px; flex-basis:50px; font-size:22px; }
  .pp-card-head h2 { font-size:19px!important; }
  .pp-form-row { grid-template-columns:1fr; gap:4px; }
  .pp-form-row input { height:42px; }
  .pp-contact-bar { flex-direction:column; align-items:flex-start; }
  .pp-login-card { margin:24px auto; padding:24px 18px; }
  .pp-toast { position:fixed; top:auto; left:12px; right:12px; bottom:12px; max-width:none; }
}

/* v2: attendance, summaries and certificates */
.pp-attendance-card { min-height:365px; }
.pp-stat-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-bottom:14px; }
.pp-stat { padding:12px 10px; border:1px solid #e3e8eb; border-radius:9px; background:#fbfcfc; text-align:center; }
.pp-stat strong { display:block; color:var(--pp-navy); font-size:20px; line-height:1.1; }
.pp-stat span { display:block; margin-top:5px; color:#68757e; font-size:10px; line-height:1.3; }
.pp-attendance-list { display:grid; gap:7px; max-height:166px; overflow:auto; margin-top:4px; }
.pp-attendance-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 10px; border:1px solid #e6eaed; border-radius:8px; background:#fff; }
.pp-attendance-row strong { display:block; color:var(--pp-text); font-size:12px; line-height:1.25; }
.pp-attendance-row small { display:block; margin-top:2px; color:#7b878f; font-size:10px; }
.pp-attendance-badge { flex:0 0 auto; display:inline-block; padding:4px 7px; border-radius:999px; font-size:9px; font-weight:800; white-space:nowrap; }
.pp-attendance-present { color:#156f46; background:#e7f7ed; }
.pp-attendance-absent { color:#a22626; background:#fce9e9; }
.pp-attendance-excused { color:#825d00; background:#fff4c9; }
.pp-certificate-box { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:13px; padding:11px 12px; border-radius:9px; background:linear-gradient(90deg,#fff4e8,#fff9f2); }
.pp-certificate-box strong { display:block; font-size:12px; color:var(--pp-text); }
.pp-certificate-box p { margin:2px 0 0!important; color:#64717a; font-size:10px; line-height:1.3; }
.pp-secondary { flex:0 0 auto; display:inline-flex; align-items:center; min-height:34px; padding:7px 11px; border:1px solid var(--pp-orange); border-radius:6px; color:var(--pp-orange-dark)!important; background:#fff; font-size:11px; font-weight:800; }
.pp-meetings-card { grid-column:1 / -1; }

@media (max-width:760px) {
  .pp-stat-grid { grid-template-columns:1fr; }
  .pp-stat { text-align:left; }
  .pp-stat strong, .pp-stat span { display:inline; }
  .pp-stat span { margin-left:5px; }
  .pp-attendance-row { align-items:flex-start; flex-direction:column; }
  .pp-certificate-box { align-items:flex-start; flex-direction:column; }
  .pp-meetings-card { grid-column:auto; }
}
.pp-secondary-disabled { opacity:.48; cursor:not-allowed; border-color:#ccd4d9; color:#68757e!important; }


/* v2.2: internal views, archive announcements and resource center */
.pp-card-head-split{justify-content:space-between;align-items:center;gap:14px}.pp-card-title-group{display:flex;align-items:center;gap:16px;min-width:0}.pp-tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid #e1e6e9;border-radius:9px;background:#f7f9fa}.pp-tabs button{border:0;background:transparent;color:#65727b;border-radius:6px;padding:6px 9px;font:700 10px "Nunito",sans-serif;cursor:pointer}.pp-tabs button.is-active{background:#fff;color:var(--pp-orange-dark);box-shadow:0 1px 4px rgba(0,0,0,.08)}.pp-dot-muted{background:#aeb7bd}.pp-announcements-card .pp-announcements{max-height:190px;overflow:auto;padding-right:4px}.pp-event-main{min-width:0}.pp-event-link{display:inline-flex!important;margin-top:8px;padding:6px 10px;border:1px solid #ffcc9f;border-radius:6px;color:var(--pp-orange-dark)!important;background:#fff8f1;font-size:11px!important;font-weight:800}.pp-mini-link,.pp-back-link{color:var(--pp-orange-dark)!important;font-size:11px;font-weight:800;white-space:nowrap}.pp-meeting-link{display:inline-flex!important;padding:5px 8px;border-radius:6px;background:#fff5ea}.pp-subpage{min-height:520px}.pp-subpage-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid #e6eaed}.pp-subpage-title h2{margin:3px 0 5px!important;color:var(--pp-text)!important;font-size:28px!important}.pp-subpage-title p{margin:0!important;color:#66737c;font-size:13px}.pp-kicker{color:var(--pp-orange-dark);font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.pp-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-resource-card{min-height:250px}.pp-signature-card{grid-column:1/-1}.pp-signature-layout{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(320px,1.25fr);gap:22px}.pp-signature-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pp-signature-form label{display:grid;gap:4px;color:#42525d;font-size:11px;font-weight:800}.pp-signature-form input{width:100%;height:38px;border:1px solid #ccd5da;border-radius:6px;padding:0 9px;font:12px Nunito,sans-serif}.pp-signature-preview{min-height:150px;display:flex;align-items:center;gap:15px;padding:17px;border:1px solid #dfe5e8;border-radius:9px;background:#fff;margin-bottom:10px}.pp-signature-preview img{width:132px;max-height:76px;object-fit:contain}.pp-signature-copy{display:flex;flex-direction:column;border-left:3px solid var(--pp-orange);padding-left:12px}.pp-signature-copy strong{font-size:16px;color:var(--pp-navy)}.pp-signature-copy span,.pp-signature-copy a{font-size:11px;color:#53616b!important}.pp-signature-copy small{margin-top:5px;font-size:9px;color:#8a949b}.pp-copy-status{margin-left:8px;color:#51705e;font-size:10px}.pp-color-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.pp-color-item{display:flex;align-items:center;gap:10px;border:1px solid #e1e6e9;border-radius:8px;background:#fff;padding:8px;text-align:left;cursor:pointer}.pp-color-swatch{width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(0,0,0,.08);border-radius:7px}.pp-color-item strong,.pp-color-item code{display:block}.pp-color-item strong{font:800 11px Nunito,sans-serif;color:#233744}.pp-color-item code{margin-top:2px;font-size:10px;color:#687780}.pp-logo-download{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:135px}.pp-logo-download img{width:220px;max-width:55%;height:auto}.pp-download-link{display:inline-flex!important;align-items:center;text-decoration:none!important}.pp-font-sample{padding:15px;border:1px solid #e0e5e8;border-radius:8px;background:#fbfcfc}.pp-font-sample strong{display:block;font-size:25px;color:var(--pp-navy)}.pp-font-sample span{display:block;margin:4px 0 10px;color:var(--pp-orange-dark);font-weight:800}.pp-font-sample p{margin:0!important;color:#53616b;line-height:1.7}.pp-foundation-grid{grid-template-columns:1.15fr .85fr}.pp-foundation-copy{font-size:14px;line-height:1.75;color:#43535e}.pp-resource-links{display:grid;gap:9px}.pp-resource-links a{display:flex;justify-content:space-between;gap:15px;padding:11px 12px;border:1px solid #e0e5e8;border-radius:8px;color:var(--pp-text)!important}.pp-resource-links a span{color:var(--pp-orange-dark);font-size:10px;font-weight:800}.pp-attendance-full-card{min-height:390px}.pp-stat-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.pp-attendance-table-wrap table{min-width:760px}
@media(max-width:900px){.pp-resource-grid,.pp-foundation-grid{grid-template-columns:1fr}.pp-signature-card{grid-column:auto}.pp-signature-layout{grid-template-columns:1fr}.pp-signature-form{grid-template-columns:1fr 1fr}.pp-stat-grid-wide{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.pp-card-head-split{align-items:flex-start;flex-direction:column}.pp-tabs{align-self:stretch}.pp-tabs button{flex:1}.pp-subpage-title{flex-direction:column}.pp-resource-grid{grid-template-columns:1fr}.pp-signature-form{grid-template-columns:1fr}.pp-signature-preview{align-items:flex-start;flex-direction:column}.pp-signature-copy{border-left:0;border-top:3px solid var(--pp-orange);padding-left:0;padding-top:10px}.pp-color-list{grid-template-columns:1fr}.pp-logo-download{align-items:flex-start;flex-direction:column}.pp-logo-download img{max-width:100%}.pp-stat-grid-wide{grid-template-columns:1fr}}

/* v2.3.8: important links grouped into sections. */
.pp-important-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-important-links-section{min-height:0}.pp-important-links-list{display:grid;gap:9px}.pp-important-links-list>a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:center;padding:11px 12px;border:1px solid #e0e5e8;border-radius:9px;background:#fff;color:var(--pp-text)!important;text-decoration:none!important;transition:border-color .16s ease,background .16s ease,transform .16s ease}.pp-important-links-list>a:hover{transform:translateY(-1px);border-color:#ffc58e;background:#fffaf5}.pp-important-link-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:9px;background:#fff0df;color:var(--pp-orange-dark);font-size:18px;font-weight:800}.pp-important-links-list strong,.pp-important-links-list small{display:block}.pp-important-links-list strong{color:var(--pp-navy);font-size:12px;overflow-wrap:anywhere}.pp-important-links-list small{margin-top:2px;color:#7a868e;font-size:9px}
@media(max-width:900px){.pp-important-links-grid{grid-template-columns:1fr}}

/* v2.3: projects */
.pp-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-project-card{display:flex;gap:17px;min-height:190px;padding:21px;border:1px solid #dde4e8;border-radius:14px;background:linear-gradient(145deg,#fff,#fffaf5);color:var(--pp-text)!important;text-decoration:none!important;box-shadow:0 2px 8px rgba(8,28,43,.035);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.pp-project-card:hover{transform:translateY(-2px);border-color:#ffc995;box-shadow:0 10px 24px rgba(8,28,43,.08)}.pp-project-card-icon{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#fff1df,#ffe1bf);color:var(--pp-orange-dark);font-size:26px;font-weight:800}.pp-project-card-content{min-width:0;display:flex;flex-direction:column}.pp-project-label{color:var(--pp-orange-dark);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pp-project-card h3{margin:4px 0 7px!important;color:var(--pp-navy)!important;font-size:20px!important;line-height:1.2!important}.pp-project-card p{margin:0 0 16px!important;color:#5b6871;font-size:12px;line-height:1.5}.pp-project-card-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;padding-top:11px;border-top:1px solid #edf0f2;color:#6c7880;font-size:10px}.pp-project-card-meta strong{color:var(--pp-orange-dark);font-size:10px}.pp-project-empty{min-height:210px}.pp-project-detail-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:16px}.pp-project-description-card{grid-row:span 2;min-height:420px}.pp-project-description{color:#40515c;font-size:14px;line-height:1.75}.pp-project-description h2,.pp-project-description h3,.pp-project-description h4{color:var(--pp-navy)!important}.pp-project-links{display:grid;gap:9px}.pp-project-links>a,.pp-project-link-disabled{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px;border:1px solid #e0e5e8;border-radius:9px;background:#fff;color:var(--pp-text)!important;text-decoration:none!important}.pp-project-links>a:hover{border-color:#ffc58e;background:#fffaf5}.pp-project-links>a>b{color:var(--pp-orange-dark)}.pp-link-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#fff0df;color:var(--pp-orange-dark);font-size:18px}.pp-project-links strong{display:block;color:var(--pp-navy);font-size:12px}.pp-project-links small{display:block;margin-top:2px;color:#7a868e;font-size:9px}.pp-project-link-disabled{opacity:.58}.pp-project-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pp-project-person{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #e4e9ec;border-radius:9px;background:#fbfcfc}.pp-project-person img,.pp-person-placeholder{width:36px;height:36px;flex:0 0 36px;border-radius:50%;object-fit:cover}.pp-person-placeholder{display:grid;place-items:center;background:var(--pp-navy);color:#fff;font-size:13px;font-weight:800}.pp-project-person strong{min-width:0;color:#293e4a;font-size:11px;line-height:1.25}.pp-project-links-card,.pp-project-people-card{min-height:0}
@media(max-width:900px){.pp-project-grid{grid-template-columns:1fr}.pp-project-detail-grid{grid-template-columns:1fr}.pp-project-description-card{grid-row:auto;min-height:0}}
@media(max-width:600px){.pp-project-card{padding:16px;gap:12px}.pp-project-card-icon{width:48px;height:48px;flex-basis:48px}.pp-project-card-meta{align-items:flex-start;flex-direction:column}.pp-project-people{grid-template-columns:1fr}}

/* v2.3.12: knowledge base assigned separately to every project and fixed team. */
.pp-work-tab-list{display:inline-flex;gap:5px;margin:0 0 17px;padding:4px;border:1px solid #dfe5e8;border-radius:11px;background:#f5f7f8}.pp-work-tab-list button{min-height:38px;padding:8px 15px;border:0;border-radius:8px;background:transparent;color:#5c6972;font:800 12px Nunito,sans-serif;cursor:pointer}.pp-work-tab-list button.is-active{background:#fff;color:var(--pp-orange-dark);box-shadow:0 2px 8px rgba(8,28,43,.1)}.pp-work-knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-work-knowledge-card{display:flex;flex-direction:column;min-height:0}.pp-work-knowledge-copy{margin:0 0 15px;color:#43535e;font-size:13px;line-height:1.65}.pp-work-knowledge-copy>:first-child{margin-top:0}.pp-work-knowledge-copy>:last-child{margin-bottom:0}.pp-work-knowledge-links{margin-top:auto}
@media(max-width:900px){.pp-work-knowledge-grid{grid-template-columns:1fr}}
@media(max-width:600px){.pp-work-tab-list{display:flex}.pp-work-tab-list button{flex:1}}

/* v2.3.4: public leader identity and account-protected resources. */
.pp-work-leader{display:flex;align-items:center;gap:10px;margin:0 0 15px;padding:12px;border:1px solid #ffcf9d;border-radius:9px;background:#fff7ee}
.pp-work-leader img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.pp-work-leader small,.pp-work-leader strong{display:block}
.pp-work-leader small{color:var(--pp-orange-dark);font-size:10px;font-weight:800}
.pp-work-leader strong{margin-top:2px;color:var(--pp-navy);font-size:13px}
.pp-work-private-card{grid-column:1/-1;border:1px solid #c5d6df;background:#f8fbfd}
.pp-work-private-intro{margin-top:-5px!important;color:#5a6b76;font-size:12px}
.pp-work-private-card .pp-project-description{margin:12px 0 16px;padding:14px;border:1px solid #dce7ed;border-radius:9px;background:#fff}
.pp-work-private-card .pp-project-links{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}
