.folder-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));justify-content:center;justify-items:center;gap:2rem;padding:1.5rem;display:grid}.folder-item{cursor:pointer;text-align:center;flex-direction:column;align-items:center;width:100%;transition:transform .2s;display:flex}.folder-item:hover{transform:translateY(-5px)}.folder-icon-wrapper{width:80px;height:65px;margin-bottom:1rem;transition:all .3s;position:relative}.folder-icon{z-index:1;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border-radius:0 6px 6px;width:100%;height:55px;position:absolute;bottom:0;left:0;box-shadow:0 4px 15px #6366f14d}.folder-icon:before{content:"";background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border-radius:6px 6px 0 0;width:35px;height:10px;position:absolute;top:-10px;left:0}.folder-paper{z-index:0;background:#ffffffe6;border-radius:4px;width:70px;height:50px;transition:top .3s;position:absolute;top:-5px;left:5px}.folder-item:hover .folder-paper{top:-15px}.folder-item:hover .folder-icon{filter:brightness(1.1);box-shadow:0 8px 25px #6366f180}.folder-name{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;margin-top:.5rem;font-size:.9rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.folder-modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10000;opacity:0;background:#0f172a99;justify-content:center;align-items:center;padding:2rem;animation:.3s forwards fadeIn;display:flex;position:fixed;inset:0}.folder-modal-content{background:#1e293b;border:1px solid #6366f14d;border-radius:20px;flex-direction:column;width:90%;max-width:1000px;max-height:90vh;margin:auto;animation:.3s forwards scaleIn;display:flex;overflow:hidden;transform:scale(.95);box-shadow:0 25px 50px -12px #00000080}.folder-modal-header{background:#0f172a80;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;display:flex}.folder-modal-title-section h2{color:#fff;background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:1.8rem;font-weight:700}.folder-modal-meta{color:#94a3b8;gap:1rem;font-size:.9rem;display:flex}.folder-modal-badge{color:#818cf8;background:#6366f11a;border:1px solid #6366f133;border-radius:20px;padding:.25rem .75rem}.folder-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0;font-size:2rem;line-height:1;transition:color .2s}.folder-modal-close:hover{color:#fff}.folder-modal-body{flex:1;padding:2rem;overflow-y:auto}.folder-modal-description{color:#cbd5e1;border-bottom:1px solid #ffffff0d;margin-bottom:2rem;padding-bottom:2rem;font-size:1.1rem;line-height:1.6}.folder-modal-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.folder-gallery-item{aspect-ratio:16/9;cursor:pointer;border:1px solid #ffffff1a;border-radius:12px;position:relative;overflow:hidden}.folder-gallery-img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.folder-gallery-item:hover .folder-gallery-img{transform:scale(1.05)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.folder-grid{grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem}.folder-icon-wrapper{width:60px;height:50px}.folder-icon{height:40px}.folder-icon:before{width:25px;height:8px;top:-8px}.folder-paper{width:50px;height:35px}.folder-name{font-size:.8rem}.folder-modal-content{width:95%;max-height:95vh}.folder-modal-header{flex-direction:column-reverse;gap:1rem;padding:1.5rem}.folder-modal-close{position:absolute;top:1rem;right:1rem}.folder-modal-gallery-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}}.folder-grid-spaced{gap:3rem}.folder-icon-cert{color:#fff;justify-content:center;align-items:center;font-size:2rem;display:flex}.folder-modal-content-cert{max-width:600px}.cert-modal-header-flex{align-items:center;gap:1rem;display:flex}.cert-icon-wrapper{font-size:2rem}.cert-link-wrapper{justify-content:center;margin-top:2rem;display:flex}.cert-link-button{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.cert-link-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.certificate-grid{grid-template-columns:repeat(3,1fr);justify-content:center;gap:2.5rem;max-width:1400px;margin:0 auto;padding:2rem;display:grid}.certificate-card{cursor:pointer;aspect-ratio:3/2;background:linear-gradient(145deg,#1e293b,#0f172a);border-radius:12px;flex-direction:column;height:100%;padding:4px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #00000080}.certificate-card:hover{z-index:10;transform:translateY(-10px)scale(1.02);box-shadow:0 20px 40px -10px #6366f14d}.cert-border-decoration{pointer-events:none;z-index:1;border:1px solid #ffffff1a;border-radius:8px;position:absolute;inset:10px}.cert-border-decoration:before,.cert-border-decoration:after{content:"";border:2px solid #6366f180;width:20px;height:20px;transition:all .3s;position:absolute}.cert-border-decoration:before{border-bottom:none;border-right:none;border-top-left-radius:8px;top:-1px;left:-1px}.cert-border-decoration:after{border-top:none;border-left:none;border-bottom-right-radius:8px;bottom:-1px;right:-1px}.certificate-card:hover .cert-border-decoration:before,.certificate-card:hover .cert-border-decoration:after{opacity:.5;border-color:#6366f1cc;width:100%;height:100%}.cert-content-wrapper{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2;background:#1e293b99;border-radius:8px;flex-direction:column;height:100%;padding:1.5rem;display:flex;position:relative}.cert-header{justify-content:space-between;align-items:flex-start;margin-bottom:auto;display:flex}.cert-label{text-transform:uppercase;letter-spacing:2px;color:#94a3b8;border-bottom:1px solid #6366f14d;padding-bottom:4px;font-family:Cinzel,serif;font-size:.6rem}.cert-icon-badge{background:#0f172acc;border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;transition:transform .3s;display:flex;box-shadow:0 4px 10px #0000004d}.certificate-card:hover .cert-icon-badge{transform:rotate(15deg)scale(1.1)}.cert-body{text-align:left;flex-direction:column;flex:1;justify-content:center;margin-bottom:auto;display:flex}.cert-title{color:#f1f5f9;background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-line-clamp:2;line-clamp:2;-webkit-background-clip:text;-webkit-box-orient:vertical;margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:1.1rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.cert-issuer-line{flex-direction:column;gap:.2rem;display:flex}.cert-issuer-label{color:#64748b;font-size:.65rem;font-style:italic}.cert-issuer{color:#94a3b8;font-size:.85rem;font-weight:500}.cert-footer{border-top:1px dashed #ffffff1a;justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.8rem;display:flex}.cert-date{color:#64748b;font-family:monospace;font-size:.75rem}.cert-view-btn{text-transform:uppercase;color:#10b981;background:#10b9811a;border:1px solid #10b98133;border-radius:4px;padding:.3rem .8rem;font-size:.65rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-block}.cert-view-btn:hover{background:#10b98133;transform:translateY(-1px);box-shadow:0 2px 5px #10b98133}@media (max-width:1024px){.certificate-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.certificate-grid{grid-template-columns:1fr;gap:1.5rem;padding:1rem}.certificate-card{aspect-ratio:auto;height:auto;min-height:auto;padding:4px}.cert-content-wrapper{padding:1.2rem}.cert-header{margin-bottom:1rem}.cert-label{letter-spacing:1.5px;font-size:.6rem}.cert-icon-badge{width:40px;height:40px;font-size:1.1rem}.cert-title{margin-bottom:.4rem;font-size:1.1rem;line-height:1.3}.cert-issuer-label{font-size:.65rem}.cert-issuer{font-size:.85rem}.cert-footer{margin-top:.5rem;padding-top:.8rem}.cert-date{font-size:.75rem}.cert-view-btn{padding:.3rem .8rem;font-size:.65rem}}
