.media-card{background:var(--color-white);border-radius:16px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 12px #00000014}.media-card:after{content:"";background:var(--color-red);transform-origin:0;width:100%;height:3px;transition:transform .35s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.media-card:hover{transform:translateY(-6px);box-shadow:0 16px 36px #00000029}.media-card:hover:after{transform:scaleX(1)}.mc__link{color:inherit;cursor:pointer;outline:none;flex-direction:column;height:100%;text-decoration:none;display:flex}.mc__image-wrap{background:var(--color-light-gray);flex-shrink:0;width:100%;position:relative;overflow:hidden}.media-card--course .mc__image-wrap{aspect-ratio:1}.media-card--book .mc__image-wrap{aspect-ratio:2/3}.mc__img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.media-card:hover .mc__img{transform:scale(1.06)}.mc__badge{color:var(--color-white);letter-spacing:.3px;white-space:nowrap;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;bottom:10px;left:10px}.mc__badge.new{background-color:var(--color-yellow-star);color:var(--color-text-black)}.mc__badge.soon{background-color:var(--color-text-light-black)}.mc__badge.available{background-color:var(--color-green)}.mc__badge.champion{background-color:var(--color-red-second)}.mc__badge.free{background-color:var(--color-dark-blue)}.mc__body{flex-direction:column;flex:1;gap:6px;padding:14px 16px 20px;display:flex}.mc__title{color:var(--color-text-black);margin:0;font-size:15px;font-weight:700;line-height:1.4}.mc__desc{color:var(--color-text-light-black);margin:0;font-size:13px;line-height:1.55}.media-card--course,.media-card--book{width:220px}.media-card--unavailable{filter:grayscale(.7);opacity:.75}.media-card--unavailable:hover{cursor:not-allowed;transform:none;box-shadow:0 2px 12px #00000014}.media-card--unavailable:hover .mc__img{transform:none}.media-card--unavailable:after{display:none}#topButton{color:var(--color-text-white);cursor:pointer;z-index:9999;background-color:#25d366;border:none;border-radius:50px;padding:15px;font-size:16px;transition:all .3s;display:none;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 6px #0003}#topButton:hover{background-color:#128c7e;transform:scale(1.1)}#topButton ion-icon{justify-content:center;align-items:center;font-size:28px;display:flex}
