.pco-error{color:#721c24;background-color:#f8d7da;padding:1rem;margin:1rem 0;border-radius:4px}.pco-success{color:#155724;background-color:#d4edda;padding:1rem;margin:1rem 0;border-radius:4px}.pco-notice{color:#0c5460;background-color:#d1ecf1;padding:1rem;margin:1rem 0;border-radius:4px}.pco-groups,.pco-registrations-minimal{display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:1rem 0}.pco-group,.pco-registration-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;box-shadow:0 2px 4px rgba(0,0,0,.1)}.pco-group h4,.pco-registration-card h4{margin:0 0 1rem 0;color:#2d3748;line-height:1.4;font-weight:700}.pco-registration-content h5,.pco-group h5{font-size:26px;margin:0 0 10px 0}.pco-group-meta,.pco-registration-date{color:#4a5568;margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.pco-bold{font-weight:700}.pco-group-members{display:none}.pco-group-description,.pco-registration-description{color:#4a5568;margin-bottom:1.5rem;flex-grow:1}.pco-group-image{width:100%;height:200px;overflow:hidden;margin-bottom:1rem;border-radius:8px;background-color:#f7fafc;position:relative;border:1px solid #e2e8f0}.pco-group-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.3s ease;position:relative;z-index:2}.pco-group:hover .pco-group-image img{transform:scale(1.05)}.pco-group-image img[src*="group-placeholder.jpg"],.pco-group-image img[src*="placeholder"]{object-fit:contain;padding:20px;opacity:.7;background-color:#f8f9fa}.pco-group-image.loading::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #e2e8f0;border-top-color:#de7130;border-radius:50%;animation:spin 1s linear infinite;z-index:1}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:768px){.pco-group-image{height:150px}}@media (max-width:480px){.pco-group-image{height:120px}}.pco-group-image img[onerror]{display:block}.pco-group-image:empty{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="%23cbd5e0" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"/><circle cx="8.5" cy="8.5" r="1.5"/><polyline points="21,15 16,10 5,21"/></svg>');background-repeat:no-repeat;background-position:center;background-size:48px 48px}.pco-registration-image{display:block;width:100%;height:auto;margin-top:0}.pco-single-registration{max-width:800px;margin:0 auto;background:none;border:none;overflow:hidden}.pco-registration-single-card{display:flex;flex-direction:column}.pco-registration-single-image{width:100%;position:relative;padding-top:56.25%;overflow:hidden}.pco-registration-single-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.pco-registration-button-container{bottom:0;margin:auto}.pco-registrations-table{background:transparent;border-radius:0;overflow:visible;box-shadow:none}.pco-event-card-link{display:block;text-decoration:none;color:inherit;margin-bottom:10px;transition:all 0.2s ease}.pco-event-card-link:hover{text-decoration:none;color:inherit}.pco-event-card{display:flex;align-items:stretch;background:#fff;border:1px solid #e2e8f0;padding:0;transition:all 0.2s ease;min-height:80px;overflow:hidden}.pco-event-card:hover{background-color:#f7fafc;border-color:#dedede;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.pco-event-card__date{flex-shrink:0;display:flex;align-items:stretch;margin:5px}.pco-event-card__date-box{background:#f6f4f0;color:#333;text-align:center;width:60px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:10px 0}.pco-event-card__month{font-weight:400;text-transform:uppercase;letter-spacing:.5px;margin:0;line-height:1}.pco-event-card__day{font-weight:700;margin:2px 0 0 0;line-height:1;color:#de7130}.pco-event-card__content{flex-grow:1;min-width:0;padding:15px 10px;display:flex;flex-direction:column;justify-content:center}.pco-event-card__title{color:#2d3748;margin:0 0 8px 0;line-height:1.3}.pco-event-status-notice{color:#e53e3e;font-weight:500;font-size:.9rem}.pco-event-card__meta{color:#4a5568;line-height:1.4;margin:0}.pco-event-card__time{font-weight:500;color:#2d3748}.pco-event-card__desc{color:#4a5568}.pco-event-card__action{flex-shrink:0;display:flex;align-items:center;padding:15px}.pco-event-card__btn{display:inline-block;white-space:nowrap;text-transform:uppercase}@media (max-width:768px){.pco-event-card{}.pco-event-card__date{flex-shrink:0;display:flex;align-items:stretch;margin:5px}.pco-event-card__date-box{background:#f6f4f0;color:#333;text-align:center;width:60px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:10px 0}.pco-event-card__content{padding:10px;margin-bottom:1rem}.pco-event-card__action{display:none}}@media (max-width:480px){.pco-event-card{padding:0}.pco-event-card__content{padding:8px}.pco-event-card__meta{font-size:1.3rem}}.pco-group-link,.pco-registration-link,.pco-event-grid-link{text-decoration:none;text-align:center;align-self:center;display:inline-flex;text-transform:uppercase}.pco-event-card__btn{text-transform:uppercase}.pco-events-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:1rem 0;animation:fadeIn 0.3s ease}.pco-events-grid.pco-events-count-1{grid-template-columns:1fr;max-width:550px;margin-left:auto;margin-right:auto}.pco-events-grid.pco-events-count-1 .pco-event-grid-card h5{font-size:32px}.pco-events-grid.pco-events-count-1 .pco-event-grid-image{height:300px}.pco-events-grid.pco-events-count-2{grid-template-columns:repeat(2,minmax(300px,400px));justify-content:center}.pco-events-grid:not(.pco-events-count-1):not(.pco-events-count-2){justify-items:center}@media (max-width:680px){.pco-events-grid.pco-events-count-1{max-width:100%}.pco-events-grid.pco-events-count-1 .pco-event-grid-image{height:200px}.pco-events-grid.pco-events-count-1 .pco-event-grid-card h5{font-size:26px}.pco-events-grid.pco-events-count-2{grid-template-columns:1fr}}.pco-event-grid-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;box-shadow:0 2px 4px rgba(0,0,0,.1)}.pco-event-grid-card h5{font-size:26px;margin:0 0 10px 0}.pco-event-grid-image{width:100%;height:200px;overflow:hidden;margin-bottom:1rem;border-radius:8px;background-color:#f7fafc;position:relative;border:1px solid #e2e8f0}.pco-event-grid-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.3s ease;position:relative;z-index:2}.pco-event-grid-card:hover .pco-event-grid-image img{transform:scale(1.05)}.pco-event-grid-image--no-image{background:linear-gradient(135deg,#f7fafc 0%,#e2e8f0 100%);display:flex;align-items:center;justify-content:center}.pco-event-grid-image.loading::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #e2e8f0;border-top-color:#de7130;border-radius:50%;animation:spin 1s linear infinite;z-index:1}.pco-event-grid-date-badge{position:absolute;top:10px;left:10px;background:#fff;border-radius:6px;padding:6px 10px;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.15);z-index:3;line-height:1}.pco-event-grid-date-month{display:block;font-size:11px;font-weight:700;text-transform:uppercase;color:#de7130;letter-spacing:.5px}.pco-event-grid-date-day{display:block;font-size:22px;font-weight:700;color:#2d3748;margin-top:2px}.pco-event-grid-image--no-image .pco-event-grid-date-badge{position:static;box-shadow:none;background:transparent;padding:10px}.pco-event-grid-image--no-image .pco-event-grid-date-month{font-size:14px}.pco-event-grid-image--no-image .pco-event-grid-date-day{font-size:36px}.pco-event-grid-date-badge--range{padding:6px 12px}.pco-event-grid-date-badge--range .pco-event-grid-date-day{font-size:16px;white-space:nowrap}.pco-event-grid-image--no-image .pco-event-grid-date-badge--range .pco-event-grid-date-day{font-size:28px}.pco-featured-event{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#f5f4f0;border-radius:4px;overflow:hidden;animation:fadeIn 0.3s ease;padding:20px}.pco-featured-event__image{position:relative;min-height:400px}.pco-featured-event__image img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;left:0}.pco-featured-event__placeholder{width:100%;height:100%;background:linear-gradient(135deg,#f7fafc 0%,#e2e8f0 100%)}.pco-featured-event__content{padding:2.5rem;display:flex;flex-direction:column;justify-content:center}.pco-featured-event__date{font-size:14px;font-weight:700;text-transform:uppercase;color:#de7130;letter-spacing:1px;margin-bottom:.5rem}.pco-featured-event__title{font-size:32px;font-weight:700;color:#1a202c;margin:0 0 1rem 0;line-height:1.2}.pco-featured-event__schedule{font-size:16px;color:#4a5568;margin-bottom:.5rem}.pco-featured-event__campus{font-size:14px;color:#718096;margin-bottom:1.25rem}.pco-featured-event__description{font-size:15px;color:#4a5568;line-height:1.7;margin-bottom:1.5rem}.pco-featured-event__btn{align-self:flex-start}@media (max-width:768px){.pco-featured-event{grid-template-columns:1fr}.pco-featured-event__image{min-height:250px}.pco-featured-event__content{padding:1.5rem}.pco-featured-event__title{font-size:26px}}.pco-event-grid-meta{color:#4a5568;margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.pco-event-grid-schedule{font-weight:500}.pco-event-grid-campus{color:#718096;font-size:.9em}.pco-event-grid-description{color:#4a5568;margin-bottom:1.5rem;flex-grow:1}@media (max-width:768px){.pco-event-grid-image{height:auto;aspect-ratio:16 / 9}}@media (max-width:480px){.pco-event-grid-image{height:auto;aspect-ratio:16 / 9}}.pco-groups-filters,.pco-registrations-filters{margin:0 auto 15px auto;padding:15px}.pco-filter-row{margin-bottom:1rem}.pco-filter-row label{display:none;margin-bottom:.5rem;font-weight:700}.pco-filter-row select,.pco-filter-row input[type="search"]{width:100%;font-weight:400;font-style:italic;border:1px solid #e2e8f0;border-radius:0;box-shadow:0 2px 7px 0 rgba(0,0,0,.07);padding:12px}.pco-filter-row button{background:#333939;color:#fff;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer}.pco-filter-row button a{color:#fff;transition:all 0.2s ease}.pco-filter-row button:hover{opacity:.8;transition:all 0.2s ease}button.filter-submit{color:white!important;font-size:16px;line-height:18px;padding:12px 36px;border-radius:0;font-weight:400;text-align:center;transition:all 0.2s ease;margin:20px auto;width:auto}.pco-filter-toggle-container{margin-bottom:20px;text-align:right}.pco-filter-toggle-btn{background:#de7130;color:#fff;border:none;padding:12px 20px;border-radius:0;cursor:pointer;font-size:16px;font-weight:500;display:inline-flex;align-items:center;gap:8px;transition:all 0.3s ease;box-shadow:0 2px 4px rgba(0,0,0,.1);position:relative}.pco-filter-toggle-btn:hover{background:#bd591e;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.filter-icon{font-size:18px;display:inline-block}.filter-count{background:#fff;color:#de7130!important;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;margin-left:4px}.pco-filter-panel{position:fixed;top:0;right:-400px;width:400px;height:100vh;background:#fff;z-index:10000;transition:right 0.3s ease;box-shadow:-2px 0 20px rgba(0,0,0,.1);display:flex;flex-direction:column}.pco-filter-panel.active{right:0}.pco-filter-panel-header{padding:20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}.pco-filter-panel-header h3{margin:0;color:#2d3748;font-size:20px}.pco-filter-close-btn{background:none;border:none;font-size:24px;color:#4a5568;cursor:pointer;padding:5px;line-height:1;transition:all 0.2s ease}.pco-filter-close-btn:hover{background:#e2e8f0;color:#2d3748}@media (max-width:768px){.pco-filter-close-btn{background:#de7130;color:#fff;font-size:16px;font-weight:500;padding:12px 24px;border:none;min-width:120px}.pco-filter-close-btn:hover{background:#bd591e;color:#fff}.pco-filter-close-btn::before{content:"See Results"}.pco-filter-panel.active .pco-filter-close-btn{font-size:0}.pco-filter-panel.active .pco-filter-close-btn::before{font-size:16px}.pco-filter-panel-header{justify-content:space-between;align-items:center}@media (max-width:480px){.pco-filter-panel-header{flex-direction:column;gap:15px;text-align:center}.pco-filter-close-btn{width:100%;order:2}.pco-filter-panel-header h3{order:1;margin:0}}}.pco-filter-panel-content{padding:20px;flex:1;overflow-y:auto}.pco-filter-group{margin-bottom:24px}.pco-filter-group label{display:block;margin-bottom:8px;font-weight:600;color:#2d3748;font-size:14px}.pco-filter-group select,.pco-filter-group input{width:100%;padding:12px;border:2px solid #e2e8f0;font-size:16px;transition:all 0.2s ease;background:#fff}.pco-filter-group select:focus,.pco-filter-group input:focus{outline:none;border-color:#de7130;box-shadow:0 0 0 3px rgba(222,113,48,.1)}.pco-filter-actions{margin-top:30px;padding-top:20px;border-top:1px solid #e2e8f0}.pco-clear-btn{background:#f7fafc!important;color:#4a5568!important;border:2px solid #e2e8f0;padding:10px 20px;cursor:pointer;font-size:14px;font-weight:500;transition:all 0.2s ease;width:100%;margin-bottom:16px}.pco-clear-btn:hover{background:#edf2f7;border-color:#cbd5e0}.pco-results-count{text-align:center;color:#4a5568;font-size:14px;font-style:italic}.pco-filter-overlay{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;background:rgba(0,0,0,.7)!important;z-index:9999!important;display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:all 0.3s ease!important}.pco-filter-overlay.active{display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}@media (max-width:768px){.pco-filter-panel{width:100vw;right:-100vw}.pco-filter-toggle-container{text-align:center}.pco-filter-toggle-btn{width:100%;justify-content:center}}.pco-groups{animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pco-groups-loading{text-align:center;padding:40px;color:#4a5568;font-style:italic}.pco-groups-loading::before{content:"";display:inline-block;width:20px;height:20px;border:2px solid #e2e8f0;border-top-color:#de7130;border-radius:50%;animation:spin 1s linear infinite;margin-right:10px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:769px){.pco-filter-panel{right:-400px!important;width:400px}.pco-filter-panel.active{right:0!important}.pco-filter-close-btn{background:none!important;border:none!important;font-size:24px!important;color:#4a5568!important;cursor:pointer;padding:5px!important;line-height:1;transition:all 0.2s ease;min-width:unset!important}.pco-filter-close-btn:hover{background:#e2e8f0!important;color:#2d3748!important}.pco-filter-close-btn::before{content:none!important}.pco-filter-panel.active .pco-filter-close-btn{font-size:24px!important}.pco-results-count{display:block!important}.pco-filter-actions{order:unset!important;margin-top:30px;margin-bottom:0;padding-top:20px;padding-bottom:0;border-top:1px solid #e2e8f0;border-bottom:none;display:block!important;flex-direction:column!important}.pco-filter-panel-content{display:block!important}}.pco-filter-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);z-index:9999;opacity:0!important;visibility:hidden!important;transition:all 0.3s ease;pointer-events:none!important;display:none!important}.pco-filter-overlay.active{opacity:1!important;visibility:visible!important;pointer-events:auto!important;display:block!important}@media (max-width:768px){.pco-filter-overlay{background:rgba(0,0,0,.7)!important;display:none!important}.pco-filter-overlay.active{display:block!important}}@media (max-width:768px){.pco-group-image{height:180px!important;min-height:180px!important}.pco-group-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}}@media (max-width:480px){.pco-group-image{height:160px!important;min-height:160px!important}}@media (max-width:768px){.pco-group-image{height:180px!important;min-height:180px!important}.pco-group-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}}@media (max-width:480px){.pco-group-image{height:160px!important;min-height:160px!important}}.pco-mobile-only{display:block}.pco-desktop-only{display:none}@media (min-width:768px){.pco-mobile-only{display:none}.pco-desktop-only{display:block}}.pco-filter-desktop{background:#f8f9fa;padding:20px;margin-bottom:20px}.pco-filter-desktop-content{max-width:100%}.pco-filter-desktop .pco-filter-row{display:flex;flex-wrap:wrap;gap:20px;align-items:end;margin-bottom:15px}.pco-filter-desktop .pco-filter-group{display:flex;flex-direction:column;min-width:180px;flex:1;margin-bottom:0}.pco-filter-desktop .pco-search-group{flex:2;min-width:250px}.pco-filter-desktop .pco-filter-group label{font-weight:600;margin-bottom:5px;color:#495057;font-size:14px;display:block}.pco-filter-desktop .pco-filter-group select,.pco-filter-desktop .pco-filter-group input{padding:8px 12px;font-size:14px;background:#fff;width:100%;font-style:normal;font-weight:400}.pco-filter-desktop .pco-filter-group select:focus,.pco-filter-desktop .pco-filter-group input:focus{outline:none;border-color:#007cba;box-shadow:0 0 0 2px rgba(0,124,186,.2)}.pco-filter-desktop .pco-filter-actions{display:flex;align-items:center;gap:15px;margin-top:0;padding-top:0;border-top:none}.pco-filter-desktop .pco-clear-btn{background:#6c757d!important;color:white!important;padding:8px 16px;cursor:pointer;font-size:14px;white-space:nowrap;width:auto;margin-bottom:0}.pco-filter-desktop .pco-clear-btn:hover{background:#5a6268!important;border-color:#5a6268!important;color:white!important}.pco-filter-desktop .pco-results-count{font-size:14px;color:#6c757d;white-space:nowrap;text-align:left;font-style:normal}@media (min-width:768px) and (max-width:1024px){.pco-filter-desktop .pco-filter-row{flex-direction:column;align-items:stretch}.pco-filter-desktop .pco-filter-group{min-width:100%}.pco-filter-desktop .pco-filter-actions{justify-content:space-between;margin-top:10px}}