.ks-page-enter{animation:ks-page-enter .28s cubic-bezier(.25,.1,.25,1) both}@keyframes ks-page-enter{0%{opacity:.001}to{opacity:1}}@media (prefers-reduced-motion: reduce){.ks-page-enter{animation:none}}.skeleton,.gold-skeleton,.ks-skel-line,.ks-skel-media,.ks-skel-avatar{background:linear-gradient(90deg,#e0d5c58c,#f8f1e7f2 45%,#e0d5c58c);background-size:200% 100%;animation:ks-shimmer 1.2s ease-in-out infinite;border-radius:6px}.ks-skel-line{height:12px;margin:10px 0;width:100%}.ks-skel-line.w-60{width:60%}.ks-skel-media{aspect-ratio:16 / 10;width:100%}.ks-skel-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0}.ks-skeleton-list{display:flex;flex-direction:column;gap:14px;padding:8px 0}.ks-skeleton-row{display:flex;gap:12px;align-items:center}.ks-skel-stack{flex:1;min-width:0}.ks-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.ks-skeleton-card{border:1px solid var(--border, #e0d5c5);border-radius:10px;overflow:hidden;padding-bottom:12px;background:var(--white, #fff)}.ks-skeleton-card .ks-skel-line{margin:10px 12px}@keyframes ks-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion: reduce){.skeleton,.gold-skeleton,.ks-skel-line,.ks-skel-media,.ks-skel-avatar{animation:none}}.empty-state,.gold-empty,.cdc-empty,.fac-empty,.repo-empty,.history-empty,.edp-empty{text-align:center;padding:40px 24px;border:1px dashed rgba(201,162,39,.35);background:#f8f1e773;border-radius:10px}.fac-empty,.repo-empty,.history-empty,.edp-empty{padding:28px 18px;color:var(--bronze-pale, #8a7355);font-size:.92rem}.empty-state-title,.gold-empty-title,.cdc-empty-title{font-family:var(--font-display, Georgia, serif);font-size:1.05rem;color:var(--maroon, #6d1f1f);margin:0 0 8px;font-weight:600}.empty-state-body,.gold-empty-desc,.cdc-empty-msg{margin:0;color:var(--bronze-pale, #8a7355);font-size:.92rem;line-height:1.5;max-width:42ch;margin-inline:auto}.gold-empty-icon{width:44px;height:44px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#6d1f1f14;color:var(--maroon, #6d1f1f)}button.is-busy,.btn-primary.is-busy,.btn-ghost.is-busy,.cdc-btn.is-busy{position:relative;pointer-events:none;opacity:.85}.btn-spinner{display:inline-block;width:14px;height:14px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:ks-spin .7s linear infinite}@keyframes ks-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.btn-spinner{animation:none;opacity:.7}}button:disabled,.btn-primary:disabled,.btn-ghost:disabled,.btn-secondary:disabled,.cdc-btn:disabled,[aria-disabled=true]{opacity:.48;cursor:not-allowed;filter:grayscale(.15)}button.is-saved,.btn-primary.is-saved{background:var(--success, #2d7a4e)!important;border-color:var(--success, #2d7a4e)!important;color:#fff!important}.btn-primary:hover:not(:disabled):not(.is-busy),.btn-ghost:hover:not(:disabled):not(.is-busy),.cdc-btn:hover:not(:disabled):not(.is-busy),.hp-view-all:hover,.nav-item:hover,.student-nav-item:hover{transform:translateY(-1px)}.btn-primary:active:not(:disabled),.btn-ghost:active:not(:disabled),.cdc-btn:active:not(:disabled){transform:translateY(0)}@media (prefers-reduced-motion: reduce){.btn-primary:hover:not(:disabled),.btn-ghost:hover:not(:disabled),.cdc-btn:hover:not(:disabled){transform:none}}input.is-invalid,select.is-invalid,textarea.is-invalid,input:user-invalid:not(:focus):not(:placeholder-shown),select:user-invalid:not(:focus),textarea:user-invalid:not(:focus):not(:placeholder-shown){border-color:var(--danger, #9b2020)!important;box-shadow:0 0 0 3px #9b202026}.ks-field-error,.field-error{margin:6px 0 0;font-size:.8rem;color:var(--danger, #9b2020);line-height:1.35}.form-feedback.success,.edit-feedback.success,.auth-feedback.success{color:var(--success, #2d7a4e)}.form-feedback.error,.edit-feedback.error,.auth-feedback.error{color:var(--danger, #9b2020)}.ks-error-state{text-align:center;padding:28px 20px;border:1px solid rgba(155,32,32,.28);background:#9b20200f;border-radius:10px;color:var(--danger, #9b2020)}.ks-error-state p{margin:0 0 12px;line-height:1.5}.toast,.pds-toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom,0px));right:max(24px,env(safe-area-inset-right,0px));z-index:1200;background:var(--bronze, #4a3728);color:var(--cream, #f8f1e7);padding:12px 18px;border-radius:8px;box-shadow:0 10px 28px #28181038;opacity:0;transform:translateY(10px) scale(.98);transition:opacity .2s ease,transform .2s ease;pointer-events:none;max-width:min(420px,calc(100vw - 32px));font-size:.9rem;line-height:1.4}.toast.show,.pds-toast.show{opacity:1;transform:none;pointer-events:auto}.toast.success{background:var(--success, #2d7a4e)}.toast.error{background:var(--danger, #9b2020)}.toast.info{background:var(--maroon, #6d1f1f)}.toast.success.show{animation:ks-toast-pop .32s ease}@keyframes ks-toast-pop{0%{transform:translateY(8px) scale(.96)}60%{transform:translateY(0) scale(1.02)}to{transform:none}}@media (prefers-reduced-motion: reduce){.toast,.pds-toast{transition:opacity .15s linear}.toast.success.show{animation:none}}.ks-img,img[loading=lazy].ks-img{opacity:0;transition:opacity .28s ease;background:#e0d5c559}.gp-photo-img.ks-img,.testi-photo.ks-img,.blog-author-avatar.ks-img,.faculty-avatar-img.ks-img,.lead-photo-img.ks-img,img[data-fallback-policy=portrait].ks-img{opacity:1;background:transparent}.hp-card-media .ks-img,.prog-card-media .ks-img,.event-card-img,.rp-card-photo .ks-img,.hof-hero-img.ks-img{background:var(--ks-card-media-letterbox, #0a0807)}.ks-img.is-loaded,img[loading=lazy].ks-img.is-loaded,.event-card-img.is-loaded,img.event-card-img.is-loaded{opacity:1;background:transparent}.ks-img.is-broken,img[loading=lazy].ks-img.is-broken{opacity:1;object-fit:contain;background:#4a1a1a}@media (max-width: 768px){.ks-img,img[loading=lazy].ks-img,.event-card-img{opacity:1;transition:none}}@media (prefers-reduced-motion: reduce){.ks-img,img[loading=lazy].ks-img,.event-card-img{opacity:1;transition:none}}.hp-card-media,.prog-card-media{contain-intrinsic-size:auto 180px;background:#4a1a1a}.inst-map-embed-wrap{content-visibility:visible;contain-intrinsic-size:auto 220px}.ks-offline-banner{position:fixed;top:0;left:0;right:0;z-index:10050;display:flex;justify-content:center;align-items:center;gap:10px;padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top,0px));background:#5a1a1a;color:#f8f1e7;font-size:.85rem;text-align:center;box-shadow:0 4px 16px #0000002e}.ks-offline-banner[hidden]{display:none!important}html.is-offline .admin-content,html.is-offline .student-content,html.is-offline .main-inner{filter:saturate(.92)}#pwa-install-banner,#pwa-update-banner{position:fixed;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:12px 16px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:#6d1f1f;color:#f5f0e8;font-family:var(--font-body, system-ui, sans-serif);font-size:.88rem;box-shadow:0 -4px 20px #0000002e;animation:ks-page-enter .26s ease both}#pwa-install-banner{bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}#pwa-update-banner{top:0;z-index:10000;padding-top:max(12px,env(safe-area-inset-top,0px));box-shadow:0 4px 20px #0000002e}#pwa-install-btn,#pwa-update-btn{background:#c9a227;color:#4a3728;border:none;border-radius:6px;padding:10px 16px;min-height:44px;font-weight:700;cursor:pointer;letter-spacing:.02em}#pwa-install-btn:hover,#pwa-update-btn:hover{filter:brightness(1.05)}#pwa-install-dismiss{background:transparent;color:#f5f0e8;border:none;font-size:1.25rem;cursor:pointer;min-width:44px;min-height:44px;border-radius:6px}#pwa-install-dismiss:hover{background:#ffffff14}
