:root{--phcpr-navy:#102a43;--phcpr-navy2:#173f5f;--phcpr-red:#c81d32;--phcpr-bg:#f5f7fa;--phcpr-border:#d9e2ec;--phcpr-text:#243b53;--phcpr-muted:#627d98;--phcpr-green:#177245;--phcpr-yellow:#9a6700;--phcpr-orange:#b54708;--phcpr-danger:#b42318}
.phcpr-portal{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--phcpr-text);max-width:1240px;margin:0 auto;padding:22px 16px;box-sizing:border-box}.phcpr-portal *{box-sizing:border-box}.phcpr-hero{background:linear-gradient(135deg,var(--phcpr-navy),var(--phcpr-navy2));color:#fff;border-radius:22px;padding:34px;margin-bottom:18px;box-shadow:0 18px 45px rgba(16,42,67,.18)}.phcpr-hero h1{font-size:clamp(28px,4vw,44px);line-height:1.05;margin:5px 0 10px;color:#fff}.phcpr-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;opacity:.8}.phcpr-profile-line{font-size:17px;font-weight:650}.phcpr-profile-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;align-items:center}.phcpr-tabs{display:flex;gap:8px;overflow:auto;padding:5px 0 15px;margin-bottom:8px}.phcpr-tabs button{white-space:nowrap;border:1px solid var(--phcpr-border);background:#fff;border-radius:999px;padding:10px 16px;font-weight:700;color:var(--phcpr-navy);cursor:pointer}.phcpr-tabs button.active{background:var(--phcpr-navy);color:#fff;border-color:var(--phcpr-navy)}.phcpr-tab-panel{display:none}.phcpr-tab-panel.active{display:block}.phcpr-section{margin:28px 0}.phcpr-section h2{font-size:24px;color:var(--phcpr-navy);margin:0 0 14px}.phcpr-section h3{color:var(--phcpr-navy);margin:0 0 10px}.phcpr-grid{display:grid;gap:16px}.phcpr-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.phcpr-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.phcpr-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.phcpr-card{background:#fff;border:1px solid var(--phcpr-border);border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(16,42,67,.06)}.phcpr-card.compact{padding:18px}.phcpr-card.good{border-left:5px solid var(--phcpr-green)}.phcpr-card.bad{border-left:5px solid var(--phcpr-danger)}.phcpr-card.help{background:#f8fbff}.phcpr-big{display:block;font-size:24px;color:var(--phcpr-navy);margin-top:6px}.phcpr-muted{color:var(--phcpr-muted)}.phcpr-small{font-size:13px;color:var(--phcpr-muted)}.phcpr-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;border-radius:10px;padding:10px 15px;font-weight:800;border:0;cursor:pointer;line-height:1.2}.phcpr-btn.primary{background:var(--phcpr-red);color:#fff}.phcpr-btn.secondary{background:#eaf2f8;color:var(--phcpr-navy)}.phcpr-btn.small{padding:7px 10px;background:#eaf2f8;color:var(--phcpr-navy);font-size:12px}.phcpr-button-row{display:flex;gap:10px;flex-wrap:wrap}.phcpr-alert{border-radius:14px;padding:15px 18px;margin:12px 0;display:flex;gap:8px;flex-wrap:wrap;border-left:5px solid}.phcpr-alert.info{background:#eef6ff;border-color:#2e90fa}.phcpr-alert.warning{background:#fffaeb;border-color:#f79009}.phcpr-alert.orange{background:#fff4ed;border-color:#f04438}.phcpr-alert.danger{background:#fef3f2;border-color:var(--phcpr-danger)}.phcpr-alert.success{background:#ecfdf3;border-color:#12b76a}.phcpr-status{display:inline-block;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;background:#eaf2f8;color:var(--phcpr-navy)}.phcpr-status.compliant{background:#ecfdf3;color:#067647}.phcpr-status.non-compliant{background:#fef3f2;color:#b42318}.phcpr-status.onboarding{background:#fffaeb;color:#b54708}.phcpr-progress-title{display:flex;justify-content:space-between;gap:15px;margin:14px 0 8px}.phcpr-progress{height:12px;background:#e5e7eb;border-radius:999px;overflow:hidden}.phcpr-progress span{display:block;height:100%;background:var(--phcpr-navy);border-radius:999px}.phcpr-price,.phcpr-file-table{width:100%;border-collapse:collapse;margin:12px 0 18px}.phcpr-price th,.phcpr-price td,.phcpr-file-table th,.phcpr-file-table td{padding:10px;border-bottom:1px solid var(--phcpr-border);text-align:left;vertical-align:top}.phcpr-price th,.phcpr-file-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--phcpr-muted)}.phcpr-upload-box{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:2px dashed #9fb3c8;background:#f8fbff;border-radius:16px;padding:34px;margin:15px 0}.phcpr-upload-box input{margin-top:15px;max-width:100%}.phcpr-iframe-wrap iframe{width:100%;height:720px;border:1px solid var(--phcpr-border);border-radius:16px;background:#fff}.phcpr-login-shell{min-height:540px;display:grid;place-items:center;background:linear-gradient(135deg,#f3f6f9,#fff);border-radius:24px;padding:24px}.phcpr-login-card{width:min(100%,480px);background:#fff;border:1px solid var(--phcpr-border);border-radius:22px;padding:34px;box-shadow:0 20px 60px rgba(16,42,67,.12)}.phcpr-login-card h2{font-size:32px;color:var(--phcpr-navy);margin:5px 0 10px}.phcpr-login-card label{display:block;font-weight:700;margin:15px 0}.phcpr-login-card input[type=email],.phcpr-login-card input[type=password]{width:100%;padding:12px;border:1px solid var(--phcpr-border);border-radius:10px;margin-top:6px}.phcpr-check{font-weight:500!important;display:flex!important;gap:8px;align-items:center}.phcpr-table-wrap{overflow:auto}
.phcpr-admin .phcpr-card{margin:18px 0}.phcpr-admin-columns{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(500px,1.5fr);gap:20px;align-items:start}.phcpr-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:22px 0}.phcpr-stat{background:#fff;border:1px solid #dcdcde;border-radius:12px;padding:18px}.phcpr-stat strong{display:block;font-size:30px;color:var(--phcpr-navy)}.phcpr-stat span{color:#646970}.phcpr-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.phcpr-review-grid label{font-weight:600}.phcpr-review-grid select{display:block;width:100%;margin-top:5px}
@media(max-width:900px){.phcpr-grid.cols-4,.phcpr-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.phcpr-admin-columns{grid-template-columns:1fr}.phcpr-stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.phcpr-grid.cols-4,.phcpr-grid.cols-3,.phcpr-grid.cols-2{grid-template-columns:1fr}.phcpr-hero{padding:24px}.phcpr-profile-meta{display:grid;gap:8px}.phcpr-card{padding:17px}.phcpr-file-table{font-size:13px}.phcpr-review-grid{grid-template-columns:1fr}.phcpr-stat-grid{grid-template-columns:1fr 1fr}}

.phcpr-portal h1,.phcpr-portal h2,.phcpr-portal h3,.phcpr-portal h4{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important}
.phcpr-portal p,.phcpr-portal li,.phcpr-portal span,.phcpr-portal td,.phcpr-portal th,.phcpr-portal label,.phcpr-portal input,.phcpr-portal textarea,.phcpr-portal select,.phcpr-portal button{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important}
.phcpr-portal .phcpr-card,.phcpr-portal .phcpr-login-card,.phcpr-portal .phcpr-hero{background-clip:padding-box}
.phcpr-hero{text-align:center;padding:40px 34px!important}.phcpr-eyebrow{font-size:14px!important;opacity:1!important;text-align:center;display:block;margin-bottom:10px;color:#d9e9ff}.phcpr-profile-line{font-size:18px!important;margin-top:6px}.phcpr-profile-meta{justify-content:center}.phcpr-hero-logos{display:flex;justify-content:center;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.phcpr-logo.main{max-height:64px;max-width:260px;width:auto}.phcpr-logo.secondary{max-height:58px;max-width:210px;width:auto}.phcpr-secondary-note{margin:16px auto 0;max-width:860px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);padding:12px 15px;border-radius:12px;font-size:14px;line-height:1.5}
.phcpr-section h2{font-size:28px!important;font-weight:800!important;margin-bottom:14px!important}.phcpr-section h3{font-size:21px!important;font-weight:800!important;line-height:1.2}.phcpr-attention{border-left:8px solid var(--phcpr-red)!important;background:#fff5f7;box-shadow:0 14px 34px rgba(200,29,50,.08)}
.phcpr-card h3{margin-bottom:14px}.phcpr-grid.cols-3{align-items:stretch}.phcpr-grid.cols-4{align-items:stretch}.phcpr-btn.primary{box-shadow:0 8px 18px rgba(200,29,50,.22)}
.phcpr-price th,.phcpr-file-table th{font-weight:800!important;color:#5d7898!important}.phcpr-price td,.phcpr-file-table td{padding:14px 12px}.phcpr-card.compact h3{margin-bottom:8px}
.phcpr-k12-callout{background:linear-gradient(135deg,#fff4ed,#fffbeb);border:1px solid #fed7aa;color:#9a3412;padding:10px 12px;border-radius:12px;margin:0 0 14px}.phcpr-badge-pop{display:inline-block;background:#102a43;color:#fff;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;border-radius:999px;margin-bottom:10px}
.phcpr-quick-card{display:flex;flex-direction:column;justify-content:space-between;min-height:150px;background:linear-gradient(180deg,#fff,#f8fbff)}.phcpr-quick-card .phcpr-btn{margin-top:12px}
.phcpr-note p:last-child{margin-bottom:0}.phcpr-help-strong{font-weight:800}
@media (max-width:620px){.phcpr-hero{text-align:left}.phcpr-profile-meta{justify-content:flex-start}.phcpr-eyebrow{text-align:left}.phcpr-hero-logos{justify-content:flex-start}.phcpr-logo.main{max-height:54px}.phcpr-logo.secondary{max-height:50px}}

/* v0.1.3 visual refinements */
.phcpr-current-status{margin:22px auto 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.phcpr-current-status>span{font-size:12px!important;font-weight:800!important;letter-spacing:.12em;text-transform:uppercase;color:#d8e8f8}.phcpr-current-status .phcpr-status{font-size:16px!important;padding:9px 18px!important;min-width:150px;text-align:center;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.phcpr-faculty-progress{margin-top:18px!important}.phcpr-faculty-fineprint{margin-top:22px!important;padding-top:16px;border-top:1px solid var(--phcpr-border);line-height:1.65!important}.phcpr-faculty-eligible{margin-top:24px;padding:20px;border-radius:16px;background:linear-gradient(135deg,#ecfdf3,#f6fffa);border:1px solid #86efac;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.phcpr-faculty-eligible strong{display:block;font-size:21px;color:#065f46;margin:5px 0}.phcpr-faculty-eligible p{margin:4px 0 0;max-width:760px;line-height:1.55}.phcpr-eligible-kicker{font-size:12px!important;font-weight:900!important;letter-spacing:.12em;color:#047857;text-transform:uppercase}
.phcpr-message-card{padding:0!important;overflow:hidden}.phcpr-message-intro{display:flex;gap:18px;align-items:flex-start;background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;padding:26px 28px}.phcpr-message-intro h2{color:#fff!important;margin:0 0 8px!important}.phcpr-message-intro p{margin:0;color:#dbeafe;line-height:1.6;max-width:980px}.phcpr-message-icon{width:48px;height:48px;border-radius:14px;background:#fff;color:var(--phcpr-red);display:grid;place-items:center;font-size:24px;font-weight:900;flex:0 0 48px}.phcpr-message-form{padding:26px 28px 28px!important;background:#fff}.phcpr-field{margin-bottom:18px}.phcpr-field label{display:block!important;font-size:14px!important;font-weight:800!important;color:var(--phcpr-navy)!important;margin:0 0 8px!important}.phcpr-message-form input[type=text],.phcpr-message-form textarea{display:block!important;width:100%!important;max-width:none!important;background:#fff!important;color:var(--phcpr-text)!important;border:1px solid #cbd5e1!important;border-radius:12px!important;box-shadow:none!important;padding:13px 14px!important;font-size:16px!important;line-height:1.45!important}.phcpr-message-form input[type=text]{min-height:48px!important}.phcpr-message-form textarea{min-height:150px!important;resize:vertical}.phcpr-message-form input:focus,.phcpr-message-form textarea:focus{outline:none!important;border-color:#5b88b2!important;box-shadow:0 0 0 3px rgba(46,144,250,.12)!important}.phcpr-message-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:2px}.phcpr-message-actions .phcpr-small{margin:0!important}
.phcpr-enrollware-card{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.phcpr-enrollware-card h2{margin-bottom:6px!important}.phcpr-enrollware-card p{margin:0}
.phcpr-updates-section{max-width:1180px;margin-left:auto!important;margin-right:auto!important}.phcpr-updates-title{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px;padding:0 4px}.phcpr-updates-title h2{margin:2px 0 0!important}.phcpr-updates-title>p{max-width:620px;margin:0;color:var(--phcpr-muted);line-height:1.5}.phcpr-update-kicker{font-size:11px!important;font-weight:900!important;letter-spacing:.14em;color:var(--phcpr-red);text-transform:uppercase}.phcpr-update{padding:0!important;overflow:hidden;display:grid;grid-template-columns:190px 1fr;margin:0 0 16px!important;border:1px solid #d6e0ea!important;box-shadow:0 10px 28px rgba(16,42,67,.06)!important}.phcpr-update.featured{border-color:#b9cee2!important;box-shadow:0 14px 34px rgba(16,42,67,.1)!important}.phcpr-update-side{background:#f3f7fb;border-right:1px solid #d6e0ea;padding:24px 20px;display:flex;flex-direction:column;gap:10px;justify-content:center;align-items:flex-start;color:var(--phcpr-navy);font-size:12px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.08em}.phcpr-update.featured .phcpr-update-side{background:linear-gradient(135deg,#102a43,#173f5f);color:#fff}.phcpr-update-dot{width:12px;height:12px;border-radius:50%;background:var(--phcpr-red);box-shadow:0 0 0 5px rgba(200,29,50,.12)}.phcpr-update-body{padding:24px 28px}.phcpr-update-date{display:inline-block;background:#eef6ff;color:#35658f;border-radius:999px;padding:6px 10px;font-size:11px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.phcpr-update h3{font-size:23px!important;margin:0 0 10px!important}.phcpr-update-copy{color:var(--phcpr-text);line-height:1.62}.phcpr-update-copy p:last-child{margin-bottom:0}
/* Stronger theme isolation for portal controls */
.phcpr-portal input,.phcpr-portal textarea,.phcpr-portal select,.phcpr-portal button{box-sizing:border-box!important}.phcpr-portal a.phcpr-btn,.phcpr-portal button.phcpr-btn{font-weight:800!important;text-transform:none!important;letter-spacing:0!important;text-decoration:none!important}
@media(max-width:760px){.phcpr-update{grid-template-columns:1fr}.phcpr-update-side{border-right:0;border-bottom:1px solid #d6e0ea;padding:14px 18px;flex-direction:row;justify-content:flex-start;align-items:center}.phcpr-updates-title{align-items:flex-start;flex-direction:column}.phcpr-message-intro{padding:22px}.phcpr-message-form{padding:22px!important}.phcpr-message-icon{display:none}.phcpr-current-status{align-items:flex-start}.phcpr-hero .phcpr-current-status{align-items:center}}

/* v0.1.4 Training Site messaging */
.phcpr-tab-badge{display:inline-grid!important;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:7px;border-radius:999px;background:var(--phcpr-red);color:#fff!important;font-size:11px!important;font-weight:900!important;line-height:1!important}
.phcpr-message-summary{display:flex;align-items:center;gap:20px;padding:24px 26px!important;background:linear-gradient(135deg,#f8fbff,#fff)!important;border-color:#c8d9e8!important}.phcpr-message-summary-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--phcpr-navy);font-size:27px;flex:0 0 58px}.phcpr-message-summary-copy{flex:1;min-width:220px}.phcpr-message-summary-copy h2{margin:4px 0 6px!important}.phcpr-message-summary-copy p{margin:0;line-height:1.55}.phcpr-message-summary-kicker{font-size:11px!important;font-weight:900!important;letter-spacing:.13em;color:var(--phcpr-red)!important;text-transform:uppercase}.phcpr-ack-mini{display:inline-block;margin-top:11px;padding:7px 10px;border-radius:9px;background:#fff4ed;color:#9a3412;font-size:13px!important;font-weight:800!important;border:1px solid #fed7aa}
.phcpr-messages-section{max-width:1040px;margin-left:auto!important;margin-right:auto!important}.phcpr-messages-header{margin-bottom:15px}.phcpr-messages-header h2{margin:4px 0 5px!important}.phcpr-messages-header p{margin:0;color:var(--phcpr-muted);line-height:1.55}.phcpr-chat-card{background:#fff;border:1px solid var(--phcpr-border);border-radius:20px;overflow:hidden;box-shadow:0 12px 34px rgba(16,42,67,.07)}.phcpr-chat-thread{min-height:380px;max-height:640px;overflow-y:auto;padding:28px;background:linear-gradient(180deg,#f7fafc,#fff)}.phcpr-chat-row{display:flex;margin:12px 0}.phcpr-chat-row.mine{justify-content:flex-end}.phcpr-chat-row.staff{justify-content:flex-start}.phcpr-chat-bubble{max-width:min(76%,720px);border-radius:18px;padding:14px 16px;box-shadow:0 5px 16px rgba(16,42,67,.07)}.phcpr-chat-row.mine .phcpr-chat-bubble{background:var(--phcpr-navy);color:#fff;border-bottom-right-radius:6px}.phcpr-chat-row.staff .phcpr-chat-bubble{background:#fff;color:var(--phcpr-text);border:1px solid #d6e0ea;border-bottom-left-radius:6px}.phcpr-chat-meta{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:7px;font-size:12px!important}.phcpr-chat-row.mine .phcpr-chat-meta{color:#d8e8f8}.phcpr-chat-row.staff .phcpr-chat-meta{color:#627d98}.phcpr-chat-meta strong{font-size:12px!important}.phcpr-chat-text{font-size:15px;line-height:1.55;word-break:break-word}.phcpr-chat-empty{text-align:center;padding:65px 24px;color:var(--phcpr-muted)}.phcpr-chat-empty-icon{font-size:38px;margin-bottom:10px}.phcpr-chat-empty h3{margin:0 0 8px!important}.phcpr-chat-empty p{max-width:620px;margin:0 auto;line-height:1.6}.phcpr-chat-compose{padding:22px 24px 24px;border-top:1px solid var(--phcpr-border);background:#fff}.phcpr-chat-compose>label{display:block;font-size:14px!important;font-weight:800!important;color:var(--phcpr-navy)!important;margin-bottom:8px}.phcpr-chat-compose textarea{display:block!important;width:100%!important;min-height:110px!important;padding:13px 14px!important;border:1px solid #cbd5e1!important;border-radius:13px!important;background:#fff!important;color:var(--phcpr-text)!important;box-shadow:none!important;resize:vertical}.phcpr-chat-compose textarea:focus{outline:none!important;border-color:#5b88b2!important;box-shadow:0 0 0 3px rgba(46,144,250,.12)!important}.phcpr-chat-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:13px}.phcpr-chat-compose-actions>span{font-size:12px!important;color:var(--phcpr-muted)}
.phcpr-ack-status{margin-top:13px;padding:10px 12px;border-radius:10px;font-size:12px!important}.phcpr-ack-status.pending{background:#fff4ed;color:#9a3412;border:1px solid #fed7aa}.phcpr-chat-row.mine .phcpr-ack-status.pending{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.25)}.phcpr-ack-status.pending strong,.phcpr-ack-status.pending span{display:block}.phcpr-ack-status.pending span{margin:3px 0 8px}.phcpr-ack-status.done{background:#ecfdf3;color:#067647;border:1px solid #a7f3d0;font-weight:800!important}
/* wp-admin messaging inbox */
.phcpr-admin-messages-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}.phcpr-admin-conversation-list{background:#fff;border:1px solid #dcdcde;border-radius:14px;overflow:hidden;max-height:760px;overflow-y:auto}.phcpr-admin-conversation{display:flex;justify-content:space-between;gap:12px;padding:14px 15px;text-decoration:none;border-bottom:1px solid #edf0f2;color:#1d2327}.phcpr-admin-conversation:hover,.phcpr-admin-conversation.active{background:#f0f6fc;color:#135e96}.phcpr-admin-conversation strong,.phcpr-admin-conversation span{display:block}.phcpr-admin-conversation>div:first-child span{font-size:11px;color:#646970;margin-top:3px}.phcpr-admin-conversation-meta{text-align:right}.phcpr-admin-conversation-meta b{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#d63638;color:#fff;font-size:11px}.phcpr-admin-conversation-meta span{font-size:11px;color:#646970;margin-top:4px}.phcpr-admin-thread{background:#fff;border:1px solid #dcdcde;border-radius:14px;overflow:hidden}.phcpr-admin-thread-head{padding:18px 20px;background:#102a43;color:#fff}.phcpr-admin-thread-head h2{color:#fff;margin:0 0 4px}.phcpr-admin-thread-head p{margin:0;color:#d8e8f8}.phcpr-admin-chat-thread{padding:20px;max-height:540px;overflow-y:auto;background:#f6f8fa}.phcpr-chat-row.admin.mine{justify-content:flex-start}.phcpr-chat-row.admin.staff{justify-content:flex-end}.phcpr-chat-row.admin.mine .phcpr-chat-bubble{background:#fff;color:#243b53;border:1px solid #d6e0ea;border-bottom-left-radius:6px;border-bottom-right-radius:18px}.phcpr-chat-row.admin.mine .phcpr-chat-meta{color:#627d98}.phcpr-chat-row.admin.staff .phcpr-chat-bubble{background:#102a43;color:#fff;border-bottom-right-radius:6px;border-bottom-left-radius:18px}.phcpr-chat-row.admin.staff .phcpr-chat-meta{color:#d8e8f8}.phcpr-admin-compose{padding:18px 20px 22px;border-top:1px solid #dcdcde}.phcpr-admin-compose h3{margin-top:0}.phcpr-admin-compose textarea{margin-bottom:12px}.phcpr-admin-message-options{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.phcpr-admin-message-options label{display:flex;gap:7px;align-items:center}
@media(max-width:850px){.phcpr-admin-messages-layout{grid-template-columns:1fr}.phcpr-admin-conversation-list{max-height:300px}.phcpr-message-summary{align-items:flex-start;flex-wrap:wrap}.phcpr-chat-bubble{max-width:90%}}@media(max-width:620px){.phcpr-message-summary-icon{display:none}.phcpr-chat-thread{padding:16px}.phcpr-chat-bubble{max-width:94%}.phcpr-chat-compose{padding:18px}}

.phcpr-admin .phcpr-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}

/* v0.1.5 layout, metrics, assigned Faculty workspace */
.phcpr-logo.main{max-height:92px!important;max-width:340px!important;width:auto!important;height:auto!important;object-fit:contain}
.phcpr-id-line{margin-top:10px!important;font-size:19px!important;font-weight:800!important}.phcpr-alignments-line{margin-top:8px!important;font-size:17px!important}.phcpr-alignments-line strong{font-weight:800!important}.phcpr-alignment-line{margin:12px auto 0;font-size:16px;font-weight:500}.phcpr-alignment-line strong{font-weight:800}.phcpr-profile-meta{margin-top:18px!important}.phcpr-current-status{margin-top:26px!important}
.phcpr-new-message-alert{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:12px 16px!important;background:linear-gradient(135deg,#eef6ff,#fff)!important;border:1px solid #bfd7ee!important;border-left:7px solid var(--phcpr-red)!important;padding:18px 20px!important;box-shadow:0 9px 26px rgba(16,42,67,.08)}.phcpr-new-message-alert strong{font-size:17px!important;color:var(--phcpr-navy)}.phcpr-new-message-alert span{color:var(--phcpr-text)}.phcpr-new-message-alert .phcpr-btn{white-space:nowrap}
.phcpr-section-subtitle{margin:-5px 0 16px!important;color:var(--phcpr-muted)}
.phcpr-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.phcpr-metric-card{padding:20px!important}.phcpr-metric-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid var(--phcpr-border)}.phcpr-metric-head h3{margin:0!important}.phcpr-metric-head>span{font-size:12px!important;color:var(--phcpr-muted);font-weight:800!important}.phcpr-metric-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.phcpr-metric-values>div{background:#f8fafc;border:1px solid #e3eaf1;border-radius:12px;padding:12px}.phcpr-metric-values span{display:block;font-size:11px!important;text-transform:uppercase;letter-spacing:.06em;color:var(--phcpr-muted);font-weight:800!important;margin-bottom:5px}.phcpr-metric-values strong{display:block;color:var(--phcpr-navy);font-size:18px}.phcpr-metric-values strong.good{color:#067647}.phcpr-metric-values strong.warning{color:#b54708}.phcpr-metric-private{margin-top:14px;border-top:1px solid var(--phcpr-border);padding-top:13px}.phcpr-metric-private>strong{color:var(--phcpr-navy)}.phcpr-metric-private p{margin:6px 0 0!important;color:var(--phcpr-muted)}
.phcpr-updates-title-simple{margin:0 0 22px;padding:0 2px}.phcpr-updates-title-simple h2{margin:0 0 7px!important;font-size:32px!important}.phcpr-updates-title-simple p{margin:0!important;color:var(--phcpr-muted);font-size:15px;line-height:1.5}.phcpr-updates-section .phcpr-update{margin-top:0!important}
.phcpr-assigned-workspace>.phcpr-card{margin-bottom:16px}.phcpr-assigned-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.phcpr-assigned-head h2{margin:4px 0 5px!important}.phcpr-assigned-head p{margin:0;color:var(--phcpr-muted)}.phcpr-internal-notes{margin-top:18px;background:#fff9e8;border:1px solid #f6d58e;border-radius:12px;padding:14px 16px}.phcpr-internal-notes>strong{display:block;color:#7a4b00;margin-bottom:6px}.phcpr-internal-notes p{margin:0!important}.phcpr-faculty-upload{margin-top:18px;padding-top:16px;border-top:1px solid var(--phcpr-border)}.phcpr-faculty-upload label{display:block;margin-bottom:12px}.phcpr-faculty-upload input[type=file]{display:block;margin-top:8px;max-width:100%}.phcpr-faculty-thread{min-height:220px!important;max-height:460px!important}
.phcpr-message-summary{margin-top:0!important}.phcpr-message-summary-copy h2{font-size:25px!important}
@media(max-width:760px){.phcpr-new-message-alert{grid-template-columns:1fr}.phcpr-new-message-alert .phcpr-btn{justify-self:start}.phcpr-metric-values{grid-template-columns:1fr}.phcpr-assigned-head{flex-direction:column}.phcpr-logo.main{max-height:75px!important;max-width:280px!important}}

.phcpr-metric-values small{display:block;margin-top:4px;color:var(--phcpr-muted);font-size:11px;line-height:1.3}.phcpr-new-message-alert.faculty{border-left-color:var(--phcpr-navy)!important;background:linear-gradient(135deg,#f5f8fb,#fff)!important}
.phcpr-hero{position:relative}.phcpr-hero-logos{position:relative;width:100%;min-height:92px}.phcpr-hero-logos .phcpr-logo.main{margin:0 auto}.phcpr-hero-logos .phcpr-logo.secondary{position:absolute;right:0;top:50%;transform:translateY(-50%);max-height:54px!important;max-width:170px!important}
@media(max-width:760px){.phcpr-hero-logos{min-height:0;display:flex;flex-direction:column}.phcpr-hero-logos .phcpr-logo.secondary{position:static;transform:none;margin:8px auto 0}}

/* v0.1.7 consolidated instructor files + advanced eCard pricing */
.phcpr-advanced-price{font-size:13px}.phcpr-advanced-price th{white-space:nowrap}.phcpr-savings{display:inline-block;border-radius:999px;background:#ecfdf3;color:#067647;font-weight:900;font-size:11px;padding:4px 7px}.phcpr-advanced-price tr:last-child .phcpr-savings{background:#eef2f6;color:#475467}.phcpr-k12-callout span{font-size:12px;font-weight:600;color:#9a3412}.phcpr-myfile-group{margin-bottom:15px}.phcpr-file-history-details{margin-top:18px}.phcpr-file-history-details summary{cursor:pointer;color:var(--phcpr-navy);padding:2px 0 10px}
.phcpr-instructor-file-admin .phcpr-file-hero{background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:16px;padding:24px;display:flex;justify-content:space-between;align-items:center;gap:18px;margin:12px 0 16px}.phcpr-instructor-file-admin .phcpr-file-hero span{font-size:11px;font-weight:900;letter-spacing:.12em}.phcpr-instructor-file-admin .phcpr-file-hero h1{color:#fff;margin:5px 0}.phcpr-instructor-file-admin .phcpr-file-hero p{margin:0;color:#d9e8f4}.phcpr-file-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.phcpr-file-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.phcpr-file-summary>div{background:#fff;border:1px solid #dcdcde;border-radius:12px;padding:16px}.phcpr-file-summary strong{display:block;font-size:28px;color:#102a43}.phcpr-file-summary span{color:#646970}.phcpr-file-group{margin:16px 0}.phcpr-file-group h2,.phcpr-file-history h2{margin-top:0}.phcpr-file-history{margin-top:20px}@media(max-width:800px){.phcpr-file-summary{grid-template-columns:repeat(2,1fr)}.phcpr-instructor-file-admin .phcpr-file-hero{align-items:flex-start;flex-direction:column}}


/* v0.1.8 full-install visual corrections */
.phcpr-hero-logos{min-height:150px!important;margin-bottom:18px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:260px!important;max-width:75%!important;max-height:160px!important;height:auto!important;object-fit:contain!important;margin:0 auto!important}
.phcpr-access-line{margin:8px auto 0;font-size:15px;line-height:1.4;color:#fff}.phcpr-access-line strong{font-weight:800!important}
.phcpr-alignments-line{display:block!important;margin-top:8px!important}
.phcpr-alignment-line{display:block!important;margin-top:12px!important}
.phcpr-messages-header{padding:4px 2px 8px}.phcpr-messages-header h2{font-size:30px!important;margin:0 0 7px!important}.phcpr-messages-header p{max-width:760px}

.phcpr-login-shell{min-height:620px!important;padding:34px!important;background:linear-gradient(145deg,#eef4f8,#ffffff)!important}
.phcpr-login-card-modern{width:min(100%,980px)!important;display:grid!important;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr)!important;padding:0!important;overflow:hidden!important;border-radius:26px!important}
.phcpr-login-brand{background:linear-gradient(150deg,#102a43,#173f5f);color:#fff;padding:52px 44px;display:flex;align-items:center}
.phcpr-login-brand-inner{width:100%;text-align:center}.phcpr-login-logo{display:block;width:230px;max-width:84%;max-height:145px;object-fit:contain;margin:0 auto 26px}.phcpr-login-brand-kicker{font-size:12px!important;letter-spacing:.13em;text-transform:uppercase;font-weight:900!important;color:#d8e8f8;margin-bottom:10px}.phcpr-login-brand h2{font-size:42px!important;color:#fff!important;margin:0 0 14px!important}.phcpr-login-brand p{font-size:16px;line-height:1.65;color:#d8e8f8;margin:0 auto;max-width:360px}
.phcpr-login-form{padding:50px 48px;background:#fff}.phcpr-login-welcome{display:inline-block;color:var(--phcpr-red);font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;font-weight:900!important;margin-bottom:7px}.phcpr-login-form h3{font-size:30px!important;margin:0 0 10px!important}.phcpr-login-intro{color:var(--phcpr-muted);line-height:1.6;margin:0 0 24px}.phcpr-login-form label{display:block;font-weight:800!important;margin:16px 0}.phcpr-login-form input[type=email],.phcpr-login-form input[type=password]{display:block;width:100%!important;background:#f8fafc!important;border:1px solid #cad7e3!important;border-radius:12px!important;padding:14px 15px!important;margin-top:7px!important;font-size:16px!important;min-height:50px!important}.phcpr-login-form input:focus{outline:none!important;border-color:#2e90fa!important;box-shadow:0 0 0 3px rgba(46,144,250,.12)!important}.phcpr-login-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px}.phcpr-login-actions .phcpr-check{margin:0!important}.phcpr-login-actions .phcpr-btn{min-width:120px;padding:13px 20px!important}.phcpr-login-help{margin-top:28px;padding-top:18px;border-top:1px solid var(--phcpr-border);display:grid;gap:3px}.phcpr-login-help strong{color:var(--phcpr-navy)}.phcpr-login-help span{font-size:13px!important;color:var(--phcpr-muted)}
@media(max-width:800px){.phcpr-login-card-modern{grid-template-columns:1fr!important}.phcpr-login-brand{padding:34px 28px}.phcpr-login-brand h2{font-size:34px!important}.phcpr-login-logo{width:190px}.phcpr-login-form{padding:34px 28px}.phcpr-hero-logos{min-height:120px!important}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:220px!important;max-height:130px!important}}

/* v0.1.9 full portal redesign */
:root{--phcpr-navy:#102a43;--phcpr-navy2:#173f5f;--phcpr-red:#c81d32;--phcpr-red2:#a81427;--phcpr-bg:#f4f7fa;--phcpr-border:#d9e2ec;--phcpr-text:#243b53;--phcpr-muted:#627d98;--phcpr-green:#177245;--phcpr-yellow:#9a6700;--phcpr-orange:#b54708;--phcpr-danger:#b42318}
.phcpr-portal{background:linear-gradient(180deg,#f6f9fb 0,#fff 420px);border-radius:24px;padding-top:26px!important}.phcpr-section{margin:34px 0!important}.phcpr-section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.phcpr-section-title-row h2{margin:2px 0 0!important}.phcpr-red-kicker{display:block;color:var(--phcpr-red)!important;font-weight:900!important;letter-spacing:.11em!important;font-size:11px!important;text-transform:uppercase!important}.phcpr-section-title-row>span,.phcpr-section-title-row>a{font-size:13px;color:var(--phcpr-muted);font-weight:700;text-decoration:none}.phcpr-section-title-row>a:hover{color:var(--phcpr-red)}

/* login */
.phcpr-login-shell{background:radial-gradient(circle at 12% 15%,rgba(200,29,50,.11),transparent 30%),linear-gradient(135deg,#eef3f7,#fff)!important}.phcpr-login-card-modern{box-shadow:0 30px 80px rgba(16,42,67,.18)!important;border:0!important}.phcpr-login-brand{position:relative;overflow:hidden;background:linear-gradient(145deg,#102a43 0,#173f5f 65%,#c81d32 140%)!important}.phcpr-login-brand:after{content:"";position:absolute;inset:auto -110px -150px auto;width:330px;height:330px;border-radius:50%;background:rgba(200,29,50,.25)}.phcpr-login-brand-inner{position:relative;z-index:2}.phcpr-login-logo{width:300px!important;max-width:92%!important;max-height:190px!important;margin-bottom:28px!important}.phcpr-login-brand-kicker{color:#ffd9df!important}.phcpr-login-form{border-top:6px solid var(--phcpr-red)}.phcpr-login-form .phcpr-btn.primary{background:linear-gradient(135deg,var(--phcpr-red),var(--phcpr-red2))!important;min-width:145px!important}.phcpr-login-welcome{background:#fff1f3;color:var(--phcpr-red)!important;padding:5px 9px;border-radius:999px}.phcpr-login-help{background:#f8fafc;margin:28px -20px -20px;padding:18px 20px!important;border-radius:0 0 16px 16px}

/* hero */
.phcpr-hero{background:radial-gradient(circle at 15% 10%,rgba(200,29,50,.28),transparent 25%),linear-gradient(135deg,#0c2237,#173f5f 68%,#102a43)!important;border:0!important;box-shadow:0 22px 60px rgba(16,42,67,.22)!important;padding:44px 38px 30px!important;overflow:hidden}.phcpr-hero:after{content:"";position:absolute;right:-110px;bottom:-150px;width:350px;height:350px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.phcpr-hero-logos{min-height:205px!important}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:455px!important;max-width:78%!important;max-height:205px!important}.phcpr-eyebrow{color:#ffd6dc!important;font-size:13px!important;letter-spacing:.15em!important}.phcpr-hero h1{margin-top:9px!important}.phcpr-id-line{font-size:20px!important}.phcpr-alignments-line{font-size:18px!important;margin-top:12px!important}.phcpr-profile-meta{display:flex!important;justify-content:center!important;gap:24px!important}.phcpr-identity-lines{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:12px;font-size:15px}.phcpr-current-status{margin:26px auto 0!important;display:flex;flex-direction:column;align-items:center;gap:8px}.phcpr-current-status>span{text-transform:uppercase;font-size:11px!important;letter-spacing:.12em;font-weight:900!important;color:#d8e8f8}.phcpr-current-status .phcpr-status{font-size:17px!important;padding:8px 18px!important;box-shadow:0 7px 20px rgba(0,0,0,.12)}.phcpr-status.active{background:#d1fadf;color:#05603a}.phcpr-status.attention_needed{background:#ffefd5;color:#9a3412}.phcpr-status.inactive{background:#e4e7ec;color:#344054}.phcpr-status.onboarding{background:#fff4cc;color:#8a4b00}.phcpr-renewal-strip{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:24px auto 0;padding:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:16px;max-width:900px}.phcpr-renewal-strip>div{min-width:180px;text-align:left;padding:8px 13px}.phcpr-renewal-strip span{display:block;color:#bdd2e6;font-size:11px!important;text-transform:uppercase;font-weight:900!important;letter-spacing:.06em}.phcpr-renewal-strip strong{display:block;color:#fff;font-size:16px;margin-top:4px}.phcpr-renewal-strip .hero-action{background:#fff!important;color:var(--phcpr-red)!important;box-shadow:none!important}.phcpr-renewal-flag{max-width:900px;margin:12px auto 0;background:#fff4ed;color:#7a271a;border-radius:14px;padding:14px 17px;text-align:left}.phcpr-renewal-flag strong{display:block;font-size:15px}.phcpr-renewal-flag span{display:block;margin-top:5px;font-weight:700}.phcpr-renewal-flag small{display:block;margin-top:9px;padding-top:9px;border-top:1px solid #fed7aa;line-height:1.45}.phcpr-secondary-note{border-left:4px solid #ffd166!important;text-align:left!important}

/* tabs */
.phcpr-tabs{background:#fff;border:1px solid var(--phcpr-border);border-radius:16px;padding:7px!important;box-shadow:0 9px 30px rgba(16,42,67,.07);position:sticky;top:10px;z-index:15}.phcpr-tabs button{border:0!important;background:transparent!important;padding:11px 15px!important}.phcpr-tabs button.active{background:var(--phcpr-navy)!important;color:#fff!important;box-shadow:0 6px 14px rgba(16,42,67,.18)}

/* dashboard alerts / updates */
.phcpr-new-message-alert{border-left:7px solid var(--phcpr-red)!important;background:linear-gradient(135deg,#fff1f3,#fff)!important}.phcpr-dashboard-updates{background:linear-gradient(180deg,#fff,#fff8f9);border:1px solid #f4d7dc;border-radius:20px;padding:22px}.phcpr-dashboard-update{border-top:4px solid var(--phcpr-red)!important}.phcpr-dashboard-update h3{margin:7px 0 9px!important}.phcpr-update-date{font-size:11px!important;letter-spacing:.07em;text-transform:uppercase;color:var(--phcpr-red)!important;font-weight:900!important}

/* metrics / leaderboard */
.phcpr-snapshot-section{background:linear-gradient(180deg,#f8fbff,#fff);border-radius:22px;padding:22px;border:1px solid #d9e7f2}.phcpr-last-updated{background:#fff;border:1px solid var(--phcpr-border);border-radius:12px;padding:8px 12px;text-align:right}.phcpr-last-updated span{display:block;font-size:10px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--phcpr-muted);font-weight:900!important}.phcpr-last-updated strong{display:block;font-size:13px;margin-top:2px;color:var(--phcpr-navy)}.phcpr-metric-card{border-top:4px solid var(--phcpr-navy)!important}.phcpr-metric-values{grid-template-columns:repeat(3,minmax(0,1fr))!important}.phcpr-leaderboard{padding:10px 18px!important}.phcpr-leader-row{display:grid;grid-template-columns:54px 1fr auto;gap:14px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--phcpr-border)}.phcpr-leader-row:last-child{border-bottom:0}.phcpr-rank{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--phcpr-navy);color:#fff!important;font-weight:900!important}.phcpr-leader-row>div strong{display:block;color:var(--phcpr-navy);font-size:15px}.phcpr-leader-row>div span{display:block;color:var(--phcpr-muted);font-size:12px!important;margin-top:2px}.phcpr-leader-row>b{color:var(--phcpr-red)}

/* featured Enrollware */
.phcpr-featured-resource{display:flex;justify-content:space-between;align-items:center;gap:25px;background:radial-gradient(circle at 0 0,rgba(200,29,50,.32),transparent 30%),linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:22px;padding:28px 30px;box-shadow:0 16px 42px rgba(16,42,67,.16)}.phcpr-featured-resource>div>span{font-size:11px!important;font-weight:900!important;letter-spacing:.12em;color:#ffd5dc;text-transform:uppercase}.phcpr-featured-resource h2,.phcpr-featured-resource h3{color:#fff!important;margin:6px 0 5px!important}.phcpr-featured-resource p{color:#d7e6f3;margin:0}.phcpr-featured-resource .phcpr-btn{background:var(--phcpr-red)!important;color:#fff!important;white-space:nowrap}

/* quick links */
.phcpr-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:14px}.phcpr-quick-tile{background:#fff;border:1px solid var(--phcpr-border);border-radius:16px;padding:18px;min-height:168px;display:flex;flex-direction:column;box-shadow:0 8px 22px rgba(16,42,67,.05);transition:.2s ease}.phcpr-quick-tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,42,67,.11);border-color:#b8cce0}.phcpr-quick-tag{align-self:flex-start;background:#eef4f8;color:var(--phcpr-navy)!important;font-size:10px!important;letter-spacing:.08em;font-weight:900!important;border-radius:999px;padding:5px 8px}.phcpr-quick-tile h3{margin:14px 0 6px!important;font-size:19px!important}.phcpr-quick-tile p{color:var(--phcpr-muted);font-size:13px;margin:0 0 14px}.phcpr-quick-tile a{margin-top:auto;text-decoration:none;font-weight:900;color:var(--phcpr-red)}

/* forms */
.phcpr-forms-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.phcpr-form-tile{background:#fff;border:1px solid var(--phcpr-border);border-radius:15px;min-height:105px;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;box-shadow:0 7px 20px rgba(16,42,67,.045)}.phcpr-form-tile a,.phcpr-form-tile>div{display:flex;flex-direction:column;gap:8px;text-decoration:none;width:100%}.phcpr-form-tile strong{font-size:18px;color:var(--phcpr-navy)}.phcpr-form-tile span{font-size:12px!important;color:var(--phcpr-muted)}.phcpr-form-tile a:hover strong{color:var(--phcpr-red)}

/* eCard center */
.phcpr-ecard-section{background:#f8fafc;border:1px solid #e3eaf1;border-radius:22px;padding:22px}.phcpr-ecard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.phcpr-ecard-card{display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:22px!important;border-top:5px solid var(--phcpr-navy)!important}.phcpr-ecard-card:nth-child(2){border-top-color:var(--phcpr-red)!important}.phcpr-ecard-card:nth-child(3){border-top-color:#386fa4!important}.phcpr-ecard-discipline{display:inline-block;font-size:10px!important;font-weight:900!important;letter-spacing:.12em;color:var(--phcpr-red)!important;margin-bottom:7px}.phcpr-ecard-card h3{font-size:19px!important;min-height:48px}.phcpr-ecard-card .phcpr-price{font-size:13px}.phcpr-ecard-card .phcpr-price th,.phcpr-ecard-card .phcpr-price td{padding:10px 6px}.phcpr-ecard-card>.phcpr-btn{margin-top:18px;width:100%}.phcpr-k12-callout{display:flex;flex-direction:column;gap:4px!important;margin-top:14px!important}.phcpr-k12-callout span{font-size:11px!important}

/* teaching */
.phcpr-teaching-card{border-left:6px solid var(--phcpr-red)!important}.phcpr-faculty-fineprint{margin-top:22px!important;padding-top:14px!important;border-top:1px solid var(--phcpr-border);line-height:1.55}.phcpr-faculty-achievement{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:linear-gradient(135deg,#fffaf0,#fff);border:1px solid #f2d48d!important}.phcpr-achievement-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#fff0bd;color:#9a6700;font-size:27px}.phcpr-faculty-achievement h3{margin:4px 0 7px!important}

/* messages */
.phcpr-messages-hero{display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:20px;padding:24px 28px;margin-bottom:18px}.phcpr-messages-hero h2{color:#fff!important;margin:3px 0 7px!important}.phcpr-messages-hero p{margin:0;color:#d8e8f4;max-width:850px}.phcpr-message-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--phcpr-red);font-size:25px}.phcpr-chat-card{border:1px solid var(--phcpr-border);border-radius:18px;overflow:hidden;background:#fff}.phcpr-chat-compose{background:#f8fafc!important}

/* students */
.phcpr-students-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:20px;padding:26px 28px;margin-bottom:16px}.phcpr-students-hero h2{color:#fff!important;margin:3px 0 6px!important}.phcpr-students-hero p{color:#d8e8f4;margin:0;max-width:800px}.phcpr-student-total{font-size:34px;font-weight:900;color:#fff;text-align:center;min-width:110px}.phcpr-student-total span{display:block;font-size:10px!important;text-transform:uppercase;letter-spacing:.08em;color:#d8e8f4}.phcpr-student-search{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.35fr) minmax(180px,.35fr) auto;gap:10px;background:#fff;border:1px solid var(--phcpr-border);border-radius:16px;padding:13px;margin-bottom:16px}.phcpr-student-search input,.phcpr-student-search select{width:100%;border:1px solid #cbd8e4!important;border-radius:10px!important;padding:10px 12px!important;background:#fff!important}.phcpr-student-table-card{padding:0!important;overflow:hidden}.phcpr-student-table th{background:#f7f9fb}.phcpr-ecard-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px!important;color:var(--phcpr-navy)}.phcpr-empty-state{text-align:center;padding:40px!important}

/* resources */
.phcpr-resources-head{text-align:center;max-width:760px;margin:0 auto 22px}.phcpr-resources-head h2{font-size:34px!important;margin:4px 0 8px!important}.phcpr-resources-head p{color:var(--phcpr-muted);margin:0}.phcpr-resource-group{margin-top:28px}.phcpr-resource-group h3{text-align:center;font-size:22px!important;margin-bottom:14px!important}.phcpr-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:14px;max-width:980px;margin:0 auto}.phcpr-resource-tile{background:#fff;border:1px solid var(--phcpr-border);border-radius:15px;padding:18px;text-align:center;display:flex;flex-direction:column;gap:12px}.phcpr-resource-tile strong{color:var(--phcpr-navy);font-size:16px}.phcpr-resource-tile a{text-decoration:none;font-weight:900;color:var(--phcpr-red);font-size:13px}

/* faculty */
.phcpr-faculty-welcome{background:radial-gradient(circle at 0 0,rgba(200,29,50,.25),transparent 30%),linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:22px;padding:28px;margin-bottom:18px}.phcpr-faculty-welcome h2{color:#fff!important;margin:4px 0 8px!important}.phcpr-faculty-welcome p{color:#d8e8f4;max-width:840px}.phcpr-faculty-fee{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:13px;padding:12px 15px;margin-top:17px}.phcpr-faculty-fee strong{color:#fff;font-size:18px}.phcpr-faculty-fee span{color:#d8e8f4}.phcpr-step-card ol{padding-left:21px}.phcpr-step-card li{margin:0 0 10px;line-height:1.45}

/* admin upload center */
.phcpr-upload-center-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.phcpr-admin-upload-tile{display:flex;flex-direction:column;min-height:280px}.phcpr-admin-upload-kicker{font-size:10px!important;font-weight:900!important;letter-spacing:.1em;color:#c81d32!important}.phcpr-admin-upload-tile h2{margin:8px 0!important}.phcpr-admin-upload-tile p{color:#646970;line-height:1.5}.phcpr-admin-last-update{background:#f6f7f7;border-radius:8px;padding:10px 12px;margin:auto 0 14px}.phcpr-admin-last-update strong,.phcpr-admin-last-update span{display:block}.phcpr-admin-last-update span{margin-top:3px;color:#646970}.phcpr-admin-upload-card{max-width:900px}.phcpr-bulk-message summary{cursor:pointer;color:#102a43}

/* update archive */
.phcpr-updates-title-simple{text-align:center;max-width:760px;margin:0 auto 24px!important}.phcpr-updates-title-simple h2{font-size:34px!important}.phcpr-updates-title-simple p{font-size:14px!important}.phcpr-update{overflow:hidden}.phcpr-update.featured{border-top:5px solid var(--phcpr-red)!important}

@media(max-width:980px){.phcpr-ecard-grid{grid-template-columns:1fr}.phcpr-forms-grid{grid-template-columns:repeat(2,1fr)}.phcpr-upload-center-grid{grid-template-columns:1fr}.phcpr-metric-values{grid-template-columns:repeat(2,minmax(0,1fr))!important}.phcpr-student-search{grid-template-columns:1fr 1fr}.phcpr-faculty-achievement{grid-template-columns:auto 1fr}.phcpr-faculty-achievement form{grid-column:1/-1}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:360px!important}}
@media(max-width:680px){.phcpr-section-title-row{align-items:flex-start;flex-direction:column}.phcpr-last-updated{text-align:left}.phcpr-forms-grid{grid-template-columns:1fr}.phcpr-metric-values{grid-template-columns:1fr!important}.phcpr-featured-resource{align-items:flex-start;flex-direction:column}.phcpr-student-search{grid-template-columns:1fr}.phcpr-students-hero{align-items:flex-start;flex-direction:column}.phcpr-student-total{text-align:left}.phcpr-leader-row{grid-template-columns:46px 1fr}.phcpr-leader-row>b{grid-column:2}.phcpr-faculty-achievement{grid-template-columns:1fr}.phcpr-achievement-icon{width:48px;height:48px}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:320px!important;max-width:92%!important}.phcpr-profile-meta,.phcpr-identity-lines{justify-content:flex-start!important;text-align:left}.phcpr-hero{text-align:left!important}.phcpr-hero .phcpr-eyebrow{text-align:left!important}.phcpr-current-status{align-items:flex-start}.phcpr-renewal-strip{justify-content:flex-start}.phcpr-renewal-strip>div{text-align:left;padding-left:3px}.phcpr-tabs{position:static}}

.phcpr-virtual-monitor-alert{margin-top:16px;padding-top:16px;border-top:1px solid rgba(180,35,24,.18)}.phcpr-virtual-monitor-alert p{margin:7px 0}.phcpr-virtual-monitor-alert ul{margin:8px 0 8px 22px}

/* v0.1.10 admin import / AI intake */
.phcpr-upload-center-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}
.phcpr-ai-source{border:1px solid #dcdcde;border-radius:14px;padding:16px;margin:16px 0;background:#fff}.phcpr-ai-source-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #eef0f2}.phcpr-ai-segment{margin-top:14px;border:1px solid #d9e2ec;border-radius:12px;padding:14px;background:#f8fbff}.phcpr-ai-segment.is-filed{background:#ecfdf3;border-color:#abefc6}.phcpr-ai-segment-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.phcpr-ai-segment-title span{font-size:12px;font-weight:700;color:#627d98}.phcpr-ai-review-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.phcpr-ai-review-form label{font-weight:600}.phcpr-ai-review-form select,.phcpr-ai-review-form input[type=date],.phcpr-ai-review-form input[type=number],.phcpr-ai-review-form textarea{width:100%;margin-top:5px}.phcpr-ai-notes{grid-column:span 2}.phcpr-ai-current,.phcpr-ai-findings{grid-column:1/-1}.phcpr-ai-findings{padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e5e7eb;font-size:12px;color:#475467}.phcpr-admin .phcpr-upload-box{max-width:900px}.phcpr-admin .phcpr-upload-box .description{display:block;margin-top:7px;max-width:650px}.phcpr-admin code{white-space:normal}
@media(max-width:1100px){.phcpr-ai-review-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.phcpr-ai-source-head{align-items:flex-start;flex-direction:column}.phcpr-ai-review-form{grid-template-columns:1fr}.phcpr-ai-notes{grid-column:auto}}


/* v0.1.10.1 - AI Intake human-review document preview */
.phcpr-ai-human-review{display:grid;grid-template-columns:minmax(420px,0.95fr) minmax(520px,1.05fr);gap:18px;align-items:start;margin-top:16px}
.phcpr-ai-preview-pane{position:sticky;top:44px;border:1px solid #d7e1eb;border-radius:14px;background:#f7fafc;padding:14px;min-width:0}
.phcpr-ai-preview-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:10px}
.phcpr-ai-preview-heading h3{margin:2px 0 0;font-size:17px;color:#102f49}
.phcpr-ai-review-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#cf2030}
.phcpr-ai-preview-frame{display:block;width:100%;height:680px;border:1px solid #cbd6e2;border-radius:10px;background:#fff}
.phcpr-ai-preview-frame.is-image{height:auto;min-height:360px;max-height:680px;overflow:auto;text-align:center;padding:10px;box-sizing:border-box}
.phcpr-ai-preview-frame.is-image img{display:block;max-width:100%;height:auto;max-height:640px;margin:0 auto;object-fit:contain}
.phcpr-ai-preview-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:9px;font-size:11px;color:#627d98}
.phcpr-ai-preview-footer a{font-weight:700;text-decoration:none}
.phcpr-ai-review-pane{min-width:0}
.phcpr-ai-segment-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 9px}
.phcpr-ai-segment-toolbar span{font-size:11px;font-weight:700;color:#627d98}
@media(max-width:1250px){.phcpr-ai-human-review{grid-template-columns:1fr}.phcpr-ai-preview-pane{position:relative;top:auto}.phcpr-ai-preview-frame{height:560px}}
@media(max-width:700px){.phcpr-ai-preview-frame{height:460px}.phcpr-ai-preview-heading,.phcpr-ai-preview-footer{flex-direction:column}.phcpr-ai-preview-frame.is-image{min-height:260px}}

/* v0.1.10.3 - combined PDF review, rescan, reject/delete controls */
.phcpr-ai-source-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.phcpr-ai-source-actions form{margin:0}.phcpr-danger-button{border-color:#b42318!important;color:#b42318!important;background:#fff!important}.phcpr-danger-button:hover{background:#fef3f2!important;border-color:#912018!important;color:#912018!important}.phcpr-combined-banner{margin:12px 0 0;padding:11px 13px;border-radius:10px;background:#eef6ff;border-left:4px solid #2e90fa;color:#24455f}.phcpr-ai-segment.is-rejected{background:#fff7f6;border-color:#f3b7b2;opacity:.9}.phcpr-ai-segment.is-rejected .phcpr-ai-segment-title span{color:#b42318}.phcpr-rejected-note{padding:11px 12px;border-radius:9px;background:#fef3f2;border:1px solid #fecdca;color:#7a271a;margin:10px 0}.phcpr-ai-reject-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end;margin-top:13px;padding-top:13px;border-top:1px dashed #d0d5dd}.phcpr-ai-reject-form label{font-weight:600}.phcpr-ai-reject-form input[type=text]{display:block;width:100%;margin-top:5px}.phcpr-inline-action{margin-top:10px}.phcpr-doc-ai-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px dashed #dcdcde}.phcpr-doc-ai-actions form{margin:0}.phcpr-doc-ai-actions .description{max-width:700px}
@media(max-width:760px){.phcpr-ai-source-actions{justify-content:flex-start}.phcpr-ai-reject-form{grid-template-columns:1fr}}

/* v0.1.11 - resumable bulk intake, compliance visibility, email automation */
.phcpr-resumable-uploader{margin-top:14px}.phcpr-bulk-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 15px;margin-top:12px;border:1px solid #d8e2ec;border-radius:10px;background:#f8fbfd}.phcpr-bulk-summary strong{color:#102f49}.phcpr-bulk-summary span{color:#627d98}.phcpr-bulk-queue{display:grid;gap:10px;margin-top:12px;max-height:520px;overflow:auto}.phcpr-bulk-row{border:1px solid #d9e2ec;border-radius:10px;padding:11px 13px;background:#fff}.phcpr-bulk-row-main,.phcpr-bulk-row-foot{display:flex;justify-content:space-between;gap:12px;align-items:center}.phcpr-bulk-row-main strong{display:block;color:#102f49}.phcpr-bulk-row-main .description{display:block;max-width:720px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phcpr-bulk-progress{height:9px;background:#eef2f6;border-radius:999px;overflow:hidden;margin:9px 0}.phcpr-bulk-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#173f5f,#c81d32);transition:width .15s ease}.phcpr-bulk-status{font-size:12px;font-weight:800;color:#627d98}.phcpr-bulk-status.complete{color:#177245}.phcpr-bulk-status.error{color:#b42318}.phcpr-bulk-status.uploading{color:#175cd3}.phcpr-bulk-count{font-size:11px;color:#627d98}.phcpr-source-badge{display:inline-block;padding:4px 7px;border-radius:999px;background:#eef4f8;color:#173f5f;font-size:9px;font-weight:900;letter-spacing:.08em;vertical-align:2px}.phcpr-manual-segment-card{margin-top:14px;padding:13px;border:1px dashed #9db4c8;border-radius:10px;background:#fbfdff;display:flex;justify-content:space-between;gap:14px;align-items:center}.phcpr-manual-segment-card>div strong,.phcpr-manual-segment-card>div span{display:block}.phcpr-manual-segment-card>div span{font-size:12px;color:#627d98;margin-top:3px}.phcpr-manual-segment-card form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.phcpr-manual-segment-card label{font-size:11px;font-weight:700;color:#475467}.phcpr-manual-segment-card input{display:block;width:90px;margin-top:4px}
.phcpr-file-status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.phcpr-file-status.complete{background:#dcfae6;color:#08623d}.phcpr-file-status.missing{background:#fef3f2;color:#b42318}.phcpr-file-status.needs_review{background:#fff6d8;color:#8a4b00}.phcpr-checklist-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.phcpr-required-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:16px}.phcpr-required-discipline{border:1px solid #e0e7ee;border-radius:12px;padding:13px;background:#fbfdff}.phcpr-required-discipline h3,.phcpr-required-discipline h4{margin:0 0 10px;color:#102f49}.phcpr-required-item{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #edf1f5}.phcpr-required-item:first-of-type{border-top:0}.phcpr-required-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:900}.phcpr-required-item.found .phcpr-required-icon{background:#dcfae6;color:#08623d}.phcpr-required-item.needs_review .phcpr-required-icon{background:#fff6d8;color:#8a4b00}.phcpr-required-item.missing .phcpr-required-icon{background:#fef3f2;color:#b42318}.phcpr-required-item strong,.phcpr-required-item span{display:block}.phcpr-required-item span{font-size:11px;color:#667085;margin-top:2px}.phcpr-email-toggle-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.phcpr-pill-neutral{background:#eaecf0!important;color:#344054!important}
@media(max-width:760px){.phcpr-bulk-summary,.phcpr-bulk-row-main,.phcpr-bulk-row-foot,.phcpr-manual-segment-card,.phcpr-checklist-head,.phcpr-email-toggle-row{align-items:flex-start;flex-direction:column}.phcpr-manual-segment-card form{width:100%}.phcpr-required-item{grid-template-columns:28px 1fr}.phcpr-required-item .button{grid-column:2}}

/* v0.1.12 — consolidated portal polish, scalable records, inventory and unified file workflow */
.phcpr-simple-heading{margin:0 0 16px}.phcpr-simple-heading h2{margin:0 0 5px!important;font-size:27px!important;color:var(--phcpr-navy)!important}.phcpr-simple-heading p{margin:0;color:var(--phcpr-muted);font-size:14px;line-height:1.55;max-width:850px}

/* Stronger, cleaner identity header. */
.phcpr-hero{padding:48px 42px 32px!important}.phcpr-hero-logos{min-height:250px!important;margin-bottom:12px!important}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:570px!important;max-width:86%!important;max-height:255px!important}.phcpr-hero .phcpr-eyebrow{font-size:17px!important;line-height:1.25!important;letter-spacing:.105em!important;font-weight:900!important;color:#ffe2e6!important;margin:2px 0 13px!important}.phcpr-hero h1{font-size:clamp(31px,4.2vw,48px)!important;margin:7px 0 12px!important}.phcpr-id-line{font-size:20px!important;font-weight:780!important;margin-top:2px!important}.phcpr-alignments-line{font-size:18px!important;margin-top:13px!important}.phcpr-alignments-line strong,.phcpr-identity-lines strong{font-weight:900!important}.phcpr-identity-lines{margin-top:14px!important;font-size:15px!important;gap:34px!important}.phcpr-current-status{margin-top:24px!important}.phcpr-current-status>span{font-size:12px!important}.phcpr-renewal-strip.four{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;max-width:1040px!important;padding:0!important;margin-top:26px!important;overflow:hidden}.phcpr-renewal-strip.four>div{min-width:0!important;text-align:center!important;padding:17px 18px!important;border-left:1px solid rgba(255,255,255,.16)}.phcpr-renewal-strip.four>div:first-child{border-left:0}.phcpr-renewal-strip.four span{font-size:11px!important;letter-spacing:.08em!important}.phcpr-renewal-strip.four strong{font-size:18px!important;margin-top:6px!important}.phcpr-hero-actions{display:flex;justify-content:center;margin-top:14px}.phcpr-hero-actions .hero-action{background:var(--phcpr-red)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 10px 24px rgba(0,0,0,.15)!important;padding:11px 19px!important}

/* Primary day-to-day resource is intentionally first and visually prominent. */
.phcpr-enrollware-feature{margin-top:18px!important}.phcpr-featured-resource{border:1px solid rgba(16,42,67,.08)}.phcpr-featured-resource h2{font-size:27px!important}.phcpr-featured-resource h3{font-size:23px!important}

/* Action-required items should read as urgent, not informational. */
.phcpr-urgent-section{margin:22px 0!important}.phcpr-urgent-alert{display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:start;background:linear-gradient(135deg,#fff1f1,#fff8f8);border:2px solid #e45867;border-left:8px solid var(--phcpr-danger);border-radius:18px;padding:22px 24px;box-shadow:0 12px 32px rgba(180,35,24,.12)}.phcpr-urgent-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--phcpr-danger);color:#fff;font-size:30px;font-weight:950;line-height:1;box-shadow:0 8px 20px rgba(180,35,24,.2)}.phcpr-urgent-copy>span{display:block;color:var(--phcpr-danger)!important;font-size:12px!important;line-height:1.2;font-weight:950!important;letter-spacing:.13em!important;margin:2px 0 4px}.phcpr-urgent-copy h2{color:#7a271a!important;font-size:26px!important;margin:0 0 8px!important}.phcpr-urgent-copy p{margin:7px 0 15px;font-size:15px;line-height:1.55;color:#63302b}.phcpr-urgent-note{margin:10px 0 12px;padding:12px 14px;background:#fff;border:1px solid #f3b7b2;border-radius:10px}.phcpr-urgent-note p{margin:0;color:#63302b}

/* Quick links and managed Forms should look like app shortcuts rather than placeholder boxes. */
.phcpr-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:13px}.phcpr-quick-card{min-height:132px!important;padding:18px 19px;border:1px solid #dce5ed;border-radius:16px;text-decoration:none!important;color:var(--phcpr-text)!important;background:#fff!important;box-shadow:0 6px 18px rgba(16,42,67,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.phcpr-quick-card:hover{transform:translateY(-2px);border-color:#aec2d4;box-shadow:0 10px 24px rgba(16,42,67,.09)}.phcpr-quick-card strong{font-size:17px;color:var(--phcpr-navy)}.phcpr-quick-card span{font-size:12.5px;line-height:1.45;color:var(--phcpr-muted);margin:8px 0 14px}.phcpr-quick-card b{font-size:12px;color:var(--phcpr-red)}
.phcpr-managed-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px}.phcpr-managed-form{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 19px;border:1px solid #dce5ed;background:#fff;border-radius:15px;text-decoration:none!important;box-shadow:0 5px 18px rgba(16,42,67,.05);color:var(--phcpr-text)!important}.phcpr-managed-form:hover{border-color:#b8cbdc;box-shadow:0 9px 23px rgba(16,42,67,.09)}.phcpr-managed-form strong{display:block;color:var(--phcpr-navy);font-size:16px}.phcpr-managed-form span{display:block;color:var(--phcpr-muted);font-size:12.5px;line-height:1.45;margin-top:4px}.phcpr-managed-form b{white-space:nowrap;color:var(--phcpr-red);font-size:12px}

/* eCard inventory and storefront. All purchase cards use the same table rhythm. */
.phcpr-inventory-card{margin-bottom:18px!important;background:linear-gradient(180deg,#fff,#f7fbfe)!important}.phcpr-inventory-head h3{margin-bottom:4px!important}.phcpr-inventory-head p{margin:0;color:var(--phcpr-muted)}.phcpr-inventory-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:16px}.phcpr-inventory-item{padding:15px 12px;border:1px solid #dce6ee;border-radius:13px;background:#fff;text-align:center}.phcpr-inventory-item span{display:block;min-height:34px;color:#526b82;font-size:11px;line-height:1.35;font-weight:800}.phcpr-inventory-item strong{display:block;font-size:30px;color:var(--phcpr-navy);line-height:1.1;margin:6px 0 2px}.phcpr-inventory-item small{display:block;color:var(--phcpr-muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.phcpr-ecard-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.phcpr-ecard-card{height:100%;padding:22px!important}.phcpr-ecard-card h3{min-height:50px!important}.phcpr-ecard-card .phcpr-price{table-layout:fixed}.phcpr-ecard-card .phcpr-price th,.phcpr-ecard-card .phcpr-price td{width:33.333%;text-align:left!important}.phcpr-advanced-price td:first-child strong{display:block}.phcpr-savings-note{display:block!important;margin-top:3px;color:var(--phcpr-red)!important;font-size:9px!important;line-height:1.2;font-weight:900!important;text-transform:uppercase;letter-spacing:.035em}.phcpr-savings{font-size:9px!important}

/* Student database is paginated server-side; these controls remain usable with thousands of records. */
.phcpr-results-summary{margin:12px 0 9px;color:var(--phcpr-muted);font-size:13px;font-weight:700}.phcpr-pagination{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin:18px 0 4px}.phcpr-pagination a,.phcpr-pagination strong,.phcpr-pagination span{min-width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:0 10px}.phcpr-pagination a{border:1px solid #d8e2ec;background:#fff;color:var(--phcpr-navy);text-decoration:none!important;font-weight:800}.phcpr-pagination a:hover{border-color:#a7bed1;background:#f8fbfd}.phcpr-pagination strong{background:var(--phcpr-navy);color:#fff}.phcpr-pagination span{color:var(--phcpr-muted);min-width:auto;padding:0 3px}.phcpr-student-total{font-size:29px;font-weight:900;color:var(--phcpr-navy);text-align:right}.phcpr-student-total span{display:block;font-size:11px;color:var(--phcpr-muted);text-transform:uppercase;letter-spacing:.08em}.phcpr-students-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:15px}.phcpr-students-hero h2{margin-bottom:4px!important}.phcpr-students-hero p{margin:0;color:var(--phcpr-muted)}.phcpr-student-search{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:9px;margin-bottom:10px}.phcpr-student-search input,.phcpr-student-search select{width:100%;min-height:42px;border:1px solid #cfdbe5;border-radius:10px;padding:9px 11px;background:#fff}

/* Instructor file = checklist + the exact upload action needed to fix missing items. */
.phcpr-required-checklist{margin-bottom:18px!important}.phcpr-inline-upload{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.phcpr-upload-other{margin-top:17px;border-top:1px solid #e3e9ef;padding-top:14px}.phcpr-upload-other summary{cursor:pointer;color:var(--phcpr-navy);font-weight:850}.phcpr-upload-other form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.phcpr-file-history-details{margin-top:16px!important}.phcpr-file-history-details>summary{cursor:pointer}

/* Messages: clean navy header, no decorative red square/kicker. */
.phcpr-messages-hero{display:block!important;padding:26px 29px!important}.phcpr-messages-hero h2{font-size:28px!important;margin:0 0 7px!important}.phcpr-messages-hero p{font-size:14px;line-height:1.55}

/* Recognition makes the reason for the ranking explicit. */
.phcpr-leaderboard{padding:8px 22px!important}.phcpr-leader-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 0;border-top:1px solid #e8eef3}.phcpr-leader-row:first-child{border-top:0}.phcpr-rank{width:40px;height:40px;display:grid;place-items:center;background:#f0f5f9;border-radius:50%;font-weight:900;color:var(--phcpr-navy)}.phcpr-leader-row>div strong,.phcpr-leader-row>div span{display:block}.phcpr-leader-row>div span{font-size:12px;color:var(--phcpr-muted);margin-top:3px}.phcpr-leader-row>b{white-space:nowrap;color:var(--phcpr-red);font-size:14px}

/* Faculty workspaces and file-status hover remain compact and immediately useful. */
.phcpr-assigned-workspace>.phcpr-card:first-child{border-top:5px solid var(--phcpr-navy)}.phcpr-assigned-head h2{margin:0 0 5px!important}.phcpr-file-status[title]{cursor:help}.phcpr-faculty-center>.phcpr-section:first-child{margin-top:0!important}

/* Sensei is visually embedded in the existing portal rather than looking like a second application. */
.phcpr-sensei-wrap{overflow:hidden}.phcpr-training-section .sensei-course-filters,.phcpr-training-section .course-container{max-width:100%}.phcpr-training-section a{word-break:normal}

/* Admin inventory/audit tools. */
.phcpr-inventory-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.phcpr-inventory-filters select{min-width:190px}.phcpr-admin .phcpr-file-status[title]{cursor:help}

@media(max-width:1050px){.phcpr-inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.phcpr-renewal-strip.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}.phcpr-renewal-strip.four>div:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.16)}.phcpr-renewal-strip.four>div:nth-child(4){border-top:1px solid rgba(255,255,255,.16)}}
@media(max-width:760px){.phcpr-hero{padding:31px 22px 25px!important}.phcpr-hero-logos{min-height:165px!important}.phcpr-hero-logos .phcpr-logo.main,.phcpr-logo.main{width:400px!important;max-width:96%!important;max-height:175px!important}.phcpr-hero .phcpr-eyebrow{font-size:13px!important;text-align:center!important}.phcpr-hero{text-align:center!important}.phcpr-profile-meta,.phcpr-identity-lines{justify-content:center!important;text-align:center!important}.phcpr-current-status{align-items:center!important}.phcpr-renewal-strip{justify-content:center!important}.phcpr-renewal-strip.four>div{text-align:center!important}.phcpr-urgent-alert{grid-template-columns:1fr}.phcpr-urgent-icon{width:44px;height:44px;font-size:24px}.phcpr-inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phcpr-students-hero{align-items:flex-start;flex-direction:column}.phcpr-student-total{text-align:left}.phcpr-student-search{grid-template-columns:1fr}.phcpr-leader-row{grid-template-columns:46px 1fr}.phcpr-leader-row>b{grid-column:2;white-space:normal}.phcpr-required-item{grid-template-columns:28px 1fr}.phcpr-inline-upload{grid-column:2;margin-left:0}.phcpr-managed-form{align-items:flex-start}.phcpr-upload-other form{align-items:flex-start;flex-direction:column}.phcpr-upload-other input{max-width:100%}}
@media(max-width:520px){.phcpr-renewal-strip.four{grid-template-columns:1fr!important}.phcpr-renewal-strip.four>div{border-left:0!important;border-top:1px solid rgba(255,255,255,.16)!important}.phcpr-renewal-strip.four>div:first-child{border-top:0!important}.phcpr-inventory-grid{grid-template-columns:1fr 1fr}.phcpr-inventory-item span{min-height:0}}
.phcpr-file-status[data-phcpr-tooltip]{position:relative;outline:none}.phcpr-file-status[data-phcpr-tooltip]:hover:after,.phcpr-file-status[data-phcpr-tooltip]:focus:after{content:attr(data-phcpr-tooltip);position:absolute;z-index:9999;left:50%;bottom:calc(100% + 9px);transform:translateX(-50%);width:max-content;max-width:360px;white-space:pre-line;text-align:left;background:#102a43;color:#fff;border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.45;font-weight:650;letter-spacing:0;box-shadow:0 10px 28px rgba(16,42,67,.22);pointer-events:none}.phcpr-file-status[data-phcpr-tooltip]:hover:before,.phcpr-file-status[data-phcpr-tooltip]:focus:before{content:"";position:absolute;z-index:9999;left:50%;bottom:calc(100% + 3px);transform:translateX(-50%);border:6px solid transparent;border-top-color:#102a43;pointer-events:none}

/* ===== v0.2.0 final class-management / admin polish overrides ===== */
.phcpr-students-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:0 0 15px;padding:0 2px}.phcpr-students-heading h2{margin:0 0 5px!important;font-size:30px!important;color:var(--phcpr-navy)!important}.phcpr-students-heading p{margin:0;color:var(--phcpr-muted);font-size:14px;line-height:1.5}.phcpr-student-count-pill{display:flex;align-items:baseline;gap:8px;background:#f3f7fa;border:1px solid #dce6ee;border-radius:999px;padding:8px 14px;white-space:nowrap}.phcpr-student-count-pill strong{font-size:20px;color:var(--phcpr-navy)}.phcpr-student-count-pill span{font-size:10px!important;text-transform:uppercase;letter-spacing:.08em;color:var(--phcpr-muted);font-weight:900!important}.phcpr-students-section .phcpr-student-table-card{box-shadow:0 9px 28px rgba(16,42,67,.06)}

.phcpr-admin-upload-tile{position:relative;min-height:300px;padding:24px!important;border:1px solid #dde6ed!important;border-top:4px solid var(--phcpr-navy)!important;border-radius:16px!important;box-shadow:0 8px 24px rgba(16,42,67,.055)!important}.phcpr-admin-upload-tile:nth-child(2){border-top-color:#386fa4!important}.phcpr-admin-upload-tile:nth-child(3){border-top-color:#607d8b!important}.phcpr-admin-upload-tile:nth-child(4){border-top-color:var(--phcpr-red)!important}.phcpr-admin-upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eef4f8;color:var(--phcpr-navy);font-size:22px;font-weight:900}.phcpr-admin-upload-tile h2{font-size:19px!important;margin:14px 0 7px!important}.phcpr-admin-upload-tile>p{margin:0 0 18px!important;line-height:1.55}.phcpr-admin-upload-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:0}.phcpr-admin-last-update{margin-top:auto!important}.phcpr-upload-center-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}

.phcpr-classes-page{margin-top:0}.phcpr-class-notice{display:flex;gap:14px;align-items:center;margin-bottom:18px;padding:15px 18px;border:1px solid #cfe0ec;border-left:5px solid var(--phcpr-navy);border-radius:14px;background:#f5f9fc}.phcpr-class-notice strong{white-space:nowrap;color:var(--phcpr-navy)}.phcpr-class-notice span{color:#536d82;font-size:13px;line-height:1.45}.phcpr-class-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px}.phcpr-class-heading h2{margin:0 0 5px!important;font-size:30px!important}.phcpr-class-heading p{margin:0;color:var(--phcpr-muted)}.phcpr-class-search{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:9px;margin-bottom:14px}.phcpr-class-search input{width:100%;min-height:43px;border:1px solid #cfdae4!important;border-radius:11px!important;padding:9px 12px!important}.phcpr-class-list-card{padding:0!important;overflow:hidden}.phcpr-class-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.phcpr-class-form-grid label{display:flex;flex-direction:column;gap:6px}.phcpr-class-form-grid input:not([type=checkbox]),.phcpr-class-form-grid select{width:100%;min-height:43px;border:1px solid #ccd8e2;border-radius:9px;padding:8px 10px;background:#fff}.phcpr-class-exam{justify-content:flex-end;align-items:flex-start;flex-direction:row!important}.phcpr-class-toolbar{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:12px}.phcpr-class-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0!important;overflow:hidden}.phcpr-class-summary>div{padding:16px 18px;border-right:1px solid #e1e8ee;border-bottom:1px solid #e1e8ee}.phcpr-class-summary>div:nth-child(4n){border-right:0}.phcpr-class-summary span,.phcpr-class-summary small{display:block;color:var(--phcpr-muted);font-size:10px!important;text-transform:uppercase;letter-spacing:.065em;font-weight:800}.phcpr-class-summary strong{display:block;margin:5px 0 2px;color:var(--phcpr-navy);font-size:15px}.phcpr-roster-editor{margin-top:10px}.phcpr-roster-table input,.phcpr-roster-table select{width:100%;min-width:100px;border:1px solid #d0dbe4;border-radius:7px;padding:7px 8px;background:#fff}.phcpr-roster-table input[type=checkbox]{width:auto;min-width:0}.phcpr-course-doc-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.phcpr-course-doc{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e0e8ef;border-radius:10px;background:#fbfcfd}.phcpr-course-doc strong,.phcpr-course-doc span{display:block}.phcpr-course-doc span{margin-top:3px;color:var(--phcpr-muted);font-size:11px}.phcpr-course-doc-upload{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #e2e9ef}.phcpr-course-doc-upload label{display:flex;flex-direction:column;gap:5px}.phcpr-course-doc-upload label:nth-child(3){grid-column:1/-1}.phcpr-course-doc-upload input,.phcpr-course-doc-upload select{width:100%;min-height:40px}.phcpr-course-doc-upload button{justify-self:start}.phcpr-signature-form{display:flex;flex-direction:column;gap:13px}.phcpr-signature-pad{display:block;max-width:100%;height:150px;border:2px solid #c8d5df;border-radius:10px;background:#fff;touch-action:none;cursor:crosshair}.phcpr-certified{padding:13px 15px;border-radius:11px;background:#ecfdf3;border:1px solid #b7e5c6;color:#176b3a}.phcpr-class-notice+.phcpr-simple-heading{margin-top:0}

/* No savings labels in eCard storefront. */
.phcpr-savings-note,.phcpr-savings{display:none!important}

@media(max-width:1200px){.phcpr-upload-center-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.phcpr-class-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.phcpr-class-summary>div:nth-child(2n){border-right:0}.phcpr-class-summary>div:nth-child(odd){border-right:1px solid #e1e8ee}}
@media(max-width:760px){.phcpr-students-heading,.phcpr-class-heading{align-items:flex-start;flex-direction:column}.phcpr-student-count-pill{align-self:flex-start}.phcpr-upload-center-grid{grid-template-columns:1fr!important}.phcpr-class-search,.phcpr-class-form-grid{grid-template-columns:1fr}.phcpr-class-summary{grid-template-columns:1fr}.phcpr-class-summary>div{border-right:0!important}.phcpr-course-doc-upload{grid-template-columns:1fr}.phcpr-course-doc-upload label:nth-child(3){grid-column:auto}.phcpr-class-notice{align-items:flex-start;flex-direction:column}.phcpr-class-toolbar{justify-content:flex-start}}

/* ===== v0.2.1 class/file/admin refinements ===== */
.phcpr-activity-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 18px}.phcpr-activity-summary>div{background:#fff;border:1px solid #dce6ee;border-radius:14px;padding:18px 20px;box-shadow:0 7px 20px rgba(16,42,67,.04)}.phcpr-activity-summary span{display:block;color:var(--phcpr-muted);font-size:11px!important;text-transform:uppercase;letter-spacing:.07em;font-weight:900!important}.phcpr-activity-summary strong{display:block;color:var(--phcpr-navy);font-size:30px;line-height:1;margin:8px 0 6px}.phcpr-activity-summary small{display:block;color:var(--phcpr-muted);font-size:12px;line-height:1.4}.phcpr-snapshot-section .phcpr-metrics-grid{align-items:stretch}.phcpr-snapshot-section .phcpr-metric-card{height:100%}
.phcpr-doc-expiry{display:block!important;margin-top:4px;color:#6b7f91!important;font-size:11px!important;font-weight:750!important;text-transform:none!important;letter-spacing:0!important}.phcpr-required-item.found .phcpr-doc-expiry{color:#18794e!important}
.phcpr-new-location{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:15px;border:1px solid #d7e1e9;border-radius:12px;background:#f8fbfd}.phcpr-new-location[hidden]{display:none!important}.phcpr-full-row{grid-column:1/-1!important}.phcpr-class-form textarea,.phcpr-course-notes textarea{width:100%;border:1px solid #ccd8e2;border-radius:9px;padding:10px;background:#fff}.phcpr-course-notes{display:flex;flex-direction:column;gap:6px;margin:16px 0}.phcpr-course-notes span{font-size:11px!important;color:var(--phcpr-muted)}.phcpr-class-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}.phcpr-class-summary>div:nth-child(3n){border-right:0!important}.phcpr-class-summary>div:nth-child(4n){border-right:1px solid #e1e8ee}.phcpr-class-exam[hidden]{display:none!important}
.phcpr-admin-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px}.phcpr-admin-list-head h2{margin:0 0 4px!important}.phcpr-admin-instructor-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.phcpr-admin-instructor-search input[type=search]{min-width:300px;min-height:36px}.phcpr-admin .widefat input.large-text{width:100%}
@media(max-width:900px){.phcpr-class-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.phcpr-class-summary>div{border-right:1px solid #e1e8ee!important}.phcpr-class-summary>div:nth-child(2n){border-right:0!important}.phcpr-admin-list-head{align-items:flex-start;flex-direction:column}.phcpr-admin-instructor-search{width:100%}.phcpr-admin-instructor-search input[type=search]{min-width:0;flex:1}.phcpr-new-location{grid-template-columns:1fr}}
@media(max-width:620px){.phcpr-activity-summary{grid-template-columns:1fr}.phcpr-class-summary{grid-template-columns:1fr!important}.phcpr-class-summary>div{border-right:0!important}.phcpr-admin-instructor-search{align-items:stretch;flex-direction:column}.phcpr-admin-instructor-search input[type=search]{width:100%}}


/* ===== v0.2.2 workflow, alerts, roster, and metric refinements ===== */
.phcpr-btn.danger{background:#b42318;color:#fff}
.phcpr-flash-notice,.phcpr-notice-card{display:grid!important;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:13px!important;padding:16px 18px!important;border-radius:14px!important;box-shadow:0 7px 22px rgba(16,42,67,.06)}
.phcpr-flash-notice .phcpr-notice-icon,.phcpr-notice-card .phcpr-notice-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900;font-size:18px}
.phcpr-flash-notice>div:last-child,.phcpr-notice-card>div:last-child{display:flex;flex-direction:column;gap:4px}
.phcpr-flash-notice strong,.phcpr-notice-card strong{font-size:14px;color:var(--phcpr-navy)}
.phcpr-flash-notice span,.phcpr-notice-card span{display:block;line-height:1.5;color:#425b70}
.phcpr-flash-notice small,.phcpr-notice-card small{display:block;margin-top:4px;color:var(--phcpr-muted)}
.phcpr-flash-notice.success .phcpr-notice-icon{background:#d1fadf;color:#067647}
.phcpr-flash-notice.info .phcpr-notice-icon{background:#dbeafe;color:#175cd3}
.phcpr-flash-notice.warning .phcpr-notice-icon,.phcpr-notice-card.warning .phcpr-notice-icon{background:#fef0c7;color:#b54708}
.phcpr-flash-notice.danger .phcpr-notice-icon,.phcpr-notice-card.danger .phcpr-notice-icon{background:#fee4e2;color:#b42318}

.phcpr-metric-values{grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr) minmax(120px,1.15fr)!important}
.phcpr-metric-values>div{padding:14px!important}
.phcpr-metric-values>div:last-child strong{font-size:16px;line-height:1.25;white-space:normal}
.phcpr-metric-values>div:last-child span{white-space:nowrap}

.phcpr-remove-student-cell{min-width:88px;text-align:center}
.phcpr-remove-student{display:inline-flex;gap:6px;align-items:center;color:#b42318;font-size:12px;font-weight:800}
.phcpr-roster-table th:last-child,.phcpr-roster-table td:last-child{text-align:center}
.phcpr-certification-box{padding:14px 16px;border:1px solid #dce6ee;border-radius:12px;background:#f8fbfd;margin-bottom:14px}
.phcpr-certification-box strong{display:block;margin-bottom:5px;color:var(--phcpr-navy)}
.phcpr-certification-box p{margin:0;line-height:1.55;color:#425b70}
.phcpr-signature-form small{display:block;color:var(--phcpr-muted);font-weight:500;line-height:1.4}
.phcpr-admin-roster-actions{margin-top:18px;border-top:4px solid var(--phcpr-navy)}
.phcpr-admin-roster-actions .phcpr-button-row{align-items:flex-start}
.phcpr-corrections-form,.phcpr-void-form{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;width:100%;margin-top:10px}
.phcpr-corrections-form label{display:flex;flex-direction:column;gap:6px;flex:1 1 420px}
.phcpr-corrections-form textarea{width:100%;min-height:100px;border:1px solid #ccd8e2;border-radius:9px;padding:10px}
.phcpr-void-form input[type=text]{min-width:280px;min-height:40px;border:1px solid #ccd8e2;border-radius:9px;padding:8px 10px}
.phcpr-file-status.neutral{background:#eef2f6;color:#344054}
@media(max-width:760px){
  .phcpr-flash-notice,.phcpr-notice-card{grid-template-columns:36px minmax(0,1fr)}
  .phcpr-metric-values{grid-template-columns:1fr!important}
  .phcpr-corrections-form,.phcpr-void-form{flex-direction:column;align-items:stretch}
  .phcpr-void-form input[type=text]{min-width:0;width:100%}
}

.phcpr-submission-history{margin-top:18px}
.phcpr-history-list{display:flex;flex-direction:column;gap:10px}
.phcpr-history-item{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid #e4ebf1}
.phcpr-history-item:last-child{border-bottom:0}
.phcpr-history-item span,.phcpr-history-item small{color:var(--phcpr-muted);font-size:11px}
.phcpr-history-item strong{color:var(--phcpr-navy);font-size:13px;line-height:1.45}
@media(max-width:760px){.phcpr-history-item{grid-template-columns:1fr}.phcpr-history-item small{margin-top:-4px}}

.phcpr-student-row-removed{opacity:.45;background:#fef3f2!important}
.phcpr-student-row-removed td{text-decoration:line-through}


/* ===== v0.2.4 metric alignment + roster admin controls ===== */
.phcpr-snapshot-section .phcpr-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(390px,1fr));gap:18px}
.phcpr-snapshot-section .phcpr-metric-values{grid-template-columns:minmax(128px,.95fr) minmax(138px,1.08fr) minmax(128px,1fr)!important;gap:10px}
.phcpr-snapshot-section .phcpr-metric-values>div{min-width:0;padding:15px 14px!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
.phcpr-snapshot-section .phcpr-metric-values span{font-size:10px!important;letter-spacing:.045em;white-space:nowrap;line-height:1.25}
.phcpr-snapshot-section .phcpr-metric-values strong{font-size:18px;line-height:1.25;white-space:nowrap}
.phcpr-snapshot-section .phcpr-metric-values small{margin-top:6px;line-height:1.35}
.phcpr-snapshot-section .phcpr-metric-values>div:last-child strong{font-size:17px;white-space:nowrap}
.phcpr-admin-roster-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.phcpr-admin-roster-head h3{margin:0 0 4px!important}
.phcpr-admin-roster-head p{margin:0!important;color:var(--phcpr-muted);font-size:12px;line-height:1.45}
.phcpr-admin-inventory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}
.phcpr-admin-inventory-summary>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;padding:11px 12px}
.phcpr-admin-inventory-summary span{display:block;color:var(--phcpr-muted);font-size:10px!important;text-transform:uppercase;letter-spacing:.06em;font-weight:800!important}
.phcpr-admin-inventory-summary strong{display:block;color:var(--phcpr-navy);font-size:16px;margin-top:4px}
.phcpr-admin-roster-buttons{gap:10px!important;align-items:flex-start!important}
.phcpr-admin-action-note{display:inline-flex;align-items:center;border-radius:9px;padding:9px 11px;font-size:12px;font-weight:800}
.phcpr-admin-action-note.warning{background:#fff4e5;color:#9a3412;border:1px solid #fed7aa}
.phcpr-admin-action-state{flex:1 1 100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;padding:12px 14px}
.phcpr-admin-action-state strong{display:block;color:var(--phcpr-navy);font-size:13px}
.phcpr-admin-action-state span{display:block;color:var(--phcpr-muted);font-size:12px;margin-top:3px;line-height:1.45}
.phcpr-admin-action-state.success{background:#ecfdf3;border-color:#abefc6}
.phcpr-admin-action-state.success strong{color:#067647}
@media(max-width:1100px){.phcpr-snapshot-section .phcpr-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phcpr-snapshot-section .phcpr-metric-values{grid-template-columns:repeat(3,minmax(0,1fr))!important}.phcpr-admin-inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.phcpr-snapshot-section .phcpr-metrics-grid{grid-template-columns:1fr}.phcpr-snapshot-section .phcpr-metric-values{grid-template-columns:1fr!important}.phcpr-snapshot-section .phcpr-metric-values span,.phcpr-snapshot-section .phcpr-metric-values strong{white-space:normal}.phcpr-admin-roster-head{flex-direction:column}.phcpr-admin-inventory-summary{grid-template-columns:1fr 1fr}}

/* v0.2.5 — installable mobile/PWA shell */
.phcpr-install-card{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;margin:14px 0 18px;padding:14px 16px;background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;border-radius:16px;box-shadow:0 12px 28px rgba(16,42,67,.16)}
.phcpr-install-icon{width:48px;height:48px;border-radius:13px;background:#c81d32;display:grid;place-items:center;font-weight:900;font-size:14px;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.phcpr-install-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.phcpr-install-copy strong{font-size:15px;color:#fff}.phcpr-install-copy span{font-size:13px;line-height:1.4;color:#d8e8f8}
.phcpr-install-dismiss{border:0;background:transparent;color:#d8e8f8;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px;order:4}.phcpr-install-button[hidden]{display:none!important}
.phcpr-mobile-nav,.phcpr-mobile-more-sheet{display:none}
@media(max-width:760px){
  body:has(.phcpr-mobile-app-ui){padding-bottom:76px!important}
  .phcpr-mobile-app-ui .phcpr-tabs{display:none!important}
  .phcpr-install-card{grid-template-columns:auto 1fr auto;margin:12px 0 16px}.phcpr-install-card .phcpr-install-button{grid-column:1/-1;width:100%}.phcpr-install-dismiss{grid-column:3;grid-row:1}
  .phcpr-mobile-nav{display:grid;position:fixed;z-index:99990;left:0;right:0;bottom:0;grid-template-columns:repeat(6,minmax(0,1fr));background:rgba(255,255,255,.98);border-top:1px solid #d9e2ec;box-shadow:0 -10px 28px rgba(16,42,67,.12);padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));backdrop-filter:blur(12px)}
  .phcpr-mobile-nav button{appearance:none;border:0;background:transparent;color:#61758a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:5px 2px;font-size:10px;font-weight:800;line-height:1.05;cursor:pointer}
  .phcpr-mobile-nav button.active{color:#c81d32}.phcpr-mobile-nav-icon{font-size:21px;line-height:1;height:23px;display:flex;align-items:center;justify-content:center}
  .phcpr-mobile-more-sheet{display:flex;position:fixed;z-index:100000;inset:0;background:rgba(9,25,40,.48);align-items:flex-end;justify-content:center;padding:18px 14px calc(86px + env(safe-area-inset-bottom))}
  .phcpr-mobile-more-card{width:min(520px,100%);background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(16,42,67,.28);padding:14px;display:grid;gap:8px}.phcpr-mobile-more-head{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 10px}.phcpr-mobile-more-head strong{font-size:20px;color:#102a43}.phcpr-mobile-more-head button{border:0;background:#eef3f7;width:36px;height:36px;border-radius:50%;font-size:23px;cursor:pointer}.phcpr-mobile-more-link{appearance:none;border:1px solid #d9e2ec;background:#fff;color:#102a43;text-align:left;border-radius:13px;padding:14px 16px;font-weight:800;font-size:15px;cursor:pointer}.phcpr-mobile-more-link:active{background:#f4f7fa}
}
@media(max-width:400px){.phcpr-mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.phcpr-mobile-nav button{font-size:9px}.phcpr-mobile-nav-icon{font-size:19px}}
